summaryrefslogtreecommitdiffstats
path: root/tools/traceline
diff options
context:
space:
mode:
Diffstat (limited to 'tools/traceline')
-rw-r--r--tools/traceline/traceline/main.cc24
1 files changed, 14 insertions, 10 deletions
diff --git a/tools/traceline/traceline/main.cc b/tools/traceline/traceline/main.cc
index 97085eb..6d5d481 100644
--- a/tools/traceline/traceline/main.cc
+++ b/tools/traceline/traceline/main.cc
@@ -1259,16 +1259,20 @@ int main(int argc, char** argv) {
STARTUPINFO start_info = {0};
start_info.cb = sizeof(start_info);
- if (!CreateProcessA(NULL,
- argv[0],
- NULL,
- NULL,
- FALSE,
- CREATE_SUSPENDED,
- NULL,
- NULL,
- &start_info,
- &info)) {
+ int command_size = MultiByteToWideChar(CP_ACP, 0, argv[0], -1, NULL, 0);
+ LPWSTR command = new WCHAR[command_size];
+ MultiByteToWideChar(CP_ACP, 0, argv[0], -1, command, command_size);
+
+ if (!CreateProcess(NULL,
+ command,
+ NULL,
+ NULL,
+ FALSE,
+ CREATE_SUSPENDED,
+ NULL,
+ NULL,
+ &start_info,
+ &info)) {
NOTREACHED("Failed to launch \"%s\": %d\n", argv[0], GetLastError());
return 1;
}