context menu interface pointer cleanup
Modified: branches/lean-explorer/reactos/subsys/system/explorer/desktop/desktop.cpp
Modified: branches/lean-explorer/reactos/subsys/system/explorer/utility/shellclasses.cpp

Modified: branches/lean-explorer/reactos/subsys/system/explorer/desktop/desktop.cpp
--- branches/lean-explorer/reactos/subsys/system/explorer/desktop/desktop.cpp	2005-05-02 20:30:29 UTC (rev 14951)
+++ branches/lean-explorer/reactos/subsys/system/explorer/desktop/desktop.cpp	2005-05-03 08:00:23 UTC (rev 14952)
@@ -547,7 +547,8 @@
 
 				  hr = pcm->InvokeCommand(&cmi);
 				}
-			}
+			} else
+				_cm_ifs.reset();
 		}
 
 		pcm->Release();

Modified: branches/lean-explorer/reactos/subsys/system/explorer/utility/shellclasses.cpp
--- branches/lean-explorer/reactos/subsys/system/explorer/utility/shellclasses.cpp	2005-05-02 20:30:29 UTC (rev 14951)
+++ branches/lean-explorer/reactos/subsys/system/explorer/utility/shellclasses.cpp	2005-05-03 08:00:23 UTC (rev 14952)
@@ -505,7 +505,7 @@
 		_pctxmenu3 = (LPCONTEXTMENU3)pcm;
 	else
 #endif
-	if (pcm1->QueryInterface (IID_IContextMenu2, (void**)&pcm) == NOERROR)
+	if (pcm1->QueryInterface(IID_IContextMenu2, (void**)&pcm) == NOERROR)
 		_pctxmenu2 = (LPCONTEXTMENU2)pcm;
 
 	if (pcm) {
@@ -552,7 +552,8 @@
 
 				  hr = pcm->InvokeCommand(&cmi);
 				}
-			}
+			} else
+				cm_ifs.reset();
 		}
 
 		pcm->Release();