diff options
Diffstat (limited to '3rdparty/bx/src/debug.cpp')
-rw-r--r-- | 3rdparty/bx/src/debug.cpp | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/3rdparty/bx/src/debug.cpp b/3rdparty/bx/src/debug.cpp index 8e8bae122a6..062df287d7a 100644 --- a/3rdparty/bx/src/debug.cpp +++ b/3rdparty/bx/src/debug.cpp @@ -1,9 +1,8 @@ /* - * Copyright 2010-2018 Branimir Karadzic. All rights reserved. - * License: https://github.com/bkaradzic/bx#license-bsd-2-clause + * Copyright 2010-2022 Branimir Karadzic. All rights reserved. + * License: https://github.com/bkaradzic/bx/blob/master/LICENSE */ -#include "bx_p.h" #include <bx/debug.h> #include <bx/string.h> // isPrint #include <bx/readerwriter.h> // WriterI @@ -24,8 +23,8 @@ extern "C" __declspec(dllimport) void __stdcall OutputDebugStringA(const char* _ # include <CoreFoundation/CFString.h> extern "C" void NSLog(CFStringRef _format, ...); # endif // defined(__OBJC__) -#elif 0 // BX_PLATFORM_EMSCRIPTEN -# include <emscripten.h> +#elif BX_PLATFORM_EMSCRIPTEN +# include <emscripten/emscripten.h> #else # include <stdio.h> // fputs, fflush #endif // BX_PLATFORM_WINDOWS @@ -43,6 +42,17 @@ namespace bx // NaCl doesn't like int 3: // NativeClient: NaCl module load failed: Validation failure. File violates Native Client safety rules. __asm__ ("int $3"); +#elif BX_PLATFORM_EMSCRIPTEN + emscripten_log(0 + | EM_LOG_CONSOLE + | EM_LOG_ERROR + | EM_LOG_C_STACK + | EM_LOG_JS_STACK + , "debugBreak!" + ); + // Doing emscripten_debugger() disables asm.js validation due to an emscripten bug + //emscripten_debugger(); + EM_ASM({ debugger; }); #else // cross platform implementation int* int3 = (int*)3L; *int3 = 3; @@ -69,7 +79,7 @@ namespace bx # else NSLog(__CFStringMakeConstantString("%s"), _out); # endif // defined(__OBJC__) -#elif 0 // BX_PLATFORM_EMSCRIPTEN +#elif BX_PLATFORM_EMSCRIPTEN emscripten_log(EM_LOG_CONSOLE, "%s", _out); #else fputs(_out, stdout); @@ -137,7 +147,7 @@ namespace bx if (NULL != _data) { - const uint8_t* data = reinterpret_cast<const uint8_t*>(_data); + const uint8_t* data = (const uint8_t*)_data; char hex[HEX_DUMP_WIDTH*3+1]; char ascii[HEX_DUMP_WIDTH+1]; uint32_t hexPos = 0; |