Don't re-add the dependants
authorGed Murphy <gedmurphy@reactos.org>
Mon, 21 Dec 2009 16:17:18 +0000 (16:17 +0000)
committerGed Murphy <gedmurphy@reactos.org>
Mon, 21 Dec 2009 16:17:18 +0000 (16:17 +0000)
svn path=/trunk/; revision=44682

reactos/base/applications/mscutils/servman/propsheet_depends.c

index 3bfc6fd..d4f7759 100644 (file)
@@ -223,11 +223,21 @@ DependenciesPageProc(HWND hwndDlg,
                     {
                         if (lpnmtv->hdr.idFrom == IDC_DEPEND_TREE1)
                         {
-                            TV1_AddDependantsToTree(pDlgInfo, lpnmtv->itemNew.hItem, (LPTSTR)lpnmtv->itemNew.lParam);
+                            /* Has this node been expanded before */
+                            if (!TreeView_GetChild(pDlgInfo->hDependsTreeView1, lpnmtv->itemNew.hItem))
+                            {
+                                /* It's not, add the children */
+                                TV1_AddDependantsToTree(pDlgInfo, lpnmtv->itemNew.hItem, (LPTSTR)lpnmtv->itemNew.lParam);
+                            }
                         }
                         else if (lpnmtv->hdr.idFrom == IDC_DEPEND_TREE2)
                         {
-                            TV2_AddDependantsToTree(pDlgInfo, lpnmtv->itemNew.hItem, (LPTSTR)lpnmtv->itemNew.lParam);
+                            /* Has this node been expanded before */
+                            if (!TreeView_GetChild(pDlgInfo->hDependsTreeView1, lpnmtv->itemNew.hItem))
+                            {
+                                /* It's not, add the children */
+                                TV2_AddDependantsToTree(pDlgInfo, lpnmtv->itemNew.hItem, (LPTSTR)lpnmtv->itemNew.lParam);
+                            }
                         }
                     }
                     break;