mirror of
https://github.com/ClassiCube/ClassiCube.git
synced 2025-09-18 03:55:19 -04:00
attempt to register dump for PowerPC OSX and ARM linux. Completely untested.
This commit is contained in:
parent
ac7b99eeab
commit
dd0b35d1d5
18
src/Camera.c
18
src/Camera.c
@ -151,7 +151,7 @@ static Vector3 FirstPersonCamera_GetPosition(float t) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool FirstPersonCamera_Zoom(float amount) { return false; }
|
static bool FirstPersonCamera_Zoom(float amount) { return false; }
|
||||||
struct Camera Camera_FirstPerson = {
|
static struct Camera cam_FirstPerson = {
|
||||||
false,
|
false,
|
||||||
PerspectiveCamera_GetProjection, PerspectiveCamera_GetView,
|
PerspectiveCamera_GetProjection, PerspectiveCamera_GetView,
|
||||||
FirstPersonCamera_GetOrientation, FirstPersonCamera_GetPosition,
|
FirstPersonCamera_GetOrientation, FirstPersonCamera_GetPosition,
|
||||||
@ -203,7 +203,7 @@ static bool ThirdPersonCamera_Zoom(float amount) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Camera Camera_ThirdPerson = {
|
static struct Camera cam_ThirdPerson = {
|
||||||
true,
|
true,
|
||||||
PerspectiveCamera_GetProjection, PerspectiveCamera_GetView,
|
PerspectiveCamera_GetProjection, PerspectiveCamera_GetView,
|
||||||
ThirdPersonCamera_GetOrientation, ThirdPersonCamera_GetPosition,
|
ThirdPersonCamera_GetOrientation, ThirdPersonCamera_GetPosition,
|
||||||
@ -211,7 +211,7 @@ struct Camera Camera_ThirdPerson = {
|
|||||||
Camera_AcquireFocus, Camera_LoseFocus,
|
Camera_AcquireFocus, Camera_LoseFocus,
|
||||||
PerspectiveCamera_GetPickedBlock, ThirdPersonCamera_Zoom,
|
PerspectiveCamera_GetPickedBlock, ThirdPersonCamera_Zoom,
|
||||||
};
|
};
|
||||||
struct Camera Camera_ForwardThird = {
|
static struct Camera cam_ForwardThird = {
|
||||||
true,
|
true,
|
||||||
PerspectiveCamera_GetProjection, PerspectiveCamera_GetView,
|
PerspectiveCamera_GetProjection, PerspectiveCamera_GetView,
|
||||||
ThirdPersonCamera_GetOrientation, ThirdPersonCamera_GetPosition,
|
ThirdPersonCamera_GetOrientation, ThirdPersonCamera_GetPosition,
|
||||||
@ -225,11 +225,11 @@ struct Camera Camera_ForwardThird = {
|
|||||||
*-----------------------------------------------------General camera------------------------------------------------------*
|
*-----------------------------------------------------General camera------------------------------------------------------*
|
||||||
*#########################################################################################################################*/
|
*#########################################################################################################################*/
|
||||||
void Camera_Init(void) {
|
void Camera_Init(void) {
|
||||||
Camera_Register(&Camera_FirstPerson);
|
Camera_Register(&cam_FirstPerson);
|
||||||
Camera_Register(&Camera_ThirdPerson);
|
Camera_Register(&cam_ThirdPerson);
|
||||||
Camera_Register(&Camera_ForwardThird);
|
Camera_Register(&cam_ForwardThird);
|
||||||
|
|
||||||
Camera.Active = &Camera_FirstPerson;
|
Camera.Active = &cam_FirstPerson;
|
||||||
Event_RegisterMouseMove(&MouseEvents.RawMoved, NULL, Camera_RawMouseMovedHandler);
|
Event_RegisterMouseMove(&MouseEvents.RawMoved, NULL, Camera_RawMouseMovedHandler);
|
||||||
|
|
||||||
Camera.Sensitivity = Options_GetInt(OPT_SENSITIVITY, 1, 100, 30);
|
Camera.Sensitivity = Options_GetInt(OPT_SENSITIVITY, 1, 100, 30);
|
||||||
@ -242,9 +242,9 @@ void Camera_CycleActive(void) {
|
|||||||
if (Game_ClassicMode) return;
|
if (Game_ClassicMode) return;
|
||||||
Camera.Active = Camera.Active->Next;
|
Camera.Active = Camera.Active->Next;
|
||||||
|
|
||||||
cam_isForwardThird = Camera.Active == &Camera_ForwardThird;
|
cam_isForwardThird = Camera.Active == &cam_ForwardThird;
|
||||||
if (!p->Hacks.CanUseThirdPersonCamera || !p->Hacks.Enabled) {
|
if (!p->Hacks.CanUseThirdPersonCamera || !p->Hacks.Enabled) {
|
||||||
Camera.Active = &Camera_FirstPerson;
|
Camera.Active = &cam_FirstPerson;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* reset rotation offset when changing cameras */
|
/* reset rotation offset when changing cameras */
|
||||||
|
@ -5,8 +5,6 @@ VisualStudioVersion = 14.0.25420.1
|
|||||||
MinimumVisualStudioVersion = 10.0.40219.1
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ClassiCube", "ClassiCube.vcxproj", "{8A7D82BD-178A-4785-B41B-70EDE998920A}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ClassiCube", "ClassiCube.vcxproj", "{8A7D82BD-178A-4785-B41B-70EDE998920A}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Pony", "..\..\PonyModel\Pony.vcxproj", "{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}"
|
|
||||||
EndProject
|
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|x64 = Debug|x64
|
Debug|x64 = Debug|x64
|
||||||
@ -23,14 +21,6 @@ Global
|
|||||||
{8A7D82BD-178A-4785-B41B-70EDE998920A}.Release|x64.Build.0 = Release|x64
|
{8A7D82BD-178A-4785-B41B-70EDE998920A}.Release|x64.Build.0 = Release|x64
|
||||||
{8A7D82BD-178A-4785-B41B-70EDE998920A}.Release|x86.ActiveCfg = Release|Win32
|
{8A7D82BD-178A-4785-B41B-70EDE998920A}.Release|x86.ActiveCfg = Release|Win32
|
||||||
{8A7D82BD-178A-4785-B41B-70EDE998920A}.Release|x86.Build.0 = Release|Win32
|
{8A7D82BD-178A-4785-B41B-70EDE998920A}.Release|x86.Build.0 = Release|Win32
|
||||||
{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}.Debug|x86.ActiveCfg = Debug|Win32
|
|
||||||
{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}.Debug|x86.Build.0 = Debug|Win32
|
|
||||||
{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}.Release|x64.Build.0 = Release|x64
|
|
||||||
{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}.Release|x86.ActiveCfg = Release|Win32
|
|
||||||
{8FCE93C4-A65B-4542-A4CC-EEE6A73E0901}.Release|x86.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
112
src/Logger.c
112
src/Logger.c
@ -14,11 +14,11 @@
|
|||||||
#define NOSERVICE
|
#define NOSERVICE
|
||||||
#define NOMCX
|
#define NOMCX
|
||||||
#define NOIME
|
#define NOIME
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <imagehlp.h>
|
#include <imagehlp.h>
|
||||||
#define _NL "\r\n"
|
#define _NL "\r\n"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* POSIX can be shared between unix-ish systems */
|
/* POSIX can be shared between unix-ish systems */
|
||||||
#ifdef CC_BUILD_POSIX
|
#ifdef CC_BUILD_POSIX
|
||||||
#if defined CC_BUILD_OPENBSD
|
#if defined CC_BUILD_OPENBSD
|
||||||
@ -31,7 +31,6 @@
|
|||||||
#else
|
#else
|
||||||
#include <ucontext.h>
|
#include <ucontext.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <execinfo.h>
|
#include <execinfo.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
@ -232,7 +231,40 @@ String_Format3(&str, "r8 =%x r9 =%x r10=%x" _NL, REG_GET(8,8), REG_GET(9,9),
|
|||||||
String_Format3(&str, "r11=%x r12=%x r13=%x" _NL, REG_GET(11,11), REG_GET(12,12), REG_GET(13,13));\
|
String_Format3(&str, "r11=%x r12=%x r13=%x" _NL, REG_GET(11,11), REG_GET(12,12), REG_GET(13,13));\
|
||||||
String_Format2(&str, "r14=%x r15=%x" _NL, REG_GET(14,14), REG_GET(15,15));
|
String_Format2(&str, "r14=%x r15=%x" _NL, REG_GET(14,14), REG_GET(15,15));
|
||||||
|
|
||||||
#if defined CC_BUILD_WIN
|
#define Logger_Dump_PPC() \
|
||||||
|
String_Format4(&str, "r0 =%x r1 =%x r2 =%x r3 =%x" _NL, REG_GNUM(0), REG_GNUM(1), REG_GNUM(2), REG_GNUM(3)); \
|
||||||
|
String_Format4(&str, "r4 =%x r5 =%x r6 =%x r7 =%x" _NL, REG_GNUM(4), REG_GNUM(5), REG_GNUM(6), REG_GNUM(7)); \
|
||||||
|
String_Format4(&str, "r8 =%x r9 =%x r10=%x r11=%x" _NL, REG_GNUM(8), REG_GNUM(9), REG_GNUM(10), REG_GNUM(11)); \
|
||||||
|
String_Format4(&str, "r12=%x r13=%x r14=%x r15=%x" _NL, REG_GNUM(12), REG_GNUM(13), REG_GNUM(14), REG_GNUM(15)); \
|
||||||
|
String_Format4(&str, "r16=%x r17=%x r18=%x r19=%x" _NL, REG_GNUM(16), REG_GNUM(17), REG_GNUM(18), REG_GNUM(19)); \
|
||||||
|
String_Format4(&str, "r20=%x r21=%x r22=%x r23=%x" _NL, REG_GNUM(20), REG_GNUM(21), REG_GNUM(22), REG_GNUM(23)); \
|
||||||
|
String_Format4(&str, "r24=%x r25=%x r26=%x r27=%x" _NL, REG_GNUM(24), REG_GNUM(25), REG_GNUM(26), REG_GNUM(27)); \
|
||||||
|
String_Format4(&str, "r28=%x r29=%x r30=%x r31=%x" _NL, REG_GNUM(28), REG_GNUM(29), REG_GNUM(30), REG_GNUM(31)); \
|
||||||
|
String_Format3(&str, "pc =%x lr =%x ctr=%x" _NL, REG_GET(srr0, SRR0), REG_GET(lr, LR), REG_GET(ctr,CTR));
|
||||||
|
|
||||||
|
#define Logger_Dump_ARM32() \
|
||||||
|
String_Format3(&str, "r0 =%x r1 =%x r2 =%x" _NL, REG_GNUM(0), REG_GNUM(1), REG_GNUM(2));\
|
||||||
|
String_Format3(&str, "r3 =%x r4 =%x r5 =%x" _NL, REG_GNUM(3), REG_GNUM(4), REG_GNUM(5));\
|
||||||
|
String_Format3(&str, "r6 =%x r7 =%x r8 =%x" _NL, REG_GNUM(6), REG_GNUM(7), REG_GNUM(8));\
|
||||||
|
String_Format3(&str, "r9 =%x r10=%x fp =%x" _NL, REG_GNUM(9), REG_GNUM(10), REG_GET(fp,FP));\
|
||||||
|
String_Format3(&str, "sp =%x lr =%x pc =%x" _NL, REG_GET(sp,SP), REG_GET(lr,LR), REG_GET(pc,PC));
|
||||||
|
|
||||||
|
#define Logger_Dump_ARM64() \
|
||||||
|
String_Format4(&str, "r0 =%x r1 =%x r2 =%x r3 =%x" _NL, REG_GNUM(0), REG_GNUM(1), REG_GNUM(2), REG_GNUM(3)); \
|
||||||
|
String_Format4(&str, "r4 =%x r5 =%x r6 =%x r7 =%x" _NL, REG_GNUM(4), REG_GNUM(5), REG_GNUM(6), REG_GNUM(7)); \
|
||||||
|
String_Format4(&str, "r8 =%x r9 =%x r10=%x r11=%x" _NL, REG_GNUM(8), REG_GNUM(9), REG_GNUM(10), REG_GNUM(11)); \
|
||||||
|
String_Format4(&str, "r12=%x r13=%x r14=%x r15=%x" _NL, REG_GNUM(12), REG_GNUM(13), REG_GNUM(14), REG_GNUM(15)); \
|
||||||
|
String_Format4(&str, "r16=%x r17=%x r18=%x r19=%x" _NL, REG_GNUM(16), REG_GNUM(17), REG_GNUM(18), REG_GNUM(19)); \
|
||||||
|
String_Format4(&str, "r20=%x r21=%x r22=%x r23=%x" _NL, REG_GNUM(20), REG_GNUM(21), REG_GNUM(22), REG_GNUM(23)); \
|
||||||
|
String_Format4(&str, "r24=%x r25=%x r26=%x r27=%x" _NL, REG_GNUM(24), REG_GNUM(25), REG_GNUM(26), REG_GNUM(27)); \
|
||||||
|
String_Format3(&str, "r28=%x r29=%x r30=%x" _NL, REG_GNUM(28), REG_GNUM(29), REG_GNUM(30)); \
|
||||||
|
String_Format2(&str, "sp =%x pc =%x" _NL, REG_GET(sp,SP), REG_GET(pc,PC));
|
||||||
|
|
||||||
|
#if defined CC_BUILD_WEB
|
||||||
|
static void Logger_DumpBacktrace(String* str, void* ctx) { }
|
||||||
|
static void Logger_DumpRegisters(void* ctx) { }
|
||||||
|
static void Logger_DumpMisc(void* ctx) { }
|
||||||
|
#elif defined CC_BUILD_WIN
|
||||||
struct StackPointers { uintptr_t Instruction, Frame, Stack; };
|
struct StackPointers { uintptr_t Instruction, Frame, Stack; };
|
||||||
struct SymbolAndName { IMAGEHLP_SYMBOL Symbol; char Name[256]; };
|
struct SymbolAndName { IMAGEHLP_SYMBOL Symbol; char Name[256]; };
|
||||||
|
|
||||||
@ -366,8 +398,7 @@ static void Logger_DumpMisc(void* ctx) {
|
|||||||
EnumerateLoadedModules(process, Logger_DumpModule, NULL);
|
EnumerateLoadedModules(process, Logger_DumpModule, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#elif defined CC_BUILD_POSIX
|
||||||
#ifdef CC_BUILD_POSIX
|
|
||||||
static void Logger_Backtrace(String* backtrace_, void* ctx) {
|
static void Logger_Backtrace(String* backtrace_, void* ctx) {
|
||||||
String str; char strBuffer[384];
|
String str; char strBuffer[384];
|
||||||
void* addrs[40];
|
void* addrs[40];
|
||||||
@ -423,37 +454,55 @@ static void Logger_DumpRegisters(void* ctx) {
|
|||||||
/* NetBSD: See /usr/include/i386/mcontext.h */
|
/* NetBSD: See /usr/include/i386/mcontext.h */
|
||||||
|
|
||||||
#if defined __i386__
|
#if defined __i386__
|
||||||
#if defined CC_BUILD_LINUX
|
#if defined CC_BUILD_LINUX
|
||||||
#define REG_GET(ign, reg) &r.gregs[REG_E##reg]
|
#define REG_GET(ign, reg) &r.gregs[REG_E##reg]
|
||||||
#elif defined CC_BUILD_OSX
|
#elif defined CC_BUILD_OSX
|
||||||
#define REG_GET(reg, ign) &r->__ss.__e##reg
|
#define REG_GET(reg, ign) &r->__ss.__e##reg
|
||||||
#elif defined CC_BUILD_SOLARIS
|
#elif defined CC_BUILD_SOLARIS
|
||||||
#define REG_GET(ign, reg) &r.gregs[reg]
|
#define REG_GET(ign, reg) &r.gregs[E##reg]
|
||||||
#elif defined CC_BUILD_FREEBSD
|
#elif defined CC_BUILD_FREEBSD
|
||||||
#define REG_GET(reg, ign) &r.mc_e##reg
|
#define REG_GET(reg, ign) &r.mc_e##reg
|
||||||
#elif defined CC_BUILD_OPENBSD
|
#elif defined CC_BUILD_OPENBSD
|
||||||
#define REG_GET(reg, ign) &r.sc_e##reg
|
#define REG_GET(reg, ign) &r.sc_e##reg
|
||||||
#elif defined CC_BUILD_NETBSD
|
#elif defined CC_BUILD_NETBSD
|
||||||
#define REG_GET(ign, reg) &r.__gregs[_REG_E##reg]
|
#define REG_GET(ign, reg) &r.__gregs[_REG_E##reg]
|
||||||
#endif
|
#endif
|
||||||
Logger_Dump_X86()
|
Logger_Dump_X86()
|
||||||
#elif defined __x86_64__
|
#elif defined __x86_64__
|
||||||
#if defined CC_BUILD_LINUX
|
#if defined CC_BUILD_LINUX
|
||||||
#define REG_GET(ign, reg) &r.gregs[REG_R##reg]
|
#define REG_GET(ign, reg) &r.gregs[REG_R##reg]
|
||||||
#elif defined CC_BUILD_OSX
|
#elif defined CC_BUILD_OSX
|
||||||
#define REG_GET(reg, ign) &r->__ss.__r##reg
|
#define REG_GET(reg, ign) &r->__ss.__r##reg
|
||||||
#elif defined CC_BUILD_SOLARIS
|
#elif defined CC_BUILD_SOLARIS
|
||||||
#define REG_GET(ign, reg) &r.gregs[REG_R##reg]
|
#define REG_GET(ign, reg) &r.gregs[REG_R##reg]
|
||||||
#elif defined CC_BUILD_FREEBSD
|
#elif defined CC_BUILD_FREEBSD
|
||||||
#define REG_GET(reg, ign) &r.mc_r##reg
|
#define REG_GET(reg, ign) &r.mc_r##reg
|
||||||
#elif defined CC_BUILD_OPENBSD
|
#elif defined CC_BUILD_OPENBSD
|
||||||
#define REG_GET(reg, ign) &r.sc_r##reg
|
#define REG_GET(reg, ign) &r.sc_r##reg
|
||||||
#elif defined CC_BUILD_NETBSD
|
#elif defined CC_BUILD_NETBSD
|
||||||
#define REG_GET(ign, reg) &r.__gregs[_REG_R##reg]
|
#define REG_GET(ign, reg) &r.__gregs[_REG_R##reg]
|
||||||
#endif
|
#endif
|
||||||
Logger_Dump_X64()
|
Logger_Dump_X64()
|
||||||
|
#elif defined __powerpc__
|
||||||
|
#if defined CC_BUILD_OSX
|
||||||
|
#define REG_GNUM(num) &r->__ss.__r##num
|
||||||
|
#define REG_GET(reg, ign) &r->__ss.__##reg
|
||||||
|
#endif
|
||||||
|
Logger_Dump_PPC()
|
||||||
|
#elif defined __aarch64__
|
||||||
|
#if defined CC_BUILD_LINUX
|
||||||
|
#define REG_GNUM(num) &r.regs[num]
|
||||||
|
#define REG_GET(reg, ign) &r.##reg
|
||||||
|
#endif
|
||||||
|
Logger_Dump_ARM64()
|
||||||
|
#elif defined __arm__
|
||||||
|
#if defined CC_BUILD_LINUX
|
||||||
|
#define REG_GNUM(num) &r.arm_r##num
|
||||||
|
#define REG_GET(reg, ign) &r.arm_##reg
|
||||||
|
#endif
|
||||||
|
Logger_Dump_ARM32()
|
||||||
#else
|
#else
|
||||||
#error "Unknown machine type"
|
#error "Unknown ISA/architecture"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Logger_Log(&str);
|
Logger_Log(&str);
|
||||||
@ -483,18 +532,18 @@ static void Logger_DumpMisc(void* ctx) {
|
|||||||
static void Logger_DumpMisc(void* ctx) { }
|
static void Logger_DumpMisc(void* ctx) { }
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#ifdef CC_BUILD_WEB
|
|
||||||
static void Logger_DumpBacktrace(String* str, void* ctx) { }
|
|
||||||
static void Logger_DumpRegisters(void* ctx) { }
|
|
||||||
static void Logger_DumpMisc(void* ctx) { }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*########################################################################################################################*
|
/*########################################################################################################################*
|
||||||
*------------------------------------------------------Error handling-----------------------------------------------------*
|
*------------------------------------------------------Error handling-----------------------------------------------------*
|
||||||
*#########################################################################################################################*/
|
*#########################################################################################################################*/
|
||||||
static void Logger_AbortCommon(ReturnCode result, const char* raw_msg, void* ctx);
|
static void Logger_AbortCommon(ReturnCode result, const char* raw_msg, void* ctx);
|
||||||
|
|
||||||
#ifdef CC_BUILD_WIN
|
#if defined CC_BUILD_WEB
|
||||||
|
void Logger_Hook(void) { }
|
||||||
|
void Logger_Abort2(ReturnCode result, const char* raw_msg) {
|
||||||
|
Logger_AbortCommon(result, raw_msg, NULL);
|
||||||
|
}
|
||||||
|
#elif defined CC_BUILD_WIN
|
||||||
static LONG WINAPI Logger_UnhandledFilter(struct _EXCEPTION_POINTERS* pInfo) {
|
static LONG WINAPI Logger_UnhandledFilter(struct _EXCEPTION_POINTERS* pInfo) {
|
||||||
String msg; char msgBuffer[STRING_SIZE * 2 + 1];
|
String msg; char msgBuffer[STRING_SIZE * 2 + 1];
|
||||||
uint32_t code;
|
uint32_t code;
|
||||||
@ -561,8 +610,7 @@ void Logger_Abort2(ReturnCode result, const char* raw_msg) {
|
|||||||
#if _MSC_VER
|
#if _MSC_VER
|
||||||
#pragma optimize ("", on)
|
#pragma optimize ("", on)
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#elif defined CC_BUILD_POSIX
|
||||||
#ifdef CC_BUILD_POSIX
|
|
||||||
static void Logger_SignalHandler(int sig, siginfo_t* info, void* ctx) {
|
static void Logger_SignalHandler(int sig, siginfo_t* info, void* ctx) {
|
||||||
String msg; char msgBuffer[STRING_SIZE * 2 + 1];
|
String msg; char msgBuffer[STRING_SIZE * 2 + 1];
|
||||||
int type, code;
|
int type, code;
|
||||||
@ -605,12 +653,6 @@ void Logger_Abort2(ReturnCode result, const char* raw_msg) {
|
|||||||
Logger_AbortCommon(result, raw_msg, &ctx);
|
Logger_AbortCommon(result, raw_msg, &ctx);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#ifdef CC_BUILD_WEB
|
|
||||||
void Logger_Hook(void) { }
|
|
||||||
void Logger_Abort2(ReturnCode result, const char* raw_msg) {
|
|
||||||
Logger_AbortCommon(result, raw_msg, NULL);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/*########################################################################################################################*
|
/*########################################################################################################################*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user