cmd: Introduce xrealloc helper.

Signed-off-by: Eric Pouech <epouech@codeweavers.com>
This commit is contained in:
Eric Pouech 2024-04-22 09:51:17 +02:00 committed by Alexandre Julliard
parent 76237079d1
commit 93354bbd88
3 changed files with 10 additions and 11 deletions

View file

@ -271,13 +271,7 @@ static DIRECTORY_STACK *WCMD_list_directory (DIRECTORY_STACK *inputparms, int le
if (tmpLen > widest) widest = tmpLen;
}
fd = realloc(fd, (entry_count + 1) * sizeof(WIN32_FIND_DATAW));
if (fd == NULL) {
FindClose (hff);
WINE_ERR("Out of memory\n");
errorlevel = 1;
return parms->next;
}
fd = xrealloc(fd, (entry_count + 1) * sizeof(WIN32_FIND_DATAW));
} while (FindNextFileW(hff, &fd[entry_count]) != 0);
FindClose (hff);
}

View file

@ -124,7 +124,12 @@ void WCMD_free_commands(CMD_LIST *cmds);
void WCMD_execute (const WCHAR *orig_command, const WCHAR *redirects,
CMD_LIST **cmdList, BOOL retrycall);
void *xalloc(size_t) __WINE_ALLOC_SIZE(1) __WINE_DEALLOC(free) __WINE_MALLOC;
void *xrealloc(void *, size_t) __WINE_ALLOC_SIZE(2) __WINE_DEALLOC(free) __WINE_MALLOC;
static inline void *xalloc(size_t sz)
{
return xrealloc(NULL, sz);
}
static inline WCHAR *xstrdupW(const WCHAR *str)
{

View file

@ -423,12 +423,12 @@ static void WCMD_show_prompt (BOOL newLine) {
WCMD_output_asis (out_string);
}
void *xalloc(size_t size)
void *xrealloc(void *ptr, size_t size)
{
void *ret;
ret = malloc(size);
if(!ret) {
if (!(ret = realloc(ptr, size)))
{
ERR("Out of memory\n");
ExitProcess(1);
}