GlDbg::GlDbg(int argc, char **argv):
cmd_interp(*this),
process(vector<string>(argv+1, argv+argc)),
+ buf_offset(0),
flushing(false),
got_sigchld(false)
{
close(fds[1]);
}
-void GlDbg::quit()
+void GlDbg::quit(bool force)
{
- if(process.get_state()!=Process::INACTIVE)
+ if(!force && process.get_state()!=Process::INACTIVE)
throw InvalidState("Program is still running");
exit(0);
}
break;
tracer.decode(data, len);
glstate.decode(data, len);
+ profiler.decode(data, len);
buf_offset += size;
}
if(buf_offset>8192)