}
else
{
- strlcpy(buf, "<NO PROG>", bufsize);
+ dp_strlcpy(buf, "<NO PROG>", bufsize);
return;
}
{
f = prog->stack[i].f;
- if(strlcat(buf,
+ if(dp_strlcat(buf,
f
? va(vabuf, sizeof(vabuf), "%s:%s(%i) ", PRVM_GetString(prog, f->s_file), PRVM_GetString(prog, f->s_name), prog->stack[i].s - f->first_statement)
: "<NULL> ",
void PRVM_Crash(prvm_prog_t *prog)
{
char vabuf[1024];
+ int outfd = sys.outfd;
cl.csqc_loaded = false;
if (!prog->loaded)
return;
+ // set output to stderr
+ sys.outfd = fileno(stderr);
+
PRVM_serverfunction(SV_Shutdown) = 0; // don't call SV_Shutdown on crash
if( prog->depth > 0 )
// reset the prog pointer
prog = NULL;
+
+ // restore configured outfd
+ sys.outfd = outfd;
}
/*