Support Wine 6.23's fixed winedbg arg handling

I was about to rebase the patch I've been resubmitting to Wine that
fixed this when I noticed that
https://github.com/wine-mirror/wine/commit/94ca4be2a62cdb05adaee524084875b04b283afb
now does the same thing.
This commit is contained in:
Robbert van der Helm
2021-12-07 00:59:07 +01:00
parent 97163e8415
commit 35244d2c7f
4 changed files with 22 additions and 8 deletions
+4 -4
View File
@@ -67,10 +67,10 @@ IndividualHost::IndividualHost(boost::asio::io_context& io_context,
host(
launch_host(host_path,
plugin_type_to_string(host_request.plugin_type),
#ifdef WITH_WINEDBG
// Winedbg flattens all command line arguments to a single
// space separate Win32 command line, so we need to do our
// own quoting.
#if defined(WITH_WINEDBG) && defined(WINEDBG_LEGACY_ARGUMENT_QUOTING)
// Old versions of winedbg flattened all command line
// arguments to a single space separated Win32 command
// line, so we had to do our own quoting
"\"" + plugin_info.windows_plugin_path + "\"",
#else
host_request.plugin_path,
+9 -4
View File
@@ -77,14 +77,19 @@ class HostProcess {
// window managers require some slight modifications to spawn a
// detached terminal emulator. Alternatively, you can spawn
// `/usr/bin/winedbg` with the `--no-start` option to launch a gdb
// server and then connect to it from another terminal. Note the
// double quoting here, winedbg doesn't respect `argv` and instead
// expects a standard Win32 command line.
// server and then connect to it from another terminal.
"/usr/bin/kstart5", "konsole", "--", "-e", "winedbg", "--gdb",
#ifdef WINEDBG_LEGACY_ARGUMENT_QUOTING
// Note the double quoting here. Old versions of winedbg didn't
// respect `argv` and instead expected a pre-quoted Win32 command
// line as its arguments.
"\"" + host_path.string() + ".so\"",
#else
host_path.string() + ".so",
#endif // WINEDBG_LEGACY_ARGUMENT_QUOTING
#else
host_path,
#endif
#endif // WITH_WINEDBG
boost::process::std_out = stdout_pipe,
boost::process::std_err = stderr_pipe,
// NOTE: If the Wine process outlives the host, then it may cause