alloc.c 877 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include <unistd.h>
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5. #include <unistd.h>
  6. #include <sys/mman.h>
  7. #ifdef L_calloc_dbg
  8. void *
  9. calloc_dbg(size_t num, size_t size, char * function, char * file, int line)
  10. {
  11. void * ptr;
  12. fprintf(stderr, "calloc of %d bytes at %s @%s:%d = ", num*size, function, file, line);
  13. ptr = calloc(num,size);
  14. fprintf(stderr, "%p\n", ptr);
  15. return ptr;
  16. }
  17. #endif
  18. #ifdef L_malloc_dbg
  19. void *
  20. malloc_dbg(size_t len, char * function, char * file, int line)
  21. {
  22. void * result;
  23. fprintf(stderr, "malloc of %d bytes at %s @%s:%d = ", len, function, file, line);
  24. result = malloc(len);
  25. fprintf(stderr, "%p\n", result);
  26. return result;
  27. }
  28. #endif
  29. #ifdef L_free_dbg
  30. void
  31. free_dbg(void * ptr, char * function, char * file, int line)
  32. {
  33. fprintf(stderr, "free of %p at %s @%s:%d\n", ptr, function, file, line);
  34. free(ptr);
  35. }
  36. #endif