diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h index 2e4f5d2b491..8fe25d62688 100644 --- a/dlls/msi/msipriv.h +++ b/dlls/msi/msipriv.h @@ -109,7 +109,7 @@ typedef struct tagMSIRECORD MSIFIELD fields[1]; /* nb. array size is count+1 */ } MSIRECORD; -typedef void *MSIITERHANDLE; +typedef const struct tagMSICOLUMNHASHENTRY *MSIITERHANDLE; typedef struct tagMSIVIEWOPS { diff --git a/dlls/msi/table.c b/dlls/msi/table.c index 2282f08c97f..c66048ab6c3 100644 --- a/dlls/msi/table.c +++ b/dlls/msi/table.c @@ -1587,12 +1587,12 @@ static UINT TABLE_find_matching_rows( struct tagMSIVIEW *view, UINT col, if( !*handle ) entry = tv->columns[col-1].hash_table[val % MSITABLE_HASH_TABLE_SIZE]; else - entry = ((const MSICOLUMNHASHENTRY *)*handle)->next; + entry = (*handle)->next; while (entry && entry->value != val) entry = entry->next; - *handle = (MSIITERHANDLE)entry; + *handle = entry; if (!entry) return ERROR_NO_MORE_ITEMS;