dbmi_base/alloc.c

Go to the documentation of this file.
00001 #include <string.h>
00002 #include <stdlib.h>
00003 #include <grass/dbmi.h>
00004 
00011 char *
00012 db_store (char *s)
00013 {
00014     char *a;
00015 
00016     a = db_malloc (strlen(s) + 1);
00017     if (a)
00018         strcpy (a, s);
00019     return a;
00020 }
00021 
00028 void *
00029 db_malloc (int n)
00030 {
00031     void *s;
00032 
00033     if (n <= 0)
00034         n = 1;
00035     s = malloc((unsigned int) n);
00036     if (s == NULL)
00037         db_memory_error ();
00038     return s;
00039 }
00040 
00047 void *
00048 db_calloc (int n, int m)
00049 {
00050     void *s;
00051 
00052     if (n <= 0)
00053         n = 1;
00054     if (m <= 0)
00055         m = 1;
00056     s = calloc((unsigned int) n, (unsigned int) m);
00057     if (s == NULL)
00058         db_memory_error ();
00059     return s;
00060 }
00061 
00068 void *
00069 db_realloc (void *s, int n)
00070 {
00071     if (n <= 0)
00072         n = 1;
00073     if(s == NULL)
00074         s = malloc((unsigned int) n);
00075     else
00076         s = realloc (s, (unsigned int) n);
00077     if (s == NULL)
00078         db_memory_error ();
00079     return s;
00080 }

Generated on Sun Apr 6 17:31:38 2008 for GRASS by  doxygen 1.5.5