added debugger hook
authorMatthias Kramm <kramm@quiss.org>
Fri, 16 Jan 2009 01:54:45 +0000 (17:54 -0800)
committerMatthias Kramm <kramm@quiss.org>
Fri, 16 Jan 2009 01:54:45 +0000 (17:54 -0800)
lib/mem.c

index b78a326..8e619dc 100644 (file)
--- a/lib/mem.c
+++ b/lib/mem.c
@@ -1,6 +1,7 @@
 #include <memory.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <unistd.h>
 #include "mem.h"
 
 // memory allocation
@@ -12,6 +13,11 @@ void rfx_free(void*ptr)
   free(ptr);
 }
 
+void start_debugger()
+{
+    //*(int*)0=0;
+}
+
 void* rfx_alloc(int size)
 {
   void*ptr;
@@ -24,7 +30,7 @@ void* rfx_alloc(int size)
   ptr = malloc(size);
   if(!ptr) {
     fprintf(stderr, "FATAL: Out of memory (while trying to claim %d bytes)\n", size);
-    /* TODO: we should send a signal, so that the debugger kicks in? */
+    start_debugger();
     exit(1);
   }
   return ptr;
@@ -46,7 +52,7 @@ void* rfx_realloc(void*data, int size)
 
   if(!ptr) {
     fprintf(stderr, "FATAL: Out of memory (while trying to claim %d bytes)\n", size);
-    /* TODO: we should send a signal, so that the debugger kicks in? */
+    start_debugger();
     exit(1);
   }
   return ptr;
@@ -66,7 +72,7 @@ void* rfx_calloc(int size)
 #endif
   if(!ptr) {
     fprintf(stderr, "FATAL: Out of memory (while trying to claim %d bytes)\n", size);
-    /* TODO: we should send a signal, so that the debugger kicks in? */
+    start_debugger();
     exit(1);
   }
 #ifndef HAVE_CALLOC