jdk/src/windows/native/sun/nio/fs/WindowsNativeDispatcher.c
changeset 2071 5e6af6d106cb
parent 2057 3acf8e5e2ca0
child 3065 452aaa2899fc
equal deleted inserted replaced
2069:2cd4a0aa917f 2071:5e6af6d106cb
   390         return ptr_to_jlong(handle);
   390         return ptr_to_jlong(handle);
   391 }
   391 }
   392 
   392 
   393 JNIEXPORT jstring JNICALL
   393 JNIEXPORT jstring JNICALL
   394 Java_sun_nio_fs_WindowsNativeDispatcher_FindNextFile(JNIEnv* env, jclass this,
   394 Java_sun_nio_fs_WindowsNativeDispatcher_FindNextFile(JNIEnv* env, jclass this,
   395     jlong handle)
   395     jlong handle, jlong dataAddress)
   396 {
   396 {
   397     WIN32_FIND_DATAW data;
       
   398     HANDLE h = (HANDLE)jlong_to_ptr(handle);
   397     HANDLE h = (HANDLE)jlong_to_ptr(handle);
   399 
   398     WIN32_FIND_DATAW* data = (WIN32_FIND_DATAW*)jlong_to_ptr(dataAddress);
   400     if (FindNextFileW(h, &data) != 0) {
   399 
   401         return (*env)->NewString(env, data.cFileName, wcslen(data.cFileName));
   400     if (FindNextFileW(h, data) != 0) {
   402     } else {
   401         return (*env)->NewString(env, data->cFileName, wcslen(data->cFileName));
   403         if (GetLastError() != ERROR_NO_MORE_FILES)
   402     } else {
   404             throwWindowsException(env, GetLastError());
   403     if (GetLastError() != ERROR_NO_MORE_FILES)
       
   404         throwWindowsException(env, GetLastError());
   405         return NULL;
   405         return NULL;
   406     }
   406     }
   407 }
   407 }
   408 
   408 
   409 JNIEXPORT void JNICALL
   409 JNIEXPORT void JNICALL