mirror of
https://github.com/openjdk/jdk.git
synced 2026-03-19 04:13:07 +00:00
8213366: (fs) avoid handle leak in Java_sun_nio_fs_WindowsNativeDispatcher_FindFirstFile0
Reviewed-by: alanb, chegar
This commit is contained in:
parent
a9ae141836
commit
968f65c036
@ -311,8 +311,10 @@ Java_sun_nio_fs_WindowsNativeDispatcher_FindFirstFile0(JNIEnv* env, jclass this,
|
||||
HANDLE handle = FindFirstFileW(lpFileName, &data);
|
||||
if (handle != INVALID_HANDLE_VALUE) {
|
||||
jstring name = (*env)->NewString(env, data.cFileName, (jsize)wcslen(data.cFileName));
|
||||
if (name == NULL)
|
||||
if (name == NULL) {
|
||||
FindClose(handle);
|
||||
return;
|
||||
}
|
||||
(*env)->SetLongField(env, obj, findFirst_handle, ptr_to_jlong(handle));
|
||||
(*env)->SetObjectField(env, obj, findFirst_name, name);
|
||||
(*env)->SetIntField(env, obj, findFirst_attributes, data.dwFileAttributes);
|
||||
@ -362,8 +364,10 @@ Java_sun_nio_fs_WindowsNativeDispatcher_FindFirstStream0(JNIEnv* env, jclass thi
|
||||
handle = FindFirstStreamW(lpFileName, FindStreamInfoStandard, &data, 0);
|
||||
if (handle != INVALID_HANDLE_VALUE) {
|
||||
jstring name = (*env)->NewString(env, data.cStreamName, (jsize)wcslen(data.cStreamName));
|
||||
if (name == NULL)
|
||||
if (name == NULL) {
|
||||
FindClose(handle);
|
||||
return;
|
||||
}
|
||||
(*env)->SetLongField(env, obj, findStream_handle, ptr_to_jlong(handle));
|
||||
(*env)->SetObjectField(env, obj, findStream_name, name);
|
||||
} else {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user