diff lwlib/lw_error.c @ 331:ed3553296580

Port manual forward with corrections from Jason Law
author lost
date Sun, 28 Feb 2010 05:55:07 +0000
parents c15cca3ae6a2
children
line wrap: on
line diff
--- a/lwlib/lw_error.c	Sun Feb 28 05:35:50 2010 +0000
+++ b/lwlib/lw_error.c	Sun Feb 28 05:55:07 2010 +0000
@@ -28,11 +28,21 @@
 #include <stdlib.h>
 #include <stdarg.h>
 
+static void (*lw_error_func)(const char *fmt, ...) = NULL;
+
 void lw_error(const char *fmt, ...)
 {
 	va_list args;
 	va_start(args, fmt);
-	vfprintf(stderr, fmt, args);
+	if (lw_error_func)
+		(*lw_error_func)(fmt, args);
+	else
+		vfprintf(stderr, fmt, args);
 	va_end(args);
 	exit(1);
 }
+
+void lw_error_setfunc(void (*f)(const char *fmt, ...))
+{
+	lw_error_func = f;
+}