void LogTemplateError (StrBuf *Target, const char *Type, int ErrorPos, WCTemplputParams *TP, const char *Format, ...)
{
+ wcsession *WCC;
+ StrBuf *Header;
StrBuf *Error;
StrBuf *Info;
va_list arg_ptr;
}
if (Target == NULL)
return;
+ WCC = WC;
+ Header = NewStrBuf();
if (TP->Tokens != NULL)
{
+ /* deprecated:
StrBufAppendPrintf(
Target,
"<pre>\n%s [%s] (in '%s' line %ld); %s\n[%s]\n</pre>\n",
TP->Tokens->Line,
ChrPtr(Error),
ChrPtr(TP->Tokens->FlatToken));
+ */
+
+ SerializeJson(Header, WildFireException(SKEY(TP->Tokens->FileName),
+ TP->Tokens->Line,
+ Error,
+ 1), 1);
+/*
+ SerializeJson(Header, WildFireMessage(SKEY(TP->Tokens->FileName),
+ TP->Tokens->Line,
+ Error,
+ eERROR), 1);
+*/
+ WildFireSerializePayload(Header, WCC->HBuf, &WCC->nWildfireHeaders, NULL);
}
else
{
+ /* deprecated.
StrBufAppendPrintf(
Target,
"<pre>\n%s: %s\n</pre>\n",
Type,
ChrPtr(Error));
+ */
+ SerializeJson(Header, WildFireException(HKEY(__FILE__), __LINE__, Error, 1), 1);
+ WildFireSerializePayload(Header, WCC->HBuf, &WCC->nWildfireHeaders, NULL);
}
+ FreeStrBuf(&Header);
+/*
if (dbg_bactrace_template_errors)
wc_backtrace();
-
+*/
}
else {
LogTemplateError(
Target, "Token", ERR_NAME, TP,
- "didn't find Handler");
+ "didn't find Handler \"%s\"", TP->Tokens->pName);
wc_backtrace();
}
}
StrBuf *http_host; /**< HTTP Host: header */
int is_ajax; /** < are we doing an ajax request? */
int gzip_ok; /**< Nonzero if Accept-encoding: gzip */
+ int nWildfireHeaders; /**< how many wildfire headers did we already send? */
StrBuf *trailing_javascript; /**< extra javascript to be appended to page */
char ImportantMessage[SIZ]; /**< ??? todo */