alloc.c 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #include <string.h>
  2. #include <stdlib.h>
  3. #include <grass/dbmi.h>
  4. /*!
  5. \fn char *db_store (char *s)
  6. \brief
  7. \return
  8. \param
  9. */
  10. char *db_store(const char *s)
  11. {
  12. char *a;
  13. a = db_malloc(strlen(s) + 1);
  14. if (a)
  15. strcpy(a, s);
  16. return a;
  17. }
  18. /*!
  19. \fn void *db_malloc (int n)
  20. \brief
  21. \return
  22. \param
  23. */
  24. void *db_malloc(int n)
  25. {
  26. void *s;
  27. if (n <= 0)
  28. n = 1;
  29. s = malloc((unsigned int)n);
  30. if (s == NULL)
  31. db_memory_error();
  32. return s;
  33. }
  34. /*!
  35. \fn void *db_calloc (int n, int m)
  36. \brief
  37. \return
  38. \param
  39. */
  40. void *db_calloc(int n, int m)
  41. {
  42. void *s;
  43. if (n <= 0)
  44. n = 1;
  45. if (m <= 0)
  46. m = 1;
  47. s = calloc((unsigned int)n, (unsigned int)m);
  48. if (s == NULL)
  49. db_memory_error();
  50. return s;
  51. }
  52. /*!
  53. \fn void *db_realloc (void *s, int n)
  54. \brief
  55. \return
  56. \param
  57. */
  58. void *db_realloc(void *s, int n)
  59. {
  60. if (n <= 0)
  61. n = 1;
  62. if (s == NULL)
  63. s = malloc((unsigned int)n);
  64. else
  65. s = realloc(s, (unsigned int)n);
  66. if (s == NULL)
  67. db_memory_error();
  68. return s;
  69. }