diff options
-rw-r--r-- | psutil/arch/windows/process_handles.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/psutil/arch/windows/process_handles.c b/psutil/arch/windows/process_handles.c index 1872c572..16d04aee 100644 --- a/psutil/arch/windows/process_handles.c +++ b/psutil/arch/windows/process_handles.c @@ -181,6 +181,10 @@ psutil_get_open_files(DWORD dwPid, HANDLE hProcess) { if ((ULONG_PTR)hHandle->UniqueProcessId != dwPid) goto loop_cleanup; + // not a file + if (GetFileType((HANDLE)hHandle->HandleValue) != FILE_TYPE_DISK) + goto loop_cleanup; + if (!DuplicateHandle(hProcess, (HANDLE)hHandle->HandleValue, GetCurrentProcess(), |