src/hg/lib/cart.c 1.110

1.110 2009/06/15 23:37:20 angie
Added stderr logging (a la htmlVaWarn) to cartEarlyWarningHandler, so we get an informative message along with the stack dump.
Index: src/hg/lib/cart.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/lib/cart.c,v
retrieving revision 1.109
retrieving revision 1.110
diff -b -B -U 4 -r1.109 -r1.110
--- src/hg/lib/cart.c	3 Jun 2009 04:30:19 -0000	1.109
+++ src/hg/lib/cart.c	15 Jun 2009 23:37:20 -0000	1.110
@@ -1250,16 +1250,25 @@
 void cartEarlyWarningHandler(char *format, va_list args)
 /* Write an error message so user can see it before page is really started. */
 {
 static boolean initted = FALSE;
+va_list argscp;
+va_copy(argscp, args);
 if (!initted)
     {
     htmStart(stdout, "Early Error");
     initted = TRUE;
     }
 printf("%s", htmlWarnStartPattern());
 htmlVaParagraph(format,args);
 printf("%s", htmlWarnEndPattern());
+
+/* write warning/error message to stderr so they get logged. */
+logCgiToStderr();
+vfprintf(stderr, format, argscp);
+va_end(argscp);
+putc('\n', stderr);
+fflush(stderr);
 }
 
 void cartWarnCatcher(void (*doMiddle)(struct cart *cart), struct cart *cart, WarnHandler warner)
 /* Wrap error and warning handlers around doMiddle. */