Closed Bug 10555 Opened 26 years ago Closed 26 years ago

MLK: nsCharsetConverterManager

Categories

(Core :: Internationalization, defect, P3)

defect

Tracking

()

VERIFIED FIXED

People

(Reporter: bruce, Assigned: cata)

Details

nsStrings are allocated here. Never deallocated. MLK: 1596 bytes leaked in 57 blocks * This memory was allocated from: malloc [rtlib.o] __bUiLtIn_nEw [libgcc.a] __builtin_new [rtlib.o] nsCharsetConverterManager::CreateMapping() [nsCharsetConverterManager.cpp:284] nsCharsetConverterManager::nsCharsetConverterManager() [nsCharsetConverterManager.cpp:190] nsCharsetConverterManager::GetInstance() [nsCharsetConverterManager.cpp:204] nsManagerFactory::CreateInstance(nsISupports*,const nsID&,void**) [nsCharsetConverterManager.cpp:553] nsComponentManagerImpl::CreateInstance(const nsID&,nsISupports*,const nsID&,void**) [nsComponentManager.cpp:1247] nsComponentManager::CreateInstance(const nsID&,nsISupports*,const nsID&,void**) [nsRepository.cpp:67] nsServiceManagerImpl::GetService(const nsID&,const nsID&,nsISupports**,nsIShutdownListener*) [nsServiceManager.cpp:243] nsServiceManager::GetService(const nsID&,const nsID&,nsISupports**,nsIShutdownListener*) [nsServiceManager.cpp:445] NS_NewB2UConverter(nsIUnicodeDecoder**,nsISupports*,nsString*) [nsUnicharInputStream.cpp:147] NS_NewConverterStream(nsIUnicharInputStream**,nsISupports*,nsIInputStream*,int,n sString*) [nsUnicharInputStream.cpp:306] nsPersistentProperties::Load(nsIInputStream*) [nsProperties.cpp:236] nsURLProperties::nsURLProperties(nsString&) [nsURLProperties.cpp:72] nsCharsetAlias2::nsCharsetAlias2() [nsCharsetAliasImp.cpp:66] nsCharsetAliasFactory::CreateInstance(nsISupports*,const nsID&,void**) [nsCharsetAliasImp.cpp:168] nsComponentManagerImpl::CreateInstance(const nsID&,nsISupports*,const nsID&,void**) [nsComponentManager.cpp:1247] nsComponentManager::CreateInstance(const nsID&,nsISupports*,const nsID&,void**) [nsRepository.cpp:67] nsServiceManagerImpl::GetService(const nsID&,const nsID&,nsISupports**,nsIShutdownListener*) [nsServiceManager.cpp:243] nsServiceManager::GetService(const nsID&,const nsID&,nsISupports**,nsIShutdownListener*) [nsServiceManager.cpp:445] nsScanner::SetDocumentCharset(const nsString&,nsCharsetSource) [nsScanner.cpp:128] nsScanner::nsScanner(nsString&,int,const nsString&,nsCharsetSource) [nsScanner.cpp:89] nsParser::Parse(nsIURI*,nsIStreamObserver*,int,void*,eParseMode) [nsParser.cpp:665] RDFXMLDataSourceImpl::Refresh(int) [nsRDFXMLDataSource.cpp:910] nsChromeRegistry::InitRegistry() [nsChromeRegistry.cpp:481] nsChromeProtocolHandler::NewChannel(const char*,nsIURI*,nsIEventSinkGetter*,nsIEventQueue*,nsIChannel**) [nsChromeProtocolHandler.cpp:153] nsIOService::NewChannelFromURI(const char*,nsIURI*,nsIEventSinkGetter*,nsIChannel**) [nsIOService.cpp:225] NS_OpenURI(nsIChannel**,nsIURI*) [nsNeckoUtil.cpp:62] nsDocumentBindInfo::Bind(nsIURI*,nsIStreamListener*) [nsDocLoader.cpp:1655] * Block of 28 bytes (57 times); last block at 0x382420
Assignee: ftang → cata
reassign this to cata since its his code here.
Status: NEW → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
cata, I saw that you checked in code to just delete them after use. Could the code instead just use an nsString and not an nsString* and then call GetCharsetName() with &str to save on the allocation/deallocations? Or is that evil?
done. the string is now assign-ed the second value. For a future M, we'll get rid of that GetCharsetName().
QA Contact: teruko → cata
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.