diff --git a/dlls/ole32/compositemoniker.c b/dlls/ole32/compositemoniker.c
index 15d137b6d8b..439fbca1f0b 100644
--- a/dlls/ole32/compositemoniker.c
+++ b/dlls/ole32/compositemoniker.c
@@ -618,6 +618,8 @@ CompositeMonikerImpl_Hash(IMoniker* iface,DWORD* pdwHash)
     if(FAILED(res))
         return res;
 
+    *pdwHash = 0;
+
     while(IEnumMoniker_Next(enumMoniker,1,&tempMk,NULL)==S_OK){
         res = IMoniker_Hash(tempMk, &tempHash);
         if(FAILED(res))