< prev index next >

src/java.base/windows/native/libjava/ProcessHandleImpl_win.c

Print this page
rev 58562 : 8232846: ProcessHandle.Info command with non-English shows question marks

@@ -467,16 +467,17 @@
         JNU_CHECK_EXCEPTION(env);
     }
 }
 
 static void getCmdlineInfo(JNIEnv *env, HANDLE handle, jobject jinfo) {
-    char exeName[1024];
-    int bufsize = sizeof exeName;
+    WCHAR exeName[1024];
+    DWORD bufsize = sizeof(exeName)/sizeof(WCHAR);
     jstring commandObj;
 
-    if (QueryFullProcessImageName(handle, 0,  exeName, &bufsize)) {
-        commandObj = (*env)->NewStringUTF(env, exeName);
+    if (QueryFullProcessImageNameW(handle, 0,  exeName, &bufsize)) {
+        commandObj = (*env)->NewString(env, (const jchar *)exeName,
+                                       (jsize)wcslen(exeName));
         CHECK_NULL(commandObj);
         (*env)->SetObjectField(env, jinfo,
                                ProcessHandleImpl_Info_commandID, commandObj);
     }
 }
< prev index next >