about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorRafael Diniz <rafael@riseup.net>2023-08-22 23:37:26 +0100
committerRafael Diniz <rafael@riseup.net>2023-08-22 23:37:26 +0100
commit19771b307cfb5043d49efe977b698bbfa041cdc2 (patch)
tree4c0cc3fb6845160df08bcdc782bfe8f6d1354aba /src
parent7a992837a13eecbcccb54c93c77ee8e1a9c74d1c (diff)
downloadbox64-19771b307cfb5043d49efe977b698bbfa041cdc2.tar.gz
box64-19771b307cfb5043d49efe977b698bbfa041cdc2.zip
Allow running at NULL, and trigger a segfault (backport from box86 5cdc1b9fa2238938e49176fcd937a1294c55a03d
Diffstat (limited to 'src')
-rw-r--r--src/emu/x64run.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/emu/x64run.c b/src/emu/x64run.c
index 1f2f9ddc..5e19d642 100644
--- a/src/emu/x64run.c
+++ b/src/emu/x64run.c
@@ -57,10 +57,8 @@ int Run(x64emu_t *emu, int step)
     if(emu->quit)
         return 0;
     if(addr==0) {
-        emu->quit = 1;
-        printf_log(LOG_INFO, "%04d|Ask to run at NULL, quit silently\n", GetTID());
-        print_cycle_log(LOG_INFO);
-        return 0;
+        // Some programs, like VB6 VARA.exe, need to trigger that segfault to actually run... (ticket #830 in box86)
+        printf_log(LOG_INFO, "%04d|Ask to run at NULL, will segfault\n", GetTID());
     }
     //ref opcode: http://ref.x64asm.net/geek32.html#xA1
     printf_log(LOG_DEBUG, "Run X86 (%p), RIP=%p, Stack=%p is32bits=%d\n", emu, (void*)addr, (void*)R_RSP, is32bits);