mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-11-10 14:51:51 +00:00
Make console to Windows debug output controlled by CVAR
DebugView can be used to view output without debugger attached
This commit is contained in:
parent
c743b19e6d
commit
37dde2e77d
1 changed files with 23 additions and 21 deletions
|
@ -137,6 +137,7 @@ extern bool ConWindowHidden;
|
|||
// PUBLIC DATA DEFINITIONS -------------------------------------------------
|
||||
|
||||
CVAR (String, queryiwad_key, "shift", CVAR_GLOBALCONFIG|CVAR_ARCHIVE);
|
||||
CVAR (Bool, con_debugoutput, false, 0);
|
||||
|
||||
double PerfToSec, PerfToMillisec;
|
||||
UINT TimerPeriod;
|
||||
|
@ -1053,29 +1054,30 @@ static TArray<FString> bufferedConsoleStuff;
|
|||
|
||||
void I_PrintStr(const char *cp)
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
// Strip out any color escape sequences before writing to debug output
|
||||
char * copy = new char[strlen(cp)+1];
|
||||
const char * srcp = cp;
|
||||
char * dstp = copy;
|
||||
|
||||
while (*srcp != 0)
|
||||
if (con_debugoutput)
|
||||
{
|
||||
if (*srcp!=0x1c && *srcp!=0x1d && *srcp!=0x1e && *srcp!=0x1f)
|
||||
{
|
||||
*dstp++=*srcp++;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (srcp[1]!=0) srcp+=2;
|
||||
else break;
|
||||
}
|
||||
}
|
||||
*dstp=0;
|
||||
// Strip out any color escape sequences before writing to debug output
|
||||
char * copy = new char[strlen(cp)+1];
|
||||
const char * srcp = cp;
|
||||
char * dstp = copy;
|
||||
|
||||
OutputDebugStringA(copy);
|
||||
delete [] copy;
|
||||
#endif // _DEBUG
|
||||
while (*srcp != 0)
|
||||
{
|
||||
if (*srcp!=0x1c && *srcp!=0x1d && *srcp!=0x1e && *srcp!=0x1f)
|
||||
{
|
||||
*dstp++=*srcp++;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (srcp[1]!=0) srcp+=2;
|
||||
else break;
|
||||
}
|
||||
}
|
||||
*dstp=0;
|
||||
|
||||
OutputDebugStringA(copy);
|
||||
delete [] copy;
|
||||
}
|
||||
|
||||
if (ConWindowHidden)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue