mirror of
https://bitbucket.org/CPMADevs/cnq3
synced 2024-11-30 07:41:45 +00:00
54 lines
2.1 KiB
C
54 lines
2.1 KiB
C
/*
|
|
===========================================================================
|
|
Copyright (C) 2017-2020 Gian 'myT' Schellenbaum
|
|
|
|
This file is part of Challenge Quake 3 (CNQ3).
|
|
|
|
Challenge Quake 3 is free software; you can redistribute it
|
|
and/or modify it under the terms of the GNU General Public License as
|
|
published by the Free Software Foundation; either version 2 of the License,
|
|
or (at your option) any later version.
|
|
|
|
Challenge Quake 3 is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with Challenge Quake 3. If not, see <https://www.gnu.org/licenses/>.
|
|
===========================================================================
|
|
*/
|
|
// save and print useful data for JSON crash report files
|
|
|
|
#include "q_shared.h"
|
|
#include "qcommon.h"
|
|
|
|
#include <stdio.h>
|
|
|
|
|
|
// json.cpp
|
|
void JSONW_BeginFile(FILE* file);
|
|
void JSONW_EndFile();
|
|
void JSONW_BeginObject();
|
|
void JSONW_BeginNamedObject(const char* name);
|
|
void JSONW_EndObject();
|
|
void JSONW_BeginArray();
|
|
void JSONW_BeginNamedArray(const char* name);
|
|
void JSONW_EndArray();
|
|
void JSONW_IntegerValue(const char* name, int number);
|
|
void JSONW_HexValue(const char* name, uint64_t number);
|
|
void JSONW_BooleanValue(const char* name, qbool value);
|
|
void JSONW_StringValue(const char* name, PRINTF_FORMAT_STRING const char* format, ...);
|
|
void JSONW_UnnamedHex(uint64_t number);
|
|
void JSONW_UnnamedString(PRINTF_FORMAT_STRING const char* format, ...);
|
|
|
|
// crash.cpp
|
|
void Crash_SaveQVMPointer(vmIndex_t vmIndex, vm_t* vm);
|
|
void Crash_SaveQVMChecksum(vmIndex_t vmIndex, unsigned int crc32);
|
|
void Crash_SaveQVMGitString(const char* varName, const char* varValue);
|
|
void Crash_SaveModName(const char* modName);
|
|
void Crash_SaveModVersion(const char* modVersion);
|
|
void Crash_PrintToFile(const char* engineFilePath);
|
|
#if defined(__linux__) || defined(__FreeBSD__)
|
|
void Crash_PrintVMStackTracesASS(int fd); // async-signal-safe
|
|
#endif
|