Module: wine Branch: master Commit: a07cff77d3bd452c3c4b99bf93503f727bf768cb URL: https://source.winehq.org/git/wine.git/?a=commit;h=a07cff77d3bd452c3c4b99bf9...
Author: Alexandre Julliard julliard@winehq.org Date: Fri Jul 3 12:04:02 2020 +0200
ntdll: Use malloc() to allocate the object attributes buffer.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntdll/unix/file.c | 6 +++--- dlls/ntdll/unix/process.c | 6 +++--- dlls/ntdll/unix/sync.c | 19 +++++++++---------- dlls/ntdll/unix/thread.c | 4 ++-- 4 files changed, 17 insertions(+), 18 deletions(-)
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c index a77cb6d410..5ed7a21d8e 100644 --- a/dlls/ntdll/unix/file.c +++ b/dlls/ntdll/unix/file.c @@ -3596,7 +3596,7 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU *handle = wine_server_ptr_handle( reply->handle ); } SERVER_END_REQ; - RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); RtlFreeAnsiString( &unix_name ); } else WARN( "%s not found (%x)\n", debugstr_us(attr->ObjectName), io->u.Status ); @@ -3671,7 +3671,7 @@ NTSTATUS WINAPI NtCreateMailslotFile( HANDLE *handle, ULONG access, OBJECT_ATTRI } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return status; }
@@ -3719,7 +3719,7 @@ NTSTATUS WINAPI NtCreateNamedPipeFile( HANDLE *handle, ULONG access, OBJECT_ATTR } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return status; }
diff --git a/dlls/ntdll/unix/process.c b/dlls/ntdll/unix/process.c index 33bee03c19..6c29055821 100644 --- a/dlls/ntdll/unix/process.c +++ b/dlls/ntdll/unix/process.c @@ -836,7 +836,7 @@ NTSTATUS WINAPI NtCreateUserProcess( HANDLE *process_handle_ptr, HANDLE *thread_ if (socketpair( PF_UNIX, SOCK_STREAM, 0, socketfd ) == -1) { status = STATUS_TOO_MANY_OPENED_FILES; - RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); goto done; } #ifdef SO_PASSCRED @@ -873,7 +873,7 @@ NTSTATUS WINAPI NtCreateUserProcess( HANDLE *process_handle_ptr, HANDLE *thread_ process_info = wine_server_ptr_handle( reply->info ); } SERVER_END_REQ; - RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr );
if (status) { @@ -906,7 +906,7 @@ NTSTATUS WINAPI NtCreateUserProcess( HANDLE *process_handle_ptr, HANDLE *thread_ } } SERVER_END_REQ; - RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); if (status) goto done;
/* create the child process */ diff --git a/dlls/ntdll/unix/sync.c b/dlls/ntdll/unix/sync.c index 4402584f28..5080caef52 100644 --- a/dlls/ntdll/unix/sync.c +++ b/dlls/ntdll/unix/sync.c @@ -263,8 +263,7 @@ NTSTATUS alloc_object_attributes( const OBJECT_ATTRIBUTES *attr, struct object_a
len = (len + 3) & ~3; /* DWORD-align the entire structure */
- *ret = RtlAllocateHeap( GetProcessHeap(), HEAP_ZERO_MEMORY, len ); - if (!*ret) return STATUS_NO_MEMORY; + if (!(*ret = calloc( len, 1 ))) return STATUS_NO_MEMORY;
(*ret)->rootdir = wine_server_obj_handle( attr->RootDirectory ); (*ret)->attributes = attr->Attributes; @@ -341,7 +340,7 @@ NTSTATUS WINAPI NtCreateSemaphore( HANDLE *handle, ACCESS_MASK access, const OBJ } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return ret; }
@@ -448,7 +447,7 @@ NTSTATUS WINAPI NtCreateEvent( HANDLE *handle, ACCESS_MASK access, const OBJECT_ } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return ret; }
@@ -601,7 +600,7 @@ NTSTATUS WINAPI NtCreateMutant( HANDLE *handle, ACCESS_MASK access, const OBJECT } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return ret; }
@@ -702,7 +701,7 @@ NTSTATUS WINAPI NtCreateJobObject( HANDLE *handle, ACCESS_MASK access, const OBJ *handle = wine_server_ptr_handle( reply->handle ); } SERVER_END_REQ; - RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return ret; }
@@ -937,7 +936,7 @@ NTSTATUS WINAPI NtCreateTimer( HANDLE *handle, ACCESS_MASK access, const OBJECT_ } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return ret;
} @@ -1280,7 +1279,7 @@ NTSTATUS WINAPI NtCreateKeyedEvent( HANDLE *handle, ACCESS_MASK access, } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return ret; }
@@ -1370,7 +1369,7 @@ NTSTATUS WINAPI NtCreateIoCompletion( HANDLE *handle, ACCESS_MASK access, OBJECT } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return status; }
@@ -1583,7 +1582,7 @@ NTSTATUS WINAPI NtCreateSection( HANDLE *handle, ACCESS_MASK access, const OBJEC } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return ret; }
diff --git a/dlls/ntdll/unix/thread.c b/dlls/ntdll/unix/thread.c index 686d3991b7..299fb4be43 100644 --- a/dlls/ntdll/unix/thread.c +++ b/dlls/ntdll/unix/thread.c @@ -193,7 +193,7 @@ NTSTATUS WINAPI NtCreateThreadEx( HANDLE *handle, ACCESS_MASK access, OBJECT_ATT
if (server_pipe( request_pipe ) == -1) { - RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); return STATUS_TOO_MANY_OPENED_FILES; } server_send_fd( request_pipe[0] ); @@ -216,7 +216,7 @@ NTSTATUS WINAPI NtCreateThreadEx( HANDLE *handle, ACCESS_MASK access, OBJECT_ATT } SERVER_END_REQ;
- RtlFreeHeap( GetProcessHeap(), 0, objattr ); + free( objattr ); if (status) { close( request_pipe[1] );