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;
return;
}
- Header = NewStrBuf();
+ if (WCC->WFBuf == NULL) WCC->WFBuf = NewStrBuf();
if (TP->Tokens != NULL)
{
/* deprecated:
ChrPtr(TP->Tokens->FlatToken));
- SerializeJson(Header, WildFireException(SKEY(TP->Tokens->FileName),
+ SerializeJson(WCC->WFBuf, WildFireException(SKEY(TP->Tokens->FileName),
TP->Tokens->Line,
Info,
1), 1);
Error,
eERROR), 1);
*/
- WildFireSerializePayload(Header, WCC->HBuf, &WCC->Hdr->nWildfireHeaders, NULL);
+
}
else
{
Err,
ChrPtr(Error),
ChrPtr(TP->Tokens->FlatToken));
- SerializeJson(Header, WildFireException(HKEY(__FILE__), __LINE__, Info, 1), 1);
- WildFireSerializePayload(Header, WCC->HBuf, &WCC->Hdr->nWildfireHeaders, NULL);
+ SerializeJson(WCC->WFBuf, WildFireException(HKEY(__FILE__), __LINE__, Info, 1), 1);
}
- FreeStrBuf(&Header);
FreeStrBuf(&Info);
FreeStrBuf(&Error);
/*
void LogError (StrBuf *Target, const char *Type, const char *Format, ...)
{
wcsession *WCC;
- StrBuf *Header;
StrBuf *Error;
StrBuf *Info;
va_list arg_ptr;
lprintf(1, ChrPtr(Error));
WCC = WC;
- Header = NewStrBuf();
+ if (WCC->WFBuf == NULL) WCC->WFBuf = NewStrBuf();
+ SerializeJson(WCC->WFBuf, WildFireException(Type, strlen(Type),
+ 0,
+ Info,
+ 1), 1);
- SerializeJson(Header, WildFireException(Type, strlen(Type),
- 0,
- Info,
- 1), 1);
- WildFireSerializePayload(Header, WCC->HBuf, &WCC->Hdr->nWildfireHeaders, NULL);
-
- FreeStrBuf(&Header);
FreeStrBuf(&Info);
FreeStrBuf(&Error);
/*
}
}
+ if (WCC->WFBuf != NULL) {
+ WildFireSerializePayload(WCC->WFBuf, WCC->HBuf, &WCC->Hdr->nWildfireHeaders, NULL);
+ FreeStrBuf(WCC->WFBuf);
+ }
+
if (WCC->Hdr->HR.prohibit_caching)
hprintf("Pragma: no-cache\r\nCache-Control: no-store\r\nExpires:-1\r\n");
hprintf("Content-length: %d\r\n\r\n", StrLength(WCC->WBuf));