Error message: Owner supplied to -[NSTrackingArea initWithRect:options:owner:userInfo:] referenced a deallocating object. Tracking area behavior is undefined. Break on NSTrackingAreaDeallocatingOwnerError to debug |
||||||
Issue descriptionerikchen@erikchen-macpro3 ~/projects/chromium/src (test64)$ ./out/gn/Chromium.app/Contents/MacOS/Chromium --user-data-dir=/tmp/a9812 https://www.wikipedia.org/ 2018-02-23 16:14:58.382 Chromium[8750:135592] *** Owner supplied to -[NSTrackingArea initWithRect:options:owner:userInfo:] referenced a deallocating object. Tracking area behavior is undefined. Break on NSTrackingAreaDeallocatingOwnerError to debug. AVDCreateGPUAccelerator: Error loading GPU renderer ^Cerikchen@erikchen-macpro3 ~/projects/chromium/src (test64)$ lldb ./out/gn/Chromium.app/Contents/MacOS/Chromium (lldb) target create "./out/gn/Chromium.app/Contents/MacOS/Chromium" b Current executable set to './out/gn/Chromium.app/Contents/MacOS/Chromium' (x86_64). (lldb) b NSTrackingAreaDeallocatingOwnerError Breakpoint 1: where = AppKit`NSTrackingAreaDeallocatingOwnerError, address = 0x0000000000999a42 (lldb) process launch -- --user-data-dir=/tmp/a9812 https://www.wikipedia.org/ Process 8809 launched: './out/gn/Chromium.app/Contents/MacOS/Chromium' (x86_64) AVDCreateGPUAccelerator: Error loading GPU renderer Process 8809 stopped * thread #1, name = 'CrBrowserMain', queue = 'com.apple.main-thread', stop reason = breakpoint 1.1 frame #0: 0x00007fff2deb4a42 AppKit`NSTrackingAreaDeallocatingOwnerError AppKit`NSTrackingAreaDeallocatingOwnerError: -> 0x7fff2deb4a42 <+0>: pushq %rbp 0x7fff2deb4a43 <+1>: movq %rsp, %rbp 0x7fff2deb4a46 <+4>: popq %rbp 0x7fff2deb4a47 <+5>: retq Target 0: (Chromium) stopped. (lldb) bt * thread #1, name = 'CrBrowserMain', queue = 'com.apple.main-thread', stop reason = breakpoint 1.1 * frame #0: 0x00007fff2deb4a42 AppKit`NSTrackingAreaDeallocatingOwnerError frame #1: 0x00007fff2d54e992 AppKit`-[NSTrackingArea initWithRect:options:owner:userInfo:] + 155 frame #2: 0x00007fff2d5ceacf AppKit`-[NSTrackingArea initWithRect:options:pressureConfigurations:owner:userInfo:] + 145 frame #3: 0x00007fff2dbeef5c AppKit`-[NSView(NSPressureConfiguration) setPressureConfiguration:] + 204 frame #4: 0x00007fff2ff8788f CoreFoundation`-[NSSet makeObjectsPerformSelector:] + 271 frame #5: 0x00007fff2d52cc61 AppKit`-[NSIBObjectData nibInstantiateWithOwner:options:topLevelObjects:] + 1594 frame #6: 0x00007fff2d62813a AppKit`-[NSNib _instantiateNibWithExternalNameTable:options:] + 679 frame #7: 0x00007fff2d627d96 AppKit`-[NSNib _instantiateWithOwner:options:topLevelObjects:] + 136 frame #8: 0x00007fff2d62706c AppKit`-[NSViewController loadView] + 343 frame #9: 0x00007fff2d59ef32 AppKit`-[NSViewController _loadViewIfRequired] + 75 frame #10: 0x00007fff2d59ee9d AppKit`-[NSViewController view] + 30 frame #11: 0x0000000106c926b8 Chromium Framework`::-[ToolbarController toolbarView]() at toolbar_controller.mm:575 [opt] frame #12: 0x0000000106bc15fe Chromium Framework`::-[BrowserWindowController initWithBrowser:takeOwnership:]() at browser_window_controller.mm:365 [opt] frame #13: 0x0000000106bcb5f2 Chromium Framework`::CreateBrowserWindow() [inlined] CreateBrowserWindowCocoa at browser_window_factory_cocoa.mm:17 [opt] frame #14: 0x0000000106bcb5ca Chromium Framework`::CreateBrowserWindow() at browser_window_factory_cocoa.mm:26 [opt] frame #15: 0x0000000106a5f231 Chromium Framework`::Browser() [inlined] CreateBrowserWindow at browser.cc:263 [opt] frame #16: 0x0000000106a5f225 Chromium Framework`::Browser() at browser.cc:452 [opt] frame #17: 0x0000000106aa25a1 Chromium Framework`::OpenTabsInBrowser() at startup_browser_creator_impl.cc:418 [opt] frame #18: 0x0000000106aa3325 Chromium Framework`::RestoreOrCreateBrowser() at startup_browser_creator_impl.cc:754 [opt] frame #19: 0x0000000106aa21e9 Chromium Framework`::DetermineURLsAndLaunch() at startup_browser_creator_impl.cc:639 [opt] frame #20: 0x0000000106aa1aa4 Chromium Framework`::Launch() at startup_browser_creator_impl.cc:348 [opt] frame #21: 0x0000000106a9ee00 Chromium Framework`::LaunchBrowser() at startup_browser_creator.cc:354 [opt] frame #22: 0x0000000106aa07aa Chromium Framework`::ProcessLastOpenedProfiles() at startup_browser_creator.cc:831 [opt] frame #23: 0x0000000106aa046f Chromium Framework`::LaunchBrowserForLastProfiles() at startup_browser_creator.cc:761 [opt] frame #24: 0x0000000106a9e8dc Chromium Framework`::ProcessCmdLineImpl() at startup_browser_creator.cc:723 [opt] frame #25: 0x0000000106a9e337 Chromium Framework`::Start() at startup_browser_creator.cc:309 [opt] frame #26: 0x0000000103ae7936 Chromium Framework`::PreMainMessageLoopRunImpl() at chrome_browser_main.cc:2083 [opt] frame #27: 0x0000000103ae685e Chromium Framework`::PreMainMessageLoopRun() at chrome_browser_main.cc:1463 [opt] frame #28: 0x00000001024d4ab3 Chromium Framework`::PreMainMessageLoopRun() at browser_main_loop.cc:1087 [opt] frame #29: 0x00000001028bdb17 Chromium Framework`::RunAllTasksNow() [inlined] Run at callback.h:124 [opt] frame #30: 0x00000001028bdb10 Chromium Framework`::RunAllTasksNow() at startup_task_runner.cc:45 [opt] frame #31: 0x00000001024d3415 Chromium Framework`::CreateStartupTasks() at browser_main_loop.cc:970 [opt] frame #32: 0x00000001024d70a0 Chromium Framework`::Initialize() at browser_main_runner.cc:139 [opt] frame #33: 0x00000001024d1374 Chromium Framework`::BrowserMain() at browser_main.cc:42 [opt] frame #34: 0x0000000103a91979 Chromium Framework`::Run() at content_main_runner.cc:703 [opt] frame #35: 0x00000001055bb254 Chromium Framework`::Main() at main.cc:453 [opt] frame #36: 0x0000000103a90e54 Chromium Framework`::ContentMain() at content_main.cc:19 [opt] frame #37: 0x0000000101803653 Chromium Framework`::ChromeMain() at chrome_main.cc:101 [opt] frame #38: 0x0000000100000de4 Chromium`main at chrome_exe_main_mac.cc:165 [opt] frame #39: 0x00007fff57932115 libdyld.dylib`start + 1 frame #40: 0x00007fff57932115 libdyld.dylib`start + 1
,
Feb 28 2018
There's an NSGetBoolAppConfig option called "NSTrackingAreaIgnoreDeallocatingOwners", the default value of which is computed by NSTrackingAreaIgnoreDeallocatingOwnersDefaultValueFunction(). That is a simple CFExecutableLinkedOnOrAfter() check for 10.13. If on-or-after 10.13, then the value is "false" (meaning the exception is raised), but if lower than 10.13 the default is "true".
The issue seems to be that -[NSView(NSPressureConfiguration) setPressureConfiguration:] constructs a tracking area with a nil owner, and this NSTrackingAreaDeallocatingOwnerError has a problem with it.
I was able to verify this in a simple test app that had a custom view implementing:
- (void)awakeFromNib {
NSPressureConfiguration* c = [[[NSPressureConfiguration alloc] initWithPressureBehavior:NSPressureBehaviorPrimaryClick] autorelease];
[self setPressureConfiguration:c];
}
When built on the 10.12 SDK, you get the "*** Owner supplied to " blah error. But when building against 10.13, there is no error.
,
Mar 12 2018
[mac triage] available? I guess this will just be fixed by Issue 780980
,
Mar 21 2018
Issue 812405 has been merged into this issue.
,
Aug 1
,
Jan 11
Available, but no owner or component? Please find a component, as no one will ever find this without one.
,
Jan 14
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by rsesek@chromium.org
, Feb 27 2018