rv = compMgr->UnregisterComponent(kRUProbDetectorCID, path); rv = compMgr->UnregisterComponent(kUKProbDetectorCID, path); rv = compMgr->UnregisterComponent(kRUStringProbDetectorCID, path); rv = compMgr->UnregisterComponent(kUKStringProbDetectorCID, path);
extern "C" NS_EXPORT nsresult NSUnregisterSelf(nsISupports* aServMgr, const char *path){  nsresult rv;  nsCOMPtr<nsIServiceManager> servMgr(do_QueryInterface(aServMgr, &rv));  if (NS_FAILED(rv)) return rv;  nsIComponentManager* compMgr;  rv = servMgr->GetService(kComponentManagerCID,                            nsIComponentManager::GetIID(),                            (nsISupports**)&compMgr);  if (NS_FAILED(rv)) return rv;  rv = compMgr->UnregisterComponent(kMetaCharsetCID, path);  rv = compMgr->UnregisterComponent(kXMLEncodingCID, path);  rv = compMgr->UnregisterComponent(kCharsetDetectionAdaptorCID, path);  rv = compMgr->UnregisterComponent(kJAPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kJAStringPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kKOPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kKOStringPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kZHTWPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kZHTWStringPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kZHCNPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kZHCNStringPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kZHPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kZHStringPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kCJKPSMDetectorCID, path);  rv = compMgr->UnregisterComponent(kCJKStringPSMDetectorCID, path);#ifdef INCLUDE_DBGDETECTOR  rv = compMgr->UnregisterComponent(k1stBlkDbgDetectorCID, path);  rv = compMgr->UnregisterComponent(k2ndBlkDbgDetectorCID, path);  rv = compMgr->UnregisterComponent(klastBlkDbgDetectorCID, path);#endif /* INCLUDE_DBGDETECTOR */  (void)servMgr->ReleaseService(kComponentManagerCID, compMgr);  return rv;}