Bug 136972

Summary: Leak: WebNotificationPrivate ObjC leaks seen on leaks bot
Product: WebKit Reporter: Joseph Pecoraro <joepeck>
Component: WebKit Misc.Assignee: Joseph Pecoraro <joepeck>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, jonlee
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=168876
Attachments:
Description Flags
[PATCH] Proposed Fix none

Description Joseph Pecoraro 2014-09-19 19:07:02 PDT
Leaks bot it seeing WebNotificationPrivate ObjC leaks.
<http://build.webkit.org/builders/Apple%20MountainLion%20%28Leaks%29/builds/11637/steps/layout-test/logs/stdio>

Leak: 0x7fb36a28a570  size=32  zone: DefaultMallocZone_0x108dd9000   WebNotificationPrivate  ObjC  WebKitLegacy
	0x15872998 0x00000001 0x6c4989c0 0x00007fb3 	.)........Il....
	0x00000005 0x00000000 0x00000000 0x00000000 	................
	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 
        | __CFRunLoopDoTimer 
        | __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ 
        | WebCore::timerFired(__CFRunLoopTimer*, void*) SharedTimerMac.mm:125 
        | WebCore::ThreadTimers::sharedTimerFired() ThreadTimers.cpp:108 
        | WebCore::ThreadTimers::sharedTimerFiredInternal() ThreadTimers.cpp:135 
        | WebCore::Timer<WebCore::Notification>::fired() Timer.h:134 
        | std::__1::function<void ()>::operator()() const functional:1755 
        | std::__1::__function::__func<std::__1::__bind<void (WebCore::Notification::*)(WebCore::Timer<WebCore::Notification>&)&, WebCore::Notification*&, std::__1::reference_wrapper<WebCore::Timer<WebCore::Notification> > >, std::__1::allocator<std::__1::__bind<void (WebCore::Notification::*)(WebCore::Timer<WebCore::Notification>&)&, WebCore::Notification*&, std::__1::reference_wrapper<WebCore::Timer<WebCore::Notification> > > >, void ()>::operator()() functional:1370 
        | WebCore::Notification::taskTimerFired(WebCore::Timer<WebCore::Notification>&) Notification.cpp:209 
        | WebCore::Notification::show() Notification.cpp:145 
        | WebNotificationClient::show(WebCore::Notification*) WebNotificationClient.mm:90 
        | -[WebNotification(WebNotificationInternal) initWithCoreNotification:notificationID:] WebNotification.mm:70 
        | _objc_rootAllocWithZone 
        | class_createInstance 
        | calloc 
        | malloc_zone_calloc 
Leak: 0x7fb36a3319a0  size=32  zone: DefaultMallocZone_0x108dd9000   WebNotificationPrivate  ObjC  WebKitLegacy
	0x15872998 0x00000001 0x6a37a3c0 0x00007fb3 	.)........7j....
	0x00000008 0x00000000 0x00000000 0x00000000 	................
	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 
        | __CFRunLoopDoTimer 
        | __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ 
        | WebCore::timerFired(__CFRunLoopTimer*, void*) SharedTimerMac.mm:125 
        | WebCore::ThreadTimers::sharedTimerFired() ThreadTimers.cpp:108 
        | WebCore::ThreadTimers::sharedTimerFiredInternal() ThreadTimers.cpp:135 
        | WebCore::DOMTimer::fired() DOMTimer.cpp:232 
        | WebCore::ScheduledAction::execute(WebCore::ScriptExecutionContext*) ScheduledAction.cpp:78 
        | WebCore::ScheduledAction::execute(WebCore::Document*) ScheduledAction.cpp:125 
        | WebCore::ScheduledAction::executeFunctionInContext(JSC::JSGlobalObject*, JSC::JSValue, WebCore::ScriptExecutionContext*) ScheduledAction.cpp:104 
        | WebCore::JSMainThreadExecState::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&, JSC::JSValue*) JSMainThreadExecState.h:56 
        | JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&, JSC::JSValue*) CallData.cpp:44 
        | JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) CallData.cpp:39 
        | JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) Interpreter.cpp:989 
        | JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) JITCode.cpp:56 
        | vmEntryToJavaScript 
        | llint_entry 
        | 0x5037fda01034 
        | WebCore::jsNotificationPrototypeFunctionShow(JSC::ExecState*) JSNotification.cpp:584 
        | WebCore::Notification::show() Notification.cpp:145 
        | WebNotificationClient::show(WebCore::Notification*) WebNotificationClient.mm:90 
        | -[WebNotification(WebNotificationInternal) initWithCoreNotification:notificationID:] WebNotification.mm:70 
        | _objc_rootAllocWithZone 
        | class_createInstance 
        | calloc 
        | malloc_zone_calloc
Comment 1 Joseph Pecoraro 2014-09-19 19:08:46 PDT
Created attachment 238403 [details]
[PATCH] Proposed Fix
Comment 2 WebKit Commit Bot 2014-09-21 17:31:21 PDT
Comment on attachment 238403 [details]
[PATCH] Proposed Fix

Clearing flags on attachment: 238403

Committed r173802: <http://trac.webkit.org/changeset/173802>
Comment 3 WebKit Commit Bot 2014-09-21 17:31:23 PDT
All reviewed patches have been landed.  Closing bug.