hhctrl.ocx: Fix a double-click bug in the Contents tab introduced by the Index tab code.
diff --git a/dlls/hhctrl.ocx/help.c b/dlls/hhctrl.ocx/help.c
index 60614c2..e7b7a64 100644
--- a/dlls/hhctrl.ocx/help.c
+++ b/dlls/hhctrl.ocx/help.c
@@ -397,9 +397,8 @@
     return 0;
 }
 
-static LRESULT OnTopicChange(HWND hwnd, void *user_data)
+static LRESULT OnTopicChange(HHInfo *info, void *user_data)
 {
-    HHInfo *info = (HHInfo*)GetWindowLongPtrW(hwnd, GWLP_USERDATA);
     LPCWSTR chmfile = NULL, name = NULL, local = NULL;
     ContentItem *citer;
     IndexItem *iiter;
@@ -474,14 +473,17 @@
     case WM_SIZE:
         return Child_OnSize(hWnd);
     case WM_NOTIFY: {
+        HHInfo *info = (HHInfo*)GetWindowLongPtrW(hWnd, GWLP_USERDATA);
         NMHDR *nmhdr = (NMHDR*)lParam;
+
         switch(nmhdr->code) {
         case TCN_SELCHANGE:
             return OnTabChange(hWnd);
         case TVN_SELCHANGEDW:
-            return OnTopicChange(hWnd, (void*)((NMTREEVIEWW *)lParam)->itemNew.lParam);
+            return OnTopicChange(info, (void*)((NMTREEVIEWW *)lParam)->itemNew.lParam);
         case NM_DBLCLK:
-            return OnTopicChange(hWnd, (void*)((NMITEMACTIVATE *)lParam)->lParam);
+            if(info->current_tab == TAB_INDEX)
+                return OnTopicChange(info, (void*)((NMITEMACTIVATE *)lParam)->lParam);
         }
         break;
     }