ChangeLog Dimitrie O. Paun <dpaun@rogers.com> Fix some instances of memory allocation through HeapReAlloc(). Index: dlls/dmusic/dmusic.c =================================================================== RCS file: /var/cvs/wine/dlls/dmusic/dmusic.c,v retrieving revision 1.12 diff -u -r1.12 dmusic.c --- dlls/dmusic/dmusic.c 5 Sep 2003 23:08:39 -0000 1.12 +++ dlls/dmusic/dmusic.c 10 Oct 2003 21:31:35 -0000 @@ -133,7 +133,8 @@ TRACE("(%p, %s, %p, %p, %p)\n", This, debugstr_guid(rclsidPort), pPortParams, ppPort, pUnkOuter); for (i = 0; S_FALSE != IDirectMusic8Impl_EnumPort(iface, i, &PortCaps); i++) { if (IsEqualCLSID (rclsidPort, &PortCaps.guidPort)) { - This->ppPorts = HeapReAlloc(GetProcessHeap(), 0, This->ppPorts, sizeof(LPDIRECTMUSICPORT) * This->nrofports); + if(!This->ppPorts) This->ppPorts = HeapAlloc(GetProcessHeap(), 0, sizeof(LPDIRECTMUSICPORT) * This->nrofports); + else This->ppPorts = HeapReAlloc(GetProcessHeap(), 0, This->ppPorts, sizeof(LPDIRECTMUSICPORT) * This->nrofports); if (NULL == This->ppPorts[This->nrofports]) { *ppPort = (LPDIRECTMUSICPORT)NULL; return E_OUTOFMEMORY; Index: programs/winedbg/hash.c =================================================================== RCS file: /var/cvs/wine/programs/winedbg/hash.c,v retrieving revision 1.12 diff -u -r1.12 hash.c --- programs/winedbg/hash.c 9 Oct 2003 04:39:01 -0000 1.12 +++ programs/winedbg/hash.c 10 Oct 2003 21:16:32 -0000 @@ -1339,7 +1339,9 @@ { if (num_used_array == num_alloc_array) { - array = HeapReAlloc(GetProcessHeap(), 0, array, sizeof(*array) * (num_alloc_array += 32)); + int size = sizeof(*array) * (num_alloc_array += 32); + if (!array) array = HeapAlloc(GetProcessHeap(), 0, size); + else array = HeapReAlloc(GetProcessHeap(), 0, array, size); if (!array) return; } array[num_used_array++] = nh; Index: programs/winhelp/macro.c =================================================================== RCS file: /var/cvs/wine/programs/winhelp/macro.c,v retrieving revision 1.17 diff -u -r1.17 macro.c --- programs/winhelp/macro.c 1 Oct 2003 03:04:14 -0000 1.17 +++ programs/winhelp/macro.c 10 Oct 2003 21:18:41 -0000 @@ -832,6 +832,7 @@ { HANDLE hLib; void (*fn)(); + int size; WINE_TRACE("(\"%s\", \"%s\", \"%s\")\n", dll, proc, args); @@ -849,9 +850,9 @@ } /* FIXME: the library will not be unloaded until exit of program */ - - MACRO_Loaded = HeapReAlloc(GetProcessHeap(), 0, MACRO_Loaded, - ++MACRO_NumLoaded * sizeof(struct MacroDesc)); + size = ++MACRO_NumLoaded * sizeof(struct MacroDesc); + if (!MACRO_Loaded) MACRO_Loaded = HeapAlloc(GetProcessHeap(), 0, size); + else MACRO_Loaded = HeapReAlloc(GetProcessHeap(), 0, MACRO_Loaded, size); MACRO_Loaded[MACRO_NumLoaded - 1].name = strdup(proc); /* FIXME */ MACRO_Loaded[MACRO_NumLoaded - 1].alias = NULL; MACRO_Loaded[MACRO_NumLoaded - 1].isBool = 0; -- Dimi.