Listview updates (G1)
Dimitrie O. Paun
dpaun at rogers.com
Fri Sep 27 08:45:54 CDT 2002
This one properly fixes the problem reported by Paul Rupe.
It is relative to G0, sent earlier on the list.
Remove item from the list, if we fail to initialize it at insert time.
--- dlls/comctl32/listview.c.G0 Fri Sep 27 09:19:31 2002
+++ dlls/comctl32/listview.c Fri Sep 27 09:44:13 2002
@@ -6619,7 +6619,11 @@
if (nItem == -1) goto fail;
- if (!LISTVIEW_SetItemT(infoPtr, lpLVItem, isW)) goto fail;
+ if (!LISTVIEW_SetItemT(infoPtr, lpLVItem, isW))
+ DPA_DeletePtr(infoPtr->hdpaItems, nItem);
+ goto fail;
/* if we're sorted, sort the list, and update the index */
@@ -6630,7 +6634,8 @@
ERR("We can't find the item we just inserted, possible memory corruption.");
/* we can't remove it from the list if we can't find it, so just fail */
- goto fail;
+ /* we don't deallocate memory here, as it will probably cause more problems */
+ return -1;
More information about the wine-patches