diff --git a/dll/win32/setupapi/dialog.c b/dll/win32/setupapi/dialog.c index e8d7e06df5b..cd28d134612 100644 --- a/dll/win32/setupapi/dialog.c +++ b/dll/win32/setupapi/dialog.c @@ -117,7 +117,7 @@ static void promptdisk_browse(HWND hwnd, struct promptdisk_params *params) ofn.Flags = OFN_EXPLORER | OFN_HIDEREADONLY | OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST; ofn.hwndOwner = hwnd; ofn.nMaxFile = MAX_PATH; - ofn.lpstrFile = HeapAlloc(GetProcessHeap(), 0, MAX_PATH*sizeof(WCHAR)); + ofn.lpstrFile = malloc(MAX_PATH * sizeof(WCHAR)); lstrcpyW(ofn.lpstrFile, params->FileSought); if(GetOpenFileNameW(&ofn)) @@ -126,7 +126,7 @@ static void promptdisk_browse(HWND hwnd, struct promptdisk_params *params) if (last_slash) *last_slash = 0; SetDlgItemTextW(hwnd, IDC_PATH, ofn.lpstrFile); } - HeapFree(GetProcessHeap(), 0, ofn.lpstrFile); + free(ofn.lpstrFile); } /* Handles the messages sent to the SetupPromptForDisk dialog @@ -188,11 +188,11 @@ UINT WINAPI SetupPromptForDiskA(HWND hwndParent, PCSTR DialogTitle, PCSTR DiskNa ret = SetupPromptForDiskW(hwndParent, DialogTitleW, DiskNameW, PathToSourceW, FileSoughtW, TagFileW, DiskPromptStyle, PathBufferW, MAX_PATH, PathRequiredSize); - HeapFree(GetProcessHeap(), 0, DialogTitleW); - HeapFree(GetProcessHeap(), 0, DiskNameW); - HeapFree(GetProcessHeap(), 0, PathToSourceW); - HeapFree(GetProcessHeap(), 0, FileSoughtW); - HeapFree(GetProcessHeap(), 0, TagFileW); + free(DialogTitleW); + free(DiskNameW); + free(PathToSourceW); + free(FileSoughtW); + free(TagFileW); if(ret == DPROMPT_SUCCESS) { diff --git a/dll/win32/setupapi/dirid.c b/dll/win32/setupapi/dirid.c index 15f88218e49..da3ad5816f5 100644 --- a/dll/win32/setupapi/dirid.c +++ b/dll/win32/setupapi/dirid.c @@ -57,7 +57,7 @@ static const WCHAR *get_unknown_dirid(void) if (!unknown_dirid) { UINT len = GetSystemDirectoryW( NULL, 0 ) + lstrlenW(L"\\unknown"); - if (!(unknown_dirid = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ))) return NULL; + if (!(unknown_dirid = malloc( len * sizeof(WCHAR) ))) return NULL; GetSystemDirectoryW( unknown_dirid, len ); lstrcatW( unknown_dirid, L"\\unknown" ); } @@ -140,7 +140,7 @@ static const WCHAR *create_system_dirid( int dirid ) return get_unknown_dirid(); } len = (lstrlenW(buffer) + 1) * sizeof(WCHAR); - if ((str = HeapAlloc( GetProcessHeap(), 0, len ))) memcpy( str, buffer, len ); + if ((str = malloc( len ))) memcpy( str, buffer, len ); return str; } @@ -169,7 +169,7 @@ static const WCHAR *create_printer_dirid( DWORD dirid ) return get_unknown_dirid(); } len = (lstrlenW(buffer) + 1) * sizeof(WCHAR); - if ((str = HeapAlloc( GetProcessHeap(), 0, len ))) memcpy( str, buffer, len ); + if ((str = malloc( len ))) memcpy( str, buffer, len ); return str; } @@ -184,7 +184,7 @@ static const WCHAR *get_csidl_dir( DWORD csidl ) return get_unknown_dirid(); } len = (lstrlenW(buffer) + 1) * sizeof(WCHAR); - if ((str = HeapAlloc( GetProcessHeap(), 0, len ))) memcpy( str, buffer, len ); + if ((str = malloc( len ))) memcpy( str, buffer, len ); return str; } @@ -229,22 +229,13 @@ static BOOL store_user_dirid( HINF hinf, int id, WCHAR *str ) for (i = 0; i < nb_user_dirids; i++) if (user_dirids[i].id == id) break; - if (i < nb_user_dirids) HeapFree( GetProcessHeap(), 0, user_dirids[i].str ); + if (i < nb_user_dirids) free( user_dirids[i].str ); else { if (nb_user_dirids >= alloc_user_dirids) { int new_size = max( 32, alloc_user_dirids * 2 ); - - struct user_dirid *new; - - if (user_dirids) - new = HeapReAlloc( GetProcessHeap(), 0, user_dirids, - new_size * sizeof(*new) ); - else - new = HeapAlloc( GetProcessHeap(), 0, - new_size * sizeof(*new) ); - + struct user_dirid *new = realloc( user_dirids, new_size * sizeof(*new) ); if (!new) return FALSE; user_dirids = new; alloc_user_dirids = new_size; @@ -268,7 +259,7 @@ BOOL WINAPI SetupSetDirectoryIdA( HINF hinf, DWORD id, PCSTR dir ) if (!id) /* clear everything */ { - for (i = 0; i < nb_user_dirids; i++) HeapFree( GetProcessHeap(), 0, user_dirids[i].str ); + for (i = 0; i < nb_user_dirids; i++) free( user_dirids[i].str ); nb_user_dirids = 0; return TRUE; } @@ -298,7 +289,7 @@ BOOL WINAPI SetupSetDirectoryIdW( HINF hinf, DWORD id, PCWSTR dir ) if (!id) /* clear everything */ { - for (i = 0; i < nb_user_dirids; i++) HeapFree( GetProcessHeap(), 0, user_dirids[i].str ); + for (i = 0; i < nb_user_dirids; i++) free( user_dirids[i].str ); nb_user_dirids = 0; return TRUE; } @@ -310,7 +301,7 @@ BOOL WINAPI SetupSetDirectoryIdW( HINF hinf, DWORD id, PCWSTR dir ) /* duplicate the string */ len = (lstrlenW(dir)+1) * sizeof(WCHAR); - if (!(str = HeapAlloc( GetProcessHeap(), 0, len ))) return FALSE; + if (!(str = malloc( len ))) return FALSE; memcpy( str, dir, len ); return store_user_dirid( hinf, id, str ); } diff --git a/dll/win32/setupapi/diskspace.c b/dll/win32/setupapi/diskspace.c index c576f26df7c..5fc3f6a2319 100644 --- a/dll/win32/setupapi/diskspace.c +++ b/dll/win32/setupapi/diskspace.c @@ -55,7 +55,7 @@ HDSKSPC WINAPI SetupCreateDiskSpaceListW(PVOID Reserved1, DWORD Reserved2, UINT if (rc == 0) return NULL; - list = HeapAlloc(GetProcessHeap(),0,sizeof(DISKSPACELIST)); + list = malloc(sizeof(DISKSPACELIST)); list->dwDriveCount = 0; @@ -110,7 +110,7 @@ HDSKSPC WINAPI SetupDuplicateDiskSpaceListW(HDSKSPC DiskSpace, PVOID Reserved1, return NULL; } - list_copy = HeapAlloc(GetProcessHeap(), 0, sizeof(DISKSPACELIST)); + list_copy = malloc(sizeof(DISKSPACELIST)); if (!list_copy) { SetLastError(ERROR_NOT_ENOUGH_MEMORY); @@ -166,7 +166,7 @@ BOOL WINAPI SetupQuerySpaceRequiredOnDriveW(HDSKSPC DiskSpace, return FALSE; } - driveW = HeapAlloc(GetProcessHeap(), 0, (lstrlenW(DriveSpec) + 2) * sizeof(WCHAR)); + driveW = malloc((wcslen(DriveSpec) + 2) * sizeof(WCHAR)); if (!driveW) { SetLastError(ERROR_NOT_ENOUGH_MEMORY); @@ -189,7 +189,7 @@ BOOL WINAPI SetupQuerySpaceRequiredOnDriveW(HDSKSPC DiskSpace, } } - HeapFree(GetProcessHeap(), 0, driveW); + free(driveW); if (!rc) SetLastError(ERROR_INVALID_DRIVE); return rc; @@ -222,7 +222,7 @@ BOOL WINAPI SetupQuerySpaceRequiredOnDriveA(HDSKSPC DiskSpace, len = MultiByteToWideChar(CP_ACP, 0, DriveSpec, -1, NULL, 0); - DriveSpecW = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR)); + DriveSpecW = malloc(len * sizeof(WCHAR)); if (!DriveSpecW) { SetLastError(ERROR_NOT_ENOUGH_MEMORY); @@ -234,7 +234,7 @@ BOOL WINAPI SetupQuerySpaceRequiredOnDriveA(HDSKSPC DiskSpace, ret = SetupQuerySpaceRequiredOnDriveW(DiskSpace, DriveSpecW, SpaceRequired, Reserved1, Reserved2); - HeapFree(GetProcessHeap(), 0, DriveSpecW); + free(DriveSpecW); return ret; } @@ -245,7 +245,7 @@ BOOL WINAPI SetupQuerySpaceRequiredOnDriveA(HDSKSPC DiskSpace, BOOL WINAPI SetupDestroyDiskSpaceList(HDSKSPC DiskSpace) { LPDISKSPACELIST list = (LPDISKSPACELIST)DiskSpace; - HeapFree(GetProcessHeap(),0,list); + free(list); return TRUE; } diff --git a/dll/win32/setupapi/parser.c b/dll/win32/setupapi/parser.c index 048c7819cba..6402454ad76 100644 --- a/dll/win32/setupapi/parser.c +++ b/dll/win32/setupapi/parser.c @@ -144,15 +144,12 @@ static void *grow_array( void *array, unsigned int *count, size_t elem ) unsigned int new_count = *count + *count / 2; if (new_count < 32) new_count = 32; - if (array) - new_array = HeapReAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, array, new_count * elem ); - else - new_array = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, new_count * elem ); + new_array = _recalloc( array, new_count, elem ); if (new_array) *count = new_count; else - HeapFree( GetProcessHeap(), 0, array ); + free( array ); return new_array; } @@ -205,7 +202,7 @@ static int add_section( struct inf_file *file, const WCHAR *name ) if (!(file->sections = grow_array( file->sections, &file->alloc_sections, sizeof(file->sections[0]) ))) return -1; } - if (!(section = HeapAlloc( GetProcessHeap(), 0, sizeof(*section) ))) return -1; + if (!(section = malloc( sizeof(*section) ))) return -1; section->name = name; section->nb_lines = 0; section->alloc_lines = ARRAY_SIZE( section->lines ); @@ -226,7 +223,7 @@ static struct line *add_line( struct inf_file *file, int section_index ) if (section->nb_lines == section->alloc_lines) /* need to grow the section */ { int size = sizeof(*section) - sizeof(section->lines) + 2*section->alloc_lines*sizeof(*line); - if (!(section = HeapReAlloc( GetProcessHeap(), 0, section, size ))) return NULL; + if (!(section = realloc( section, size ))) return NULL; section->alloc_lines *= 2; file->sections[section_index] = section; } @@ -385,14 +382,14 @@ static const WCHAR *get_string_subst( const struct inf_file *file, const WCHAR * return field->text; // return the english or translated string not_found: /* check for integer id */ - if ((dirid_str = HeapAlloc( GetProcessHeap(), 0, (*len+1) * sizeof(WCHAR) ))) + if ((dirid_str = malloc( (*len + 1) * sizeof(WCHAR) ))) { memcpy( dirid_str, str, *len * sizeof(WCHAR) ); dirid_str[*len] = 0; dirid = wcstol( dirid_str, &end, 10 ); if (!*end) ret = get_dirid_subst( file, dirid, len ); if (no_trailing_slash && ret && *len && ret[*len - 1] == '\\') *len -= 1; - HeapFree( GetProcessHeap(), 0, dirid_str ); + free( dirid_str ); return ret; } return NULL; @@ -900,12 +897,12 @@ static void free_inf_file( struct inf_file *file ) { unsigned int i; - for (i = 0; i < file->nb_sections; i++) HeapFree( GetProcessHeap(), 0, file->sections[i] ); - HeapFree( GetProcessHeap(), 0, file->filename ); - HeapFree( GetProcessHeap(), 0, file->sections ); - HeapFree( GetProcessHeap(), 0, file->fields ); + for (i = 0; i < file->nb_sections; i++) free( file->sections[i] ); + free( file->filename ); + free( file->sections ); + free( file->fields ); HeapFree( GetProcessHeap(), 0, file->strings ); - HeapFree( GetProcessHeap(), 0, file ); + free( file ); } @@ -936,14 +933,12 @@ static DWORD parse_buffer( struct inf_file *file, const WCHAR *buffer, const WCH /* trim excess buffer space */ if (file->alloc_sections > file->nb_sections) { - file->sections = HeapReAlloc( GetProcessHeap(), 0, file->sections, - file->nb_sections * sizeof(file->sections[0]) ); + file->sections = realloc( file->sections, file->nb_sections * sizeof(file->sections[0]) ); file->alloc_sections = file->nb_sections; } if (file->alloc_fields > file->nb_fields) { - file->fields = HeapReAlloc( GetProcessHeap(), 0, file->fields, - file->nb_fields * sizeof(file->fields[0]) ); + file->fields = realloc( file->fields, file->nb_fields * sizeof(file->fields[0]) ); file->alloc_fields = file->nb_fields; } file->strings = HeapReAlloc( GetProcessHeap(), HEAP_REALLOC_IN_PLACE_ONLY, file->strings, @@ -1001,7 +996,7 @@ static struct inf_file *parse_file( HANDLE handle, UINT *error_line, DWORD style NtClose( mapping ); if (!buffer) return NULL; - if (!(file = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*file) ))) + if (!(file = calloc( 1, sizeof(*file) ))) { err = ERROR_NOT_ENOUGH_MEMORY; goto done; @@ -1031,12 +1026,12 @@ static struct inf_file *parse_file( HANDLE handle, UINT *error_line, DWORD style offset = sizeof(utf8_bom); } - if ((new_buff = HeapAlloc( GetProcessHeap(), 0, size * sizeof(WCHAR) ))) + if ((new_buff = malloc( size * sizeof(WCHAR) ))) { DWORD len = MultiByteToWideChar( codepage, 0, (char *)buffer + offset, size - offset, new_buff, size ); err = parse_buffer( file, new_buff, new_buff + len, error_line ); - HeapFree( GetProcessHeap(), 0, new_buff ); + free( new_buff ); } } else @@ -1099,7 +1094,7 @@ WCHAR *PARSER_get_src_root( HINF hinf ) { unsigned int len; const WCHAR *dir = get_inf_dir( hinf, &len ); - WCHAR *ret = HeapAlloc( GetProcessHeap(), 0, (len + 1) * sizeof(WCHAR) ); + WCHAR *ret = malloc((len + 1) * sizeof(WCHAR) ); if (ret) { memcpy( ret, dir, len * sizeof(WCHAR) ); @@ -1126,7 +1121,7 @@ WCHAR *PARSER_get_dest_dir( INFCONTEXT *context ) if (!SetupGetIntField( context, 1, &dirid )) return NULL; if (!(dir = get_dirid_subst( context->Inf, dirid, &len1 ))) return NULL; if (!SetupGetStringFieldW( context, 2, NULL, 0, &len2 )) len2 = 0; - if (!(ret = HeapAlloc( GetProcessHeap(), 0, (len1+len2+1) * sizeof(WCHAR) ))) return NULL; + if (!(ret = malloc( (len1 + len2 + 1) * sizeof(WCHAR) ))) return NULL; memcpy( ret, dir, len1 * sizeof(WCHAR) ); ptr = ret + len1; if (len2 && ptr > ret && ptr[-1] != '\\') *ptr++ = '\\'; @@ -1246,7 +1241,7 @@ HINF WINAPI SetupOpenInfFileW( PCWSTR name, PCWSTR class, DWORD style, UINT *err if (wcschr( name, '\\' ) || wcschr( name, '/' )) { if (!(len = GetFullPathNameW( name, 0, NULL, NULL ))) return INVALID_HANDLE_VALUE; - if (!(path = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ))) + if (!(path = malloc( len * sizeof(WCHAR) ))) { SetLastError( ERROR_NOT_ENOUGH_MEMORY ); return INVALID_HANDLE_VALUE; @@ -1260,7 +1255,7 @@ HINF WINAPI SetupOpenInfFileW( PCWSTR name, PCWSTR class, DWORD style, UINT *err static const WCHAR System32[] = {'\\','s','y','s','t','e','m','3','2','\\',0}; len = GetWindowsDirectoryW( NULL, 0 ) + lstrlenW(name) + 12; - if (!(path = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ))) + if (!(path = malloc( len * sizeof(WCHAR) ))) { SetLastError( ERROR_NOT_ENOUGH_MEMORY ); return INVALID_HANDLE_VALUE; @@ -1285,7 +1280,7 @@ HINF WINAPI SetupOpenInfFileW( PCWSTR name, PCWSTR class, DWORD style, UINT *err } if (!file) { - HeapFree( GetProcessHeap(), 0, path ); + free( path ); return INVALID_HANDLE_VALUE; } TRACE( "%s -> %p\n", debugstr_w(path), file ); @@ -1294,7 +1289,7 @@ HINF WINAPI SetupOpenInfFileW( PCWSTR name, PCWSTR class, DWORD style, UINT *err if (class) { GUID ClassGuid; - LPWSTR ClassName = HeapAlloc(GetProcessHeap(), 0, (lstrlenW(class) + 1) * sizeof(WCHAR)); + LPWSTR ClassName = malloc((lstrlenW(class) + 1) * sizeof(WCHAR)); if (!ClassName) { /* Not enough memory */ @@ -1305,7 +1300,7 @@ HINF WINAPI SetupOpenInfFileW( PCWSTR name, PCWSTR class, DWORD style, UINT *err else if (!PARSER_GetInfClassW((HINF)file, &ClassGuid, ClassName, lstrlenW(class) + 1, NULL)) { /* Unable to get class name in .inf file */ - HeapFree(GetProcessHeap(), 0, ClassName); + free(ClassName); SetLastError(ERROR_CLASS_MISMATCH); SetupCloseInfFile((HINF)file); return INVALID_HANDLE_VALUE; @@ -1313,12 +1308,12 @@ HINF WINAPI SetupOpenInfFileW( PCWSTR name, PCWSTR class, DWORD style, UINT *err else if (wcscmp(class, ClassName) != 0) { /* Provided name name is not the expected one */ - HeapFree(GetProcessHeap(), 0, ClassName); + free(ClassName); SetLastError(ERROR_CLASS_MISMATCH); SetupCloseInfFile((HINF)file); return INVALID_HANDLE_VALUE; } - HeapFree(GetProcessHeap(), 0, ClassName); + free(ClassName); } SetLastError( 0 ); @@ -1944,7 +1939,7 @@ BOOL WINAPI SetupGetIntField( PINFCONTEXT context, DWORD index, PINT result ) if (!(ret = SetupGetStringFieldA( context, index, localbuff, sizeof(localbuff), &required ))) { if (GetLastError() != ERROR_INSUFFICIENT_BUFFER) return FALSE; - if (!(buffer = HeapAlloc( GetProcessHeap(), 0, required ))) return FALSE; + if (!(buffer = malloc( required ))) return FALSE; if (!(ret = SetupGetStringFieldA( context, index, buffer, required, NULL ))) goto done; } /* The call to SetupGetStringFieldA succeeded. If buffer is empty we have an optional field */ @@ -1961,7 +1956,7 @@ BOOL WINAPI SetupGetIntField( PINFCONTEXT context, DWORD index, PINT result ) } done: - if (buffer != localbuff) HeapFree( GetProcessHeap(), 0, buffer ); + if (buffer != localbuff) free( buffer ); return ret; } diff --git a/dll/win32/setupapi/query.c b/dll/win32/setupapi/query.c index 570c68c533c..d2ec337f269 100644 --- a/dll/win32/setupapi/query.c +++ b/dll/win32/setupapi/query.c @@ -128,7 +128,7 @@ BOOL WINAPI SetupGetInfInformationA(LPCVOID InfSpec, DWORD SearchControl, if (InfSpec && SearchControl >= INFINFO_INF_NAME_IS_ABSOLUTE) { len = MultiByteToWideChar(CP_ACP, 0, InfSpec, -1, NULL, 0); - inf = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR)); + inf = malloc(len * sizeof(WCHAR)); if (!inf) { SetLastError(ERROR_NOT_ENOUGH_MEMORY); @@ -141,7 +141,7 @@ BOOL WINAPI SetupGetInfInformationA(LPCVOID InfSpec, DWORD SearchControl, ReturnBufferSize, RequiredSize); if (SearchControl >= INFINFO_INF_NAME_IS_ABSOLUTE) - HeapFree(GetProcessHeap(), 0, inf); + free(inf); return ret; } @@ -233,13 +233,13 @@ BOOL WINAPI SetupQueryInfFileInformationA(PSP_INF_INFORMATION InfInformation, if (!ret) return FALSE; - filenameW = HeapAlloc(GetProcessHeap(), 0, size * sizeof(WCHAR)); + filenameW = malloc(size * sizeof(WCHAR)); ret = SetupQueryInfFileInformationW(InfInformation, InfIndex, filenameW, size, &size); if (!ret) { - HeapFree(GetProcessHeap(), 0, filenameW); + free(filenameW); return FALSE; } @@ -248,7 +248,7 @@ BOOL WINAPI SetupQueryInfFileInformationA(PSP_INF_INFORMATION InfInformation, if (!ReturnBuffer) { - HeapFree(GetProcessHeap(), 0, filenameW); + free(filenameW); if (ReturnBufferSize) { SetLastError(ERROR_INVALID_PARAMETER); @@ -260,13 +260,13 @@ BOOL WINAPI SetupQueryInfFileInformationA(PSP_INF_INFORMATION InfInformation, if (size > ReturnBufferSize) { - HeapFree(GetProcessHeap(), 0, filenameW); + free(filenameW); SetLastError(ERROR_INSUFFICIENT_BUFFER); return FALSE; } WideCharToMultiByte(CP_ACP, 0, filenameW, -1, ReturnBuffer, size, NULL, NULL); - HeapFree(GetProcessHeap(), 0, filenameW); + free(filenameW); return ret; } @@ -334,7 +334,7 @@ BOOL WINAPI SetupGetSourceFileLocationA( HINF hinf, PINFCONTEXT context, PCSTR f if (!SetupGetSourceFileLocationW( hinf, context, filenameW, source_id, NULL, 0, &required )) goto done; - if (!(bufferW = HeapAlloc( GetProcessHeap(), 0, required * sizeof(WCHAR) ))) + if (!(bufferW = malloc( required * sizeof(WCHAR) ))) goto done; if (!SetupGetSourceFileLocationW( hinf, context, filenameW, source_id, bufferW, required, NULL )) @@ -356,8 +356,8 @@ BOOL WINAPI SetupGetSourceFileLocationA( HINF hinf, PINFCONTEXT context, PCSTR f ret = TRUE; done: - HeapFree( GetProcessHeap(), 0, filenameW ); - HeapFree( GetProcessHeap(), 0, bufferW ); + free( filenameW ); + free( bufferW ); return ret; } @@ -384,19 +384,19 @@ static LPWSTR get_source_id( HINF hinf, PINFCONTEXT context, PCWSTR filename ) if (!SetupGetStringFieldW( context, 1, NULL, 0, &size )) return NULL; - if (!(source_id = HeapAlloc( GetProcessHeap(), 0, size * sizeof(WCHAR) ))) + if (!(source_id = malloc( size * sizeof(WCHAR) ))) return NULL; if (!SetupGetStringFieldW( context, 1, source_id, size, NULL )) { - HeapFree( GetProcessHeap(), 0, source_id ); + free( source_id ); return NULL; } #ifndef __WINESRC__ if (!SetupDiGetActualSectionToInstallW(hinf, source_disks_names, Section, ARRAY_SIZE(Section), NULL, NULL)) { - HeapFree( GetProcessHeap(), 0, source_id ); + free( source_id ); return NULL; } @@ -407,7 +407,7 @@ static LPWSTR get_source_id( HINF hinf, PINFCONTEXT context, PCWSTR filename ) !SetupFindFirstLineW( hinf, source_disks_names, source_id, context )) #endif // !__WINESRC__ { - HeapFree( GetProcessHeap(), 0, source_id ); + free( source_id ); return NULL; } return source_id; @@ -435,10 +435,10 @@ BOOL WINAPI SetupGetSourceFileLocationW( HINF hinf, PINFCONTEXT context, PCWSTR *source_id = wcstol( source_id_str, &end, 10 ); if (end == source_id_str || *end) { - HeapFree( GetProcessHeap(), 0, source_id_str ); + free( source_id_str ); return FALSE; } - HeapFree( GetProcessHeap(), 0, source_id_str ); + free( source_id_str ); if (SetupGetStringFieldW( context, 4, buffer, buffer_size, required_size )) return TRUE; @@ -474,7 +474,7 @@ BOOL WINAPI SetupGetSourceInfoA( HINF hinf, UINT source_id, UINT info, if (!SetupGetSourceInfoW( hinf, source_id, info, NULL, 0, &required )) return FALSE; - if (!(bufferW = HeapAlloc( GetProcessHeap(), 0, required * sizeof(WCHAR) ))) + if (!(bufferW = malloc( required * sizeof(WCHAR) ))) return FALSE; if (!SetupGetSourceInfoW( hinf, source_id, info, bufferW, required, NULL )) @@ -496,7 +496,7 @@ BOOL WINAPI SetupGetSourceInfoA( HINF hinf, UINT source_id, UINT info, ret = TRUE; done: - HeapFree( GetProcessHeap(), 0, bufferW ); + free( bufferW ); return ret; } @@ -579,7 +579,7 @@ BOOL WINAPI SetupGetTargetPathA( HINF hinf, PINFCONTEXT context, PCSTR section, if (!SetupGetTargetPathW( hinf, context, sectionW, NULL, 0, &required )) goto done; - if (!(bufferW = HeapAlloc( GetProcessHeap(), 0, required * sizeof(WCHAR) ))) + if (!(bufferW = malloc( required * sizeof(WCHAR) ))) goto done; if (!SetupGetTargetPathW( hinf, context, sectionW, bufferW, required, NULL )) @@ -601,8 +601,8 @@ BOOL WINAPI SetupGetTargetPathA( HINF hinf, PINFCONTEXT context, PCSTR section, ret = TRUE; done: - HeapFree( GetProcessHeap(), 0, sectionW ); - HeapFree( GetProcessHeap(), 0, bufferW ); + free( sectionW ); + free( bufferW ); return ret; } @@ -647,11 +647,11 @@ BOOL WINAPI SetupGetTargetPathW( HINF hinf, PINFCONTEXT context, PCWSTR section, else { SetLastError( ERROR_INSUFFICIENT_BUFFER ); - if (dir != systemdir) HeapFree( GetProcessHeap(), 0, dir ); + if (dir != systemdir) free( dir ); return FALSE; } } - if (dir != systemdir) HeapFree( GetProcessHeap(), 0, dir ); + if (dir != systemdir) free( dir ); return TRUE; } diff --git a/dll/win32/setupapi/queue.c b/dll/win32/setupapi/queue.c index 5f01c99e056..c9f2d72431c 100644 --- a/dll/win32/setupapi/queue.c +++ b/dll/win32/setupapi/queue.c @@ -19,7 +19,6 @@ */ #include "setupapi_private.h" -#include "wine/heap.h" #ifdef __WINESRC__ #include @@ -100,16 +99,16 @@ static void free_file_op_queue( struct file_op_queue *queue ) while( op ) { - HeapFree( GetProcessHeap(), 0, op->src_path ); - HeapFree( GetProcessHeap(), 0, op->src_file ); - HeapFree( GetProcessHeap(), 0, op->dst_path ); + free( op->src_path ); + free( op->src_file ); + free( op->dst_path ); #ifdef __REACTOS__ if (op->dst_sd) LocalFree(op->dst_sd); #endif - if (op->dst_file != op->src_file) HeapFree( GetProcessHeap(), 0, op->dst_file ); + if (op->dst_file != op->src_file) free( op->dst_file ); t = op; op = op->next; - HeapFree( GetProcessHeap(), 0, t ); + free( t ); } } @@ -246,7 +245,7 @@ UINT CALLBACK QUEUE_callback_WtoA( void *context, UINT notification, statusA.FailureCode = statusW->FailureCode; ret = callback_ctx->orig_handler( callback_ctx->orig_context, notification, (UINT_PTR)&statusA, param2 ); - HeapFree( GetProcessHeap(), 0, (LPSTR)statusA.FileName ); + free( (char *)statusA.FileName ); } break; @@ -257,7 +256,7 @@ UINT CALLBACK QUEUE_callback_WtoA( void *context, UINT notification, ret = callback_ctx->orig_handler( callback_ctx->orig_context, notification, (UINT_PTR)target, param2 ); - HeapFree( GetProcessHeap(), 0, target ); + free( target ); } break; @@ -278,10 +277,10 @@ UINT CALLBACK QUEUE_callback_WtoA( void *context, UINT notification, (UINT_PTR)&mediaA, (UINT_PTR)&path); MultiByteToWideChar(CP_ACP, 0, path, -1, (WCHAR *)param2, MAX_PATH); - heap_free((char *)mediaA.Tagfile); - heap_free((char *)mediaA.Description); - heap_free((char *)mediaA.SourcePath); - heap_free((char *)mediaA.SourceFile); + free((char *)mediaA.Tagfile); + free((char *)mediaA.Description); + free((char *)mediaA.SourcePath); + free((char *)mediaA.SourceFile); break; } case SPFILENOTIFY_STARTQUEUE: @@ -315,7 +314,7 @@ static void get_src_file_info( HINF hinf, struct file_op *op, PWSTR* psrc_root, { if ((op->style & (SP_COPY_SOURCE_ABSOLUTE|SP_COPY_SOURCEPATH_ABSOLUTE))) return; /* no specific info, use .inf file source directory */ - if (!*psrc_root) *psrc_root = PARSER_get_src_root( hinf ); + if (!*psrc_root) *psrc_root = PARSER_get_src_root(hinf); return; } if (!SetupGetIntField( &file_ctx, 1, &diskid )) return; @@ -335,13 +334,13 @@ static void get_src_file_info( HINF hinf, struct file_op *op, PWSTR* psrc_root, if (!*psrc_descr) { if (SetupGetStringFieldW( &disk_ctx, 1, NULL, 0, &len ) && - (*psrc_descr = HeapAlloc( GetProcessHeap(), 0, len*sizeof(WCHAR) ))) + (*psrc_descr = malloc(len*sizeof(WCHAR)))) SetupGetStringFieldW( &disk_ctx, 1, *psrc_descr, len, NULL ); } if (!*psrc_tag) { if (SetupGetStringFieldW( &disk_ctx, 2, NULL, 0, &len ) && - (*psrc_tag = HeapAlloc( GetProcessHeap(), 0, len*sizeof(WCHAR) ))) + (*psrc_tag = malloc(len*sizeof(WCHAR)))) SetupGetStringFieldW( &disk_ctx, 2, *psrc_tag, len, NULL ); } if (!op->src_path && !(op->style & SP_COPY_SOURCE_ABSOLUTE)) @@ -356,7 +355,7 @@ static void get_src_file_info( HINF hinf, struct file_op *op, PWSTR* psrc_root, if (!SetupGetStringFieldW( &file_ctx, 2, NULL, 0, &len2 )) len2 = 0; if ((len || len2) && - (op->src_path = HeapAlloc( GetProcessHeap(), 0, (len+len2)*sizeof(WCHAR) ))) + (op->src_path = malloc((len+len2)*sizeof(WCHAR)))) { WCHAR *ptr = op->src_path; if (len) @@ -392,11 +391,11 @@ static void get_source_info( HINF hinf, const WCHAR *src_file, SP_FILE_COPY_PARA } if (SetupGetStringFieldW( &disk_ctx, 1, NULL, 0, &len ) && len > sizeof(WCHAR) - && (params->SourceDescription = heap_alloc( len * sizeof(WCHAR) ))) + && (params->SourceDescription = malloc( len * sizeof(WCHAR) ))) SetupGetStringFieldW( &disk_ctx, 1, (WCHAR *)params->SourceDescription, len, NULL ); if (SetupGetStringFieldW( &disk_ctx, 2, NULL, 0, &len ) && len > sizeof(WCHAR) - && (params->SourceTagfile = heap_alloc( len * sizeof(WCHAR) ))) + && (params->SourceTagfile = malloc( len * sizeof(WCHAR) ))) SetupGetStringFieldW( &disk_ctx, 2, (WCHAR *)params->SourceTagfile, len, NULL ); if (SetupGetStringFieldW( &disk_ctx, 4, NULL, 0, &len ) && len > sizeof(WCHAR) @@ -432,7 +431,7 @@ static WCHAR *get_destination_dir( HINF hinf, const WCHAR *section ) return dir; GetSystemDirectoryW( systemdir, MAX_PATH ); - return strdupW( systemdir ); + return wcsdup( systemdir ); } struct extract_cab_ctx @@ -516,7 +515,7 @@ HSPFILEQ WINAPI SetupOpenFileQueue(void) { struct file_queue *queue; - if (!(queue = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*queue)))) + if (!(queue = calloc( 1, sizeof(*queue) ))) return INVALID_HANDLE_VALUE; queue->magic = FILE_QUEUE_MAGIC; return queue; @@ -544,12 +543,12 @@ BOOL WINAPI SetupCloseFileQueue( HSPFILEQ handle ) free_file_op_queue( &queue->delete_queue ); for (i = 0; i < queue->source_count; ++i) { - heap_free( queue->sources[i]->desc ); - heap_free( queue->sources[i]->tag ); - heap_free( queue->sources[i] ); + free( queue->sources[i]->desc ); + free( queue->sources[i]->tag ); + free( queue->sources[i] ); } - heap_free( queue->sources ); - HeapFree( GetProcessHeap(), 0, queue ); + free( queue->sources ); + free( queue ); return TRUE; } @@ -577,14 +576,14 @@ BOOL WINAPI SetupQueueCopyIndirectA( SP_FILE_COPY_PARAMS_A *paramsA ) ret = SetupQueueCopyIndirectW( ¶msW ); - heap_free( (WCHAR *)paramsW.SourceRootPath ); - heap_free( (WCHAR *)paramsW.SourcePath ); - heap_free( (WCHAR *)paramsW.SourceFilename ); - heap_free( (WCHAR *)paramsW.SourceDescription ); - heap_free( (WCHAR *)paramsW.SourceTagfile ); - heap_free( (WCHAR *)paramsW.TargetDirectory ); - heap_free( (WCHAR *)paramsW.TargetFilename ); - heap_free( (WCHAR *)paramsW.SecurityDescriptor ); + free( (WCHAR *)paramsW.SourceRootPath ); + free( (WCHAR *)paramsW.SourcePath ); + free( (WCHAR *)paramsW.SourceFilename ); + free( (WCHAR *)paramsW.SourceDescription ); + free( (WCHAR *)paramsW.SourceTagfile ); + free( (WCHAR *)paramsW.TargetDirectory ); + free( (WCHAR *)paramsW.TargetFilename ); + free( (WCHAR *)paramsW.SecurityDescriptor ); return ret; } @@ -608,11 +607,11 @@ static struct source_media *get_source_media(struct file_queue *queue, } } - queue->sources = heap_realloc( queue->sources, ++queue->source_count * sizeof(*queue->sources) ); - queue->sources[i] = heap_alloc( sizeof(*queue->sources[i]) ); + queue->sources = realloc( queue->sources, ++queue->source_count * sizeof(*queue->sources) ); + queue->sources[i] = malloc( sizeof(*queue->sources[i]) ); lstrcpyW(queue->sources[i]->root, root); - queue->sources[i]->desc = strdupW(desc); - queue->sources[i]->tag = strdupW(tag); + queue->sources[i]->desc = wcsdup( desc ); + queue->sources[i]->tag = wcsdup( tag ); queue->sources[i]->resolved = FALSE; queue->sources[i]->cabinet = FALSE; @@ -631,12 +630,12 @@ BOOL WINAPI SetupQueueCopyIndirectW( PSP_FILE_COPY_PARAMS_W params ) PWSTR src_root = NULL, src_descr = NULL, src_tag = NULL; #endif - if (!(op = HeapAlloc( GetProcessHeap(), 0, sizeof(*op) ))) return FALSE; + if (!(op = malloc( sizeof(*op) ))) return FALSE; op->style = params->CopyStyle; - op->src_path = strdupW( params->SourcePath ); - op->src_file = strdupW( params->SourceFilename ); - op->dst_path = strdupW( params->TargetDirectory ); - op->dst_file = strdupW( params->TargetFilename ); + op->src_path = wcsdup( params->SourcePath ); + op->src_file = wcsdup( params->SourceFilename ); + op->dst_path = wcsdup( params->TargetDirectory ); + op->dst_file = wcsdup( params->TargetFilename ); #ifdef __REACTOS__ op->dst_sd = NULL; if (params->SecurityDescriptor) @@ -667,9 +666,9 @@ BOOL WINAPI SetupQueueCopyIndirectW( PSP_FILE_COPY_PARAMS_W params ) params->SourceRootPath = org_src_root; params->SourceDescription = org_src_descr; params->SourceTagfile = org_src_tag; - if (src_root) HeapFree(GetProcessHeap(), 0, src_root); - if (src_descr) HeapFree(GetProcessHeap(), 0, src_descr); - if (src_tag) HeapFree(GetProcessHeap(), 0, src_tag); + if (src_root) free(src_root); + if (src_descr) free(src_descr); + if (src_tag) free(src_tag); } #endif @@ -793,9 +792,9 @@ BOOL WINAPI SetupQueueDefaultCopyW( HSPFILEQ queue, HINF hinf, PCWSTR src_root, ret = SetupQueueCopyIndirectW( ¶ms ); - heap_free( (WCHAR *)params.TargetDirectory ); - heap_free( (WCHAR *)params.SourceDescription ); - heap_free( (WCHAR *)params.SourceTagfile ); + free( (WCHAR *)params.TargetDirectory ); + free( (WCHAR *)params.SourceDescription ); + free( (WCHAR *)params.SourceTagfile ); return ret; } @@ -808,7 +807,7 @@ BOOL WINAPI SetupQueueDeleteA( HSPFILEQ handle, PCSTR part1, PCSTR part2 ) struct file_queue *queue = handle; struct file_op *op; - if (!(op = heap_alloc_zero( sizeof(*op) ))) return FALSE; + if (!(op = calloc( 1, sizeof(*op) ))) return FALSE; op->dst_path = strdupAtoW( part1 ); op->dst_file = strdupAtoW( part2 ); queue_file_op( &queue->delete_queue, op ); @@ -824,9 +823,9 @@ BOOL WINAPI SetupQueueDeleteW( HSPFILEQ handle, PCWSTR part1, PCWSTR part2 ) struct file_queue *queue = handle; struct file_op *op; - if (!(op = heap_alloc_zero( sizeof(*op) ))) return FALSE; - op->dst_path = strdupW( part1 ); - op->dst_file = strdupW( part2 ); + if (!(op = calloc( 1, sizeof(*op) ))) return FALSE; + op->dst_path = wcsdup( part1 ); + op->dst_file = wcsdup( part2 ); queue_file_op( &queue->delete_queue, op ); return TRUE; } @@ -841,7 +840,7 @@ BOOL WINAPI SetupQueueRenameA( HSPFILEQ handle, PCSTR SourcePath, PCSTR SourceFi struct file_queue *queue = handle; struct file_op *op; - if (!(op = heap_alloc_zero( sizeof(*op) ))) return FALSE; + if (!(op = calloc( 1, sizeof(*op) ))) return FALSE; op->src_path = strdupAtoW( SourcePath ); op->src_file = strdupAtoW( SourceFilename ); op->dst_path = strdupAtoW( TargetPath ? TargetPath : SourcePath ); @@ -860,11 +859,11 @@ BOOL WINAPI SetupQueueRenameW( HSPFILEQ handle, PCWSTR SourcePath, PCWSTR Source struct file_queue *queue = handle; struct file_op *op; - if (!(op = heap_alloc_zero( sizeof(*op) ))) return FALSE; - op->src_path = strdupW( SourcePath ); - op->src_file = strdupW( SourceFilename ); - op->dst_path = strdupW( TargetPath ? TargetPath : SourcePath ); - op->dst_file = strdupW( TargetFilename ); + if (!(op = calloc( 1, sizeof(*op) ))) return FALSE; + op->src_path = wcsdup( SourcePath ); + op->src_file = wcsdup( SourceFilename ); + op->dst_path = wcsdup( TargetPath ? TargetPath : SourcePath ); + op->dst_file = wcsdup( TargetFilename ); queue_file_op( &queue->rename_queue, op ); return TRUE; } @@ -996,13 +995,13 @@ BOOL WINAPI SetupQueueCopySectionW( HSPFILEQ queue, PCWSTR src_root, HINF hinf, if (!SetupQueueCopyIndirectW( ¶ms )) goto end; - heap_free( (WCHAR *)params.SourceDescription ); - heap_free( (WCHAR *)params.SourceTagfile ); + free( (WCHAR *)params.SourceDescription ); + free( (WCHAR *)params.SourceTagfile ); } while (SetupFindNextLine( &context, &context )); ret = TRUE; end: - HeapFree(GetProcessHeap(), 0, dest_dir); + free( dest_dir ); done: #ifdef __REACTOS__ if (security_descriptor) @@ -1056,7 +1055,7 @@ BOOL WINAPI SetupQueueDeleteSectionW( HSPFILEQ queue, HINF hinf, HINF hlist, PCW ret = TRUE; done: - HeapFree( GetProcessHeap(), 0, dest_dir ); + free( dest_dir ); return ret; } @@ -1105,7 +1104,7 @@ BOOL WINAPI SetupQueueRenameSectionW( HSPFILEQ queue, HINF hinf, HINF hlist, PCW ret = TRUE; done: - HeapFree( GetProcessHeap(), 0, dest_dir ); + free( dest_dir ); return ret; } @@ -1135,7 +1134,7 @@ static BOOL create_full_pathW(const WCHAR *path) int len; WCHAR *new_path; - new_path = HeapAlloc(GetProcessHeap(), 0, (lstrlenW(path) + 1) * sizeof(WCHAR)); + new_path = malloc((lstrlenW(path) + 1) * sizeof(WCHAR)); lstrcpyW(new_path, path); while((len = lstrlenW(new_path)) && new_path[len - 1] == '\\') @@ -1171,7 +1170,7 @@ static BOOL create_full_pathW(const WCHAR *path) new_path[len] = '\\'; } - HeapFree(GetProcessHeap(), 0, new_path); + free(new_path); return ret; } @@ -1356,8 +1355,8 @@ static BOOL do_file_copyW( LPCWSTR source, LPCWSTR target, DWORD style, UINT length; DWORD ret; - VersionSource = HeapAlloc(GetProcessHeap(),0,VersionSizeSource); - VersionTarget = HeapAlloc(GetProcessHeap(),0,VersionSizeTarget); + VersionSource = malloc(VersionSizeSource); + VersionTarget = malloc(VersionSizeTarget); ret = GetFileVersionInfoW(TempFile,0,VersionSizeSource,VersionSource); if (ret) @@ -1412,8 +1411,8 @@ static BOOL do_file_copyW( LPCWSTR source, LPCWSTR target, DWORD style, } } } - HeapFree(GetProcessHeap(),0,VersionSource); - HeapFree(GetProcessHeap(),0,VersionTarget); + free(VersionSource); + free(VersionTarget); } } if (style & (SP_COPY_NOOVERWRITE | SP_COPY_FORCE_NOOVERWRITE)) @@ -1551,14 +1550,14 @@ BOOL WINAPI SetupInstallFileExW( HINF hinf, PINFCONTEXT inf_context, PCWSTR sour if (!SetupFindFirstLineW( hinf, L"CopyFiles", NULL, inf_context )) return FALSE; } if (!SetupGetStringFieldW( inf_context, 1, NULL, 0, (PDWORD) &len )) return FALSE; - if (!(inf_source = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ))) + if (!(inf_source = malloc( len * sizeof(WCHAR) ))) { SetLastError( ERROR_NOT_ENOUGH_MEMORY ); return FALSE; } if (!SetupGetStringFieldW( inf_context, 1, inf_source, len, NULL )) { - HeapFree( GetProcessHeap(), 0, inf_source ); + free( inf_source ); return FALSE; } source = inf_source; @@ -1567,7 +1566,7 @@ BOOL WINAPI SetupInstallFileExW( HINF hinf, PINFCONTEXT inf_context, PCWSTR sour { lstrcpyW( dest_path, dest_dir ); lstrcatW( dest_path, L"\\" ); - heap_free( dest_dir ); + free( dest_dir ); } } else if (!source) @@ -1579,9 +1578,9 @@ BOOL WINAPI SetupInstallFileExW( HINF hinf, PINFCONTEXT inf_context, PCWSTR sour len = lstrlenW( source ) + 1; if (absolute) len += lstrlenW( root ) + 1; - if (!(p = buffer = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ))) + if (!(p = buffer = malloc( len * sizeof(WCHAR) ))) { - HeapFree( GetProcessHeap(), 0, inf_source ); + free( inf_source ); SetLastError( ERROR_NOT_ENOUGH_MEMORY ); return FALSE; } @@ -1599,8 +1598,8 @@ BOOL WINAPI SetupInstallFileExW( HINF hinf, PINFCONTEXT inf_context, PCWSTR sour ret = do_file_copyW( buffer, dest_path, style, handler, context ); - HeapFree( GetProcessHeap(), 0, inf_source ); - HeapFree( GetProcessHeap(), 0, buffer ); + free( inf_source ); + free( buffer ); return ret; } @@ -1733,7 +1732,7 @@ BOOL WINAPI SetupCommitFileQueueW( HWND owner, HSPFILEQ handle, PSP_FILE_CALLBAC lstrcatW(op->media->root, L"\\"); lstrcatW(op->media->root, op->src_path); - heap_free(op->src_path); + free(op->src_path); op->src_path = NULL; } @@ -2033,7 +2032,7 @@ PVOID WINAPI SetupInitDefaultQueueCallbackEx( HWND owner, HWND progress, UINT ms { struct default_callback_context *context; - if ((context = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*context) ))) + if ((context = calloc( 1, sizeof(*context) ))) { context->magic = 0x43515053; /* "SPQC" */ context->owner = owner; @@ -2049,7 +2048,7 @@ PVOID WINAPI SetupInitDefaultQueueCallbackEx( HWND owner, HWND progress, UINT ms */ void WINAPI SetupTermDefaultQueueCallback( PVOID context ) { - HeapFree( GetProcessHeap(), 0, context ); + free( context ); } diff --git a/dll/win32/setupapi/setupapi_private.h b/dll/win32/setupapi/setupapi_private.h index 7547dc4c0d6..af248ce8e73 100644 --- a/dll/win32/setupapi/setupapi_private.h +++ b/dll/win32/setupapi/setupapi_private.h @@ -295,24 +295,13 @@ extern DWORD GlobalSetupFlags; #define REGPART_RENAME "\\Rename" #define REG_VERSIONCONFLICT "Software\\Microsoft\\VersionConflictManager" -static inline WCHAR *strdupW( const WCHAR *str ) -{ - WCHAR *ret = NULL; - if (str) - { - int len = (strlenW(str) + 1) * sizeof(WCHAR); - if ((ret = HeapAlloc( GetProcessHeap(), 0, len ))) memcpy( ret, str, len ); - } - return ret; -} - static inline char *strdupWtoA( const WCHAR *str ) { char *ret = NULL; if (str) { DWORD len = WideCharToMultiByte( CP_ACP, 0, str, -1, NULL, 0, NULL, NULL ); - if ((ret = HeapAlloc( GetProcessHeap(), 0, len ))) + if ((ret = malloc( len ))) WideCharToMultiByte( CP_ACP, 0, str, -1, ret, len, NULL, NULL ); } return ret; @@ -324,7 +313,7 @@ static inline WCHAR *strdupAtoW( const char *str ) if (str) { DWORD len = MultiByteToWideChar( CP_ACP, 0, str, -1, NULL, 0 ); - if ((ret = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ))) + if ((ret = malloc( len * sizeof(WCHAR) ))) MultiByteToWideChar( CP_ACP, 0, str, -1, ret, len ); } return ret; diff --git a/dll/win32/setupapi/setupcab.c b/dll/win32/setupapi/setupcab.c index 7ab8700120c..97d3f892166 100644 --- a/dll/win32/setupapi/setupcab.c +++ b/dll/win32/setupapi/setupcab.c @@ -40,12 +40,12 @@ typedef struct static void * CDECL sc_cb_alloc(ULONG cb) { - return HeapAlloc(GetProcessHeap(), 0, cb); + return malloc(cb); } static void CDECL sc_cb_free(void *pv) { - HeapFree(GetProcessHeap(), 0, pv); + free(pv); } static INT_PTR CDECL sc_cb_open(char *pszFile, int oflag, int pmode) diff --git a/dll/win32/setupapi/stringtable_wine.c b/dll/win32/setupapi/stringtable_wine.c index 26dee979881..5b7561f37b0 100644 --- a/dll/win32/setupapi/stringtable_wine.c +++ b/dll/win32/setupapi/stringtable_wine.c @@ -404,7 +404,7 @@ DWORD WINAPI StringTableAddStringEx(HSTRING_TABLE hTable, LPWSTR string, len = sizeof(DWORD) + (lstrlenW(string)+1)*sizeof(WCHAR) + table->max_extra_size; if (table->nextoffset + len >= table->allocated) { table->allocated <<= 1; - table->data = HeapReAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, table->data, table->allocated); + table->data = _recalloc(table->data, 1, table->allocated); } /* hash string */ diff --git a/sdk/tools/winesync/setupapi.cfg b/sdk/tools/winesync/setupapi.cfg index 92c34ef9b62..3412b871bf6 100644 --- a/sdk/tools/winesync/setupapi.cfg +++ b/sdk/tools/winesync/setupapi.cfg @@ -10,4 +10,4 @@ files: dlls/setupapi/setupcab.c: dll/win32/setupapi/setupcab.c dlls/setupapi/stringtable.c: dll/win32/setupapi/stringtable_wine.c tags: - wine: d3a9fa181cbf81f6b920d6ddc3760e78d1d18601 + wine: c293cd781fb4b330b7d93171501134f86a5138b8