Hello, I am new to the list, and I want to publish a bugfix. If you call xfreerdp with invalid arguments, a segfault happens at cleanup, caused by the null-pointer in this line in GetExitCodeThread: *lpExitCode = thread->dwExitCode;
I suggest to fix the function winpr_Handle_GetInfo like this: diff --git a/winpr/libwinpr/handle/handle.h b/winpr/libwinpr/handle/handle.h index 5011e82..6043703 100644 --- a/winpr/libwinpr/handle/handle.h +++ b/winpr/libwinpr/handle/handle.h @@ -47,6 +47,9 @@ static inline BOOL winpr_Handle_GetInfo(HANDLE handle, ULONG* pType, PVOID* pObj { WINPR_HANDLE* wHandle; + if(handle == NULL) + return FALSE; + wHandle = (WINPR_HANDLE*) handle; *pType = wHandle->Type; Cheers Chris ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ Freerdp-devel mailing list Freerdp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freerdp-devel