On 7/22/2011 06:59, Jay Yang wrote:
diff --git a/dlls/comctl32/comboex.c b/dlls/comctl32/comboex.c index 3402a71..4888519 100644 --- a/dlls/comctl32/comboex.c +++ b/dlls/comctl32/comboex.c @@ -1557,6 +1557,11 @@ static void COMBOEX_ResetContent (COMBOEX_INFO *infoPtr)
item = infoPtr->items; while (item) {
NMCOMBOBOXEXW nmcit;
memset (&nmcit.ceItem, 0, sizeof(nmcit.ceItem));
nmcit.ceItem.mask=~0;
COMBOEX_CopyItem (item,&nmcit.ceItem);
COMBOEX_NotifyItem (infoPtr, CBEN_DELETEITEM,&nmcit); next = item->next; COMBOEX_FreeText (item); Free (item);
First of all no need for memset probably, and it's common rule I think (well for me at least) to avoid unneeded initialization.
As we have message to delete a single item, it's probably time to think about factoring out item deletion helper (that sends notification too).
Actually it seems strange for me that this control uses list to store item data, cause messages are clearly index based. So first thing I'd like to see with that is to change item storage to use DPA array as others controls do. But if you don't have time for that now, I could try to do it myself.