Piotr Caban : wininet: Correctly set next hash table offset.

Alexandre Julliard julliard at winehq.org
Tue Apr 3 12:17:40 CDT 2012


Module: wine
Branch: master
Commit: 39bc1faa8fb1ad891572b60a0714c34214e02d5c
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=39bc1faa8fb1ad891572b60a0714c34214e02d5c

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Tue Apr  3 16:45:07 2012 +0200

wininet: Correctly set next hash table offset.

---

 dlls/wininet/urlcache.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/dlls/wininet/urlcache.c b/dlls/wininet/urlcache.c
index 762a09d..9e1f779 100644
--- a/dlls/wininet/urlcache.c
+++ b/dlls/wininet/urlcache.c
@@ -1323,7 +1323,7 @@ static DWORD URLCache_AddEntryToHash(LPURLCACHE_HEADER pHeader, LPCSTR lpszUrl,
 
     DWORD key = URLCache_HashKey(lpszUrl);
     DWORD offset = (key & (HASHTABLE_NUM_ENTRIES-1)) * HASHTABLE_BLOCKSIZE;
-    HASH_CACHEFILE_ENTRY * pHashEntry;
+    HASH_CACHEFILE_ENTRY * pHashEntry, *pHashPrev = NULL;
     DWORD dwHashTableNumber = 0;
     DWORD error;
 
@@ -1334,6 +1334,8 @@ static DWORD URLCache_AddEntryToHash(LPURLCACHE_HEADER pHeader, LPCSTR lpszUrl,
          pHashEntry = URLCache_HashEntryFromOffset(pHeader, pHashEntry->dwAddressNext))
     {
         int i;
+        pHashPrev = pHashEntry;
+
         if (pHashEntry->dwHashTableNumber != dwHashTableNumber++)
         {
             ERR("not right hash table number (%d) expected %d\n", pHashEntry->dwHashTableNumber, dwHashTableNumber);
@@ -1357,7 +1359,7 @@ static DWORD URLCache_AddEntryToHash(LPURLCACHE_HEADER pHeader, LPCSTR lpszUrl,
             }
         }
     }
-    error = URLCache_CreateHashTable(pHeader, pHashEntry, &pHashEntry);
+    error = URLCache_CreateHashTable(pHeader, pHashPrev, &pHashEntry);
     if (error != ERROR_SUCCESS)
         return error;
 




More information about the wine-cvs mailing list