rnd-20001210-2-src
[rocksndiamonds.git] / src / libgame / misc.c
index 5814e8d17f9e42464e69c39f77fe6b67c58cb5f5..b72fa146cd684385f84190b654cfd66b8a784233 100644 (file)
@@ -630,6 +630,16 @@ void *checked_calloc(unsigned long size)
   return ptr;
 }
 
+void *checked_realloc(void *ptr, unsigned long size)
+{
+  ptr = realloc(ptr, size);
+
+  if (ptr == NULL)
+    Error(ERR_EXIT, "cannot allocate %d bytes -- out of memory", size);
+
+  return ptr;
+}
+
 short getFile16BitInteger(FILE *file, int byte_order)
 {
   if (byte_order == BYTE_ORDER_BIG_ENDIAN)
@@ -1314,7 +1324,7 @@ FILE *openErrorFile()
   FILE *error_file;
 
   filename = getPath2(getUserDataDir(), ERROR_FILENAME);
-  error_file = fopen(filename, "a");
+  error_file = fopen(filename, MODE_APPEND);
   free(filename);
 
   return error_file;
@@ -1326,7 +1336,7 @@ void dumpErrorFile()
   FILE *error_file;
 
   filename = getPath2(getUserDataDir(), ERROR_FILENAME);
-  error_file = fopen(filename, "r");
+  error_file = fopen(filename, MODE_READ);
   free(filename);
 
   if (error_file != NULL)