Bug 136973 - Lots of small fastStrDup leaks seen under TextCodec registration
Summary: Lots of small fastStrDup leaks seen under TextCodec registration
Status: RESOLVED DUPLICATE of bug 118505
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-09-19 19:26 PDT by Joseph Pecoraro
Modified: 2014-09-19 19:35 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph Pecoraro 2014-09-19 19:26:11 PDT
We are seeing a bunch of small fastStrDup leaks on the leaks bots:
<http://build.webkit.org/builders/Apple%20MountainLion%20%28Leaks%29/builds/11637/steps/layout-test/logs/stdio>

For example:

	Call stack: [thread 0x7fff782d9180]: 
        | 0x2 
        | start 
        | main DumpRenderTreeMain.mm:30 
        | DumpRenderTreeMain(int, char const**) DumpRenderTree.mm:1295 
        | dumpRenderTree(int, char const**) DumpRenderTree.mm:1164 
        | runTestingServerLoop() DumpRenderTree.mm:1073 
        | runTest(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) DumpRenderTree.mm:1853 
        | CFRunLoopRunSpecific 
        | __CFRunLoopRun 
        | __CFRunLoopDoSources0 
        | __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ 
        | MultiplexerSource::perform() 
        | RunloopBlockContext::perform() 
        | CFArrayApplyFunction 
        | __block_global_1 
        | ___withDelegateAsync_block_invoke_0 
        | ___delegate_didReceiveDataArray_block_invoke_0 
        | _NSURLConnectionDidReceiveDataArray 
        | -[NSURLConnectionInternal _withActiveConnectionAndDelegate:] 
        | -[NSURLConnectionInternal _withConnectionAndDelegate:onlyActive:] 
        | __65-[NSURLConnectionInternal _withConnectionAndDelegate:onlyActive:]_block_invoke_0 
        | -[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:] WebCoreResourceHandleAsDelegate.mm:200 
        | WebCore::ResourceLoader::didReceiveBuffer(WebCore::ResourceHandle*, WTF::PassRefPtr<WebCore::SharedBuffer>, int) ResourceLoader.cpp:506 
        | WebCore::SubresourceLoader::didReceiveBuffer(WTF::PassRefPtr<WebCore::SharedBuffer>, long long, WebCore::DataPayloadType) SubresourceLoader.cpp:258 
        | WebCore::SubresourceLoader::didReceiveDataOrBuffer(char const*, int, WTF::PassRefPtr<WebCore::SharedBuffer>, long long, WebCore::DataPayloadType) SubresourceLoader.cpp:277 
        | WebCore::CachedRawResource::addDataBuffer(WebCore::ResourceBuffer*) CachedRawResource.cpp:72 
        | WebCore::CachedRawResource::notifyClientsDataWasReceived(char const*, unsigned int) CachedRawResource.cpp:117 
        | WebCore::DocumentLoader::dataReceived(WebCore::CachedResource*, char const*, int) DocumentLoader.cpp:891 
        | WebCore::DocumentLoader::commitLoad(char const*, int) DocumentLoader.cpp:771 
        | WebFrameLoaderClient::committedLoad(WebCore::DocumentLoader*, char const*, int) WebFrameLoaderClient.mm:988 
        | -[WebDataSource(WebInternal) _receivedData:] WebDataSource.mm:252 
        | -[WebHTMLRepresentation receivedData:withDataSource:] WebHTMLRepresentation.mm:191 
        | -[WebFrame(WebInternal) _commitData:] WebFrame.mm:1002 
        | WebCore::DocumentLoader::commitData(char const*, unsigned long) DocumentLoader.cpp:846 
        | WebCore::DocumentWriter::addData(char const*, unsigned long) DocumentWriter.cpp:224 
        | WebCore::DecodedDataDocumentParser::appendBytes(WebCore::DocumentWriter&, char const*, unsigned long) DecodedDataDocumentParser.cpp:45 
        | WebCore::TextResourceDecoder::decode(char const*, unsigned long) TextResourceDecoder.cpp:603 
        | WebCore::TextResourceDecoder::checkForBOM(char const*, unsigned long) TextResourceDecoder.cpp:437 
        | WebCore::UTF32BigEndianEncoding() TextEncoding.cpp:208 
        | WebCore::TextEncoding::TextEncoding(char const*) TextEncoding.cpp:51 
        | WebCore::TextEncoding::TextEncoding(char const*) TextEncoding.cpp:48 
        | WebCore::atomicCanonicalTextEncodingName(char const*) TextEncodingRegistry.cpp:320 
        | WebCore::extendTextCodecMaps() TextEncodingRegistry.cpp:284 
        | WebCore::TextCodecICU::registerCodecs(void (*)(char const*, WTF::PassOwnPtr<WebCore::TextCodec> (*)(WebCore::TextEncoding const&, void const*), void const*)) TextCodecICU.cpp:247 
        | WTF::fastStrDup(char const*) FastMalloc.cpp:215 
        | WTF::fastMalloc(unsigned long) FastMalloc.cpp:282 
        | malloc 
        | malloc_zone_malloc
Comment 1 Alexey Proskuryakov 2014-09-19 19:35:49 PDT

*** This bug has been marked as a duplicate of bug 118505 ***