X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fsafe-alloc.h;h=7d7e9aa5a991ccb5ecaeb13b260b713ac176c590;hb=55898ee1c7c12e63772c65e772577f10bb7adb31;hp=1b7847add53cb2b70d486736e789922e5d358d0e;hpb=032310a69161066be953842f2dc69efae2f745a1;p=gnulib.git
diff --git a/lib/safe-alloc.h b/lib/safe-alloc.h
index 1b7847add..7d7e9aa5a 100644
--- a/lib/safe-alloc.h
+++ b/lib/safe-alloc.h
@@ -1,23 +1,19 @@
-/*
- * memory.c: safer memory allocation
- *
- * Copyright (C) 2009 Free Software Foundation, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
+/* safe-alloc.h: safer memory allocation
+
+ Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 3 of the License, or any
+ later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see . */
/* Written by Daniel Berrange , 2008 */
@@ -26,6 +22,15 @@
# include
+#ifndef __GNUC_PREREQ
+# if defined __GNUC__ && defined __GNUC_MINOR__
+# define __GNUC_PREREQ(maj, min) \
+ ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
+# else
+# define __GNUC_PREREQ(maj, min) 0
+# endif
+#endif
+
# ifndef ATTRIBUTE_RETURN_CHECK
# if __GNUC_PREREQ (3, 4)
# define ATTRIBUTE_RETURN_CHECK __attribute__((__warn_unused_result__))
@@ -54,7 +59,7 @@ safe_alloc_realloc_n (void *ptrptr, size_t size, size_t count)
* Return -1 on failure to allocate, zero on success
*/
# define ALLOC(ptr) \
- safe_alloc_alloc_n (&(ptr), sizeof(*(ptr)), 1, 1)
+ safe_alloc_alloc_n (&(ptr), sizeof (*(ptr)), 1, 1)
/**
* ALLOC_N:
@@ -68,7 +73,7 @@ safe_alloc_realloc_n (void *ptrptr, size_t size, size_t count)
* Return -1 on failure, 0 on success
*/
# define ALLOC_N(ptr, count) \
- safe_alloc_alloc_n (&(ptr), sizeof(*(ptr)), (count), 1)
+ safe_alloc_alloc_n (&(ptr), sizeof (*(ptr)), (count), 1)
/**
* ALLOC_N_UNINITIALIZED:
@@ -82,7 +87,7 @@ safe_alloc_realloc_n (void *ptrptr, size_t size, size_t count)
* Return -1 on failure to allocate, zero on success
*/
# define ALLOC_N_UNINITIALIZED(ptr, count) \
- safe_alloc_alloc_n (&(ptr), sizeof(*(ptr)), (count), 0)
+ safe_alloc_alloc_n (&(ptr), sizeof (*(ptr)), (count), 0)
/**
* REALLOC_N:
@@ -96,7 +101,7 @@ safe_alloc_realloc_n (void *ptrptr, size_t size, size_t count)
* Return -1 on failure to reallocate, zero on success
*/
# define REALLOC_N(ptr, count) \
- safe_alloc_realloc_n (&(ptr), sizeof(*(ptr)), (count))
+ safe_alloc_realloc_n (&(ptr), sizeof (*(ptr)), (count))
/**
* FREE:
@@ -108,9 +113,9 @@ safe_alloc_realloc_n (void *ptrptr, size_t size, size_t count)
# define FREE(ptr) \
do \
{ \
- free(ptr); \
+ free (ptr); \
(ptr) = NULL; \
} \
- while(0)
+ while (0)
#endif /* SAFE_ALLOC_H_ */