#if !DEBUG
# define MEM_ALLOC_FAIL() do { \
fprintf (stderr, "%s: memory allocation failure\n", program_name); \
- exit (2); \
+ exit (EXIT_FAILURE); \
} while (false)
#else
# define MEM_ALLOC_FAIL_DEBUG(file, line) do { \
fprintf (stderr, "Memory allocation failure in source file %s, line %u\n", file, line); \
- exit (2); \
+ exit (EXIT_FAILURE); \
} while (false)
#endif
#else
const char *version = NULL;
#endif
+ const char *version_prefix, *version_string;
const char *c_flags;
struct bytes_size bytes_size;
bool debug;
#else
debug = false;
#endif
- if (version)
- printf ("colorize %s (compiled at %s, %s)\n", version, __DATE__, __TIME__);
- else
- printf ("colorize v%s (compiled at %s, %s)\n", VERSION, __DATE__, __TIME__);
+ version_prefix = version ? "" : "v";
+ version_string = version ? version : VERSION;
+ printf ("colorize %s%s (compiled at %s, %s)\n", version_prefix, version_string, __DATE__, __TIME__);
+
printf ("Compiler flags: %s\n", c_flags);
if (get_bytes_size (BUF_SIZE, &bytes_size))
{
void *p = malloc (size);
if (!p)
MEM_ALLOC_FAIL_DEBUG (file, line);
+ vfprintf_diag ("malloc'ed %lu bytes [source file %s, line %u]", (unsigned long)size, file, line);
return p;
}
void *p = calloc (nmemb, size);
if (!p)
MEM_ALLOC_FAIL_DEBUG (file, line);
+ vfprintf_diag ("calloc'ed %lu bytes [source file %s, line %u]", (unsigned long)(nmemb * size), file, line);
return p;
}
void *p = realloc (ptr, size);
if (!p)
MEM_ALLOC_FAIL_DEBUG (file, line);
+ vfprintf_diag ("realloc'ed %lu bytes [source file %s, line %u]", (unsigned long)size, file, line);
return p;
}
-#endif
+#endif /* !DEBUG */
static void
free_wrap (void **ptr)