- fixed crashes with VM asserts.

No idea what went wrong here - formatting the string in two stages works fine, though.
This commit is contained in:
Christoph Oelckers 2020-03-05 20:28:37 +01:00
parent 4a76674f4b
commit e2fab16fd4

View file

@ -106,13 +106,15 @@ void VM_DrawTileSmall(int32_t x, int32_t y, int32_t tilenum, int32_t shade, int3
#define CON_ERRPRINTF(Text, ...) do { \ #define CON_ERRPRINTF(Text, ...) do { \
FStringf str(Text, __VA_ARGS__); \
vm.flags |= VM_RETURN; \ vm.flags |= VM_RETURN; \
OSD_Printf("Line %d, %s: " Text, VM_DECODE_LINE_NUMBER(g_tw), VM_GetKeywordForID(VM_DECODE_INST(g_tw)), ## __VA_ARGS__); \ OSD_Printf("Line %d, %s: %s", VM_DECODE_LINE_NUMBER(g_tw), VM_GetKeywordForID(VM_DECODE_INST(g_tw)), str.GetChars()); \
} while (0) } while (0)
#define CON_CRITICALERRPRINTF(Text, ...) do { \ #define CON_CRITICALERRPRINTF(Text, ...) do { \
FStringf str(Text, __VA_ARGS__); \
vm.flags |= VM_RETURN; \ vm.flags |= VM_RETURN; \
I_Error("Line %d, %s: " Text, VM_DECODE_LINE_NUMBER(g_tw), VM_GetKeywordForID(VM_DECODE_INST(g_tw)), ## __VA_ARGS__); \ I_Error("Line %d, %s: %s", VM_DECODE_LINE_NUMBER(g_tw), VM_GetKeywordForID(VM_DECODE_INST(g_tw)), str.GetChars()); \
} while (0) } while (0)
void G_GetTimeDate(int32_t * pValues); void G_GetTimeDate(int32_t * pValues);