zhangqd / chromiumembedded

Automatically exported from code.google.com/p/chromiumembedded
0 stars 1 forks source link

CEF3: cefclient crashed on Mac OS X 10.6, when building CEF with the 10.7 SDK #1026

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Build CEF3 with 10.7 SDK
2. Run cefclient built as above on a 10.6 Mac OS X

What is the expected output? What do you see instead?
cefclient should not crash.

What version of the product are you using? On what operating system?
All branches crash at the moment

Please provide any additional information below.
The stack trace for the crash is provided below.
This is a Chromium issue which has been fixed 
https://code.google.com/p/chromium/issues/detail?id=260595 
The fixes in Chromium should make it back to CEF with a future integration of 
trunk. This bug is mostly for adding the same fix to CEF branches, where the 
Chromium fix is not likely to be ported.

For additional information, also see the forum post where this issue was 
initially reported:
http://magpcss.org/ceforum/viewtopic.php?f=6&t=10702&p=17661#p17661

Stack trace.

Process:         cefclient [2852]
Exception Type:  EXC_BAD_ACCESS (SIGBUS)
Exception Codes: KERN_PROTECTION_FAILURE at 0x0000000000000000
Crashed Thread:  0  CrBrowserMain  Dispatch queue: com.apple.main-thread

Thread 0 Crashed:  CrBrowserMain  Dispatch queue: com.apple.main-thread
0   libcef.dylib                     0x781543ad -[RenderWidgetHostViewCocoa 
viewWillMoveToWindow:] + 253 (render_widget_host_view_mac.mm:2115)
1   com.apple.AppKit                 0x96edee66 -[NSView _setWindow:] + 2131
2   com.apple.AppKit                 0x96ee7aca -[NSView addSubview:] + 411
3   com.apple.AppKit                 0x97070ff6 -[NSView 
addSubview:positioned:relativeTo:] + 708
4   libcef.dylib                     0x781abaa9 
content::WebContentsViewMac::CreateViewForWidget(content::RenderWidgetHost*) + 
409 (scoped_nsobject.h:67)
5   libcef.dylib                     0x781a7c3e 
content::WebContentsImpl::CreateRenderViewForRenderManager(content::RenderViewHo
st*, int) + 62 (web_contents_impl.cc:3377)
6   libcef.dylib                     0x781a7d42 
_ZThn48_N7content15WebContentsImpl32CreateRenderViewForRenderManagerEPNS_14Rende
rViewHostEi + 34 (web_contents_impl.cc:3405)
7   libcef.dylib                     0x78195ade 
content::RenderViewHostManager::Navigate(content::NavigationEntryImpl const&) + 
222 (render_view_host_manager.cc:689)
8   libcef.dylib                     0x781a1575 
content::WebContentsImpl::NavigateToEntry(content::NavigationEntryImpl const&, 
content::NavigationController::ReloadType) + 85 (web_contents_impl.cc:1659)
9   libcef.dylib                     0x781a1510 
content::WebContentsImpl::NavigateToPendingEntry(content::NavigationController::
ReloadType) + 48 (web_contents_impl.cc:1625)
10  libcef.dylib                     0x7818dac2 
content::NavigationControllerImpl::NavigateToPendingEntry(content::NavigationCon
troller::ReloadType) + 338 (navigation_controller_impl.cc:1666)
11  libcef.dylib                     0x7818df6e 
content::NavigationControllerImpl::LoadEntry(content::NavigationEntryImpl*) + 
542 (navigation_controller_impl.cc:401)
12  libcef.dylib                     0x7818f595 
content::NavigationControllerImpl::LoadURLWithParams(content::NavigationControll
er::LoadURLParams const&) + 1077 (navigation_controller_impl.cc:826)
13  libcef.dylib                     0x7818f14b 
content::NavigationControllerImpl::LoadURL(GURL const&, content::Referrer 
const&, content::PageTransition, std::string const&) + 107 
(navigation_controller_impl.cc:745)
14  libcef.dylib                     0x78efa5c1 
CefBrowserHostImpl::LoadURL(long long, std::string const&) + 401 
(basic_string.h:279)
15  libcef.dylib                     0x78ef9e3e 
CefBrowserHost::CreateBrowserSync(CefWindowInfo const&, CefRefPtr<CefClient>, 
CefStringBase<CefStringTraitsUTF16> const&, 
CefStructBase<CefBrowserSettingsTraits> const&) + 862 (basic_string.h:279)
16  libcef.dylib                     0x78ef9a1f (anonymous 
namespace)::CreateBrowserWithHelper((anonymous 
namespace)::CreateBrowserHelper*) + 79 (browser_host_impl.cc:75)
17  libcef.dylib                     0x78f06542 base::internal::Invoker<1, 
base::internal::BindState<base::internal::RunnableAdapter<void (*)((anonymous 
namespace)::CreateBrowserHelper*)>, void ()((anonymous 
namespace)::CreateBrowserHelper*), void ()((anonymous 
namespace)::CreateBrowserHelper*)>, void ()((anonymous 
namespace)::CreateBrowserHelper*)>::Run(base::internal::BindStateBase*) + 18 
(bind_internal.h:1173)
18  libcef.dylib                     0x779e4678 
MessageLoop::RunTask(base::PendingTask const&) + 1000 (stl_vector.h:400)
19  libcef.dylib                     0x779e4a7a MessageLoop::DoWork() + 522 
(message_loop.cc:674)
20  libcef.dylib                     0x779b0445 
base::MessagePumpCFRunLoopBase::RunWork() + 53 (message_pump_mac.mm:252)
21  com.apple.CoreFoundation         0x91e5942b __CFRunLoopDoSources0 + 1563
22  com.apple.CoreFoundation         0x91e56eef __CFRunLoopRun + 1071
23  com.apple.CoreFoundation         0x91e563c4 CFRunLoopRunSpecific + 452
24  com.apple.CoreFoundation         0x91e561f1 CFRunLoopRunInMode + 97
25  com.apple.HIToolbox              0x90a23d60 RunCurrentEventLoopInMode + 392
26  com.apple.HIToolbox              0x90a23b17 ReceiveNextEventCommon + 354
27  com.apple.HIToolbox              0x90a2399c 
BlockUntilNextEventMatchingListInMode + 81
28  com.apple.AppKit                 0x96f0b595 _DPSNextEvent + 847
29  com.apple.AppKit                 0x96f0add6 -[NSApplication 
nextEventMatchingMask:untilDate:inMode:dequeue:] + 156
30  com.apple.AppKit                 0x96ecd1f3 -[NSApplication run] + 821
31  libcef.dylib                     0x779b0867 
base::MessagePumpNSApplication::DoRun(base::MessagePump::Delegate*) + 375 
(message_pump_mac.mm:593)
32  libcef.dylib                     0x779b033c 
base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*) + 92 
(message_pump_mac.mm:179)
33  libcef.dylib                     0x779e4008 MessageLoop::RunInternal() + 
280 (message_loop.cc:434)
34  libcef.dylib                     0x779fca2e base::RunLoop::Run() + 30 
(run_loop.cc:84)
35  libcef.dylib                     0x779e367a MessageLoop::Run() + 26 
(message_loop.cc:314)
36  libcef.dylib                     0x78f1986f CefRunMessageLoop() + 207 
(context.cc:144)
37  org.cef.cefclient                0x771f57e7 0x771dc000 + 104423
38  org.cef.cefclient                0x771dd2a5 0x771dc000 + 4773

Original issue reported on code.google.com by ol...@adobe.com on 22 Jul 2013 at 10:19

GoogleCodeExporter commented 9 years ago
I am attaching patches porting the Chromium fix as patches to Chromium code, 
for CEF branches 1453 and 1547

Original comment by ol...@adobe.com on 22 Jul 2013 at 10:20

Attachments:

GoogleCodeExporter commented 9 years ago
Issue 1025 has been merged into this issue.

Original comment by magreenb...@gmail.com on 22 Jul 2013 at 4:11

GoogleCodeExporter commented 9 years ago
Thanks, added in 1547 branch revision 1326 and 1453 branch revision 1327 with 
minor naming changes.

Original comment by magreenb...@gmail.com on 22 Jul 2013 at 5:06

GoogleCodeExporter commented 9 years ago
@olaru: I have some users reporting this crash on 10.7.2. I think we need to 
update these patches to check for the OS-X patch version. Were you able to 
determine a good way to do this? Thanks.

Original comment by magreenb...@gmail.com on 25 Jul 2013 at 6:08

GoogleCodeExporter commented 9 years ago
I have described a possible fix on the Chromium issue:
https://code.google.com/p/chromium/issues/detail?id=260595

I haven't tested it on 10.7.2 in any way yet. I think I need to set up a 10.7.2 
somewhere, because I don't have one available.

Original comment by ol...@adobe.com on 25 Jul 2013 at 9:52

GoogleCodeExporter commented 9 years ago
The code for fixing 10.7-10.7.2 is in review with Chromium and should make it 
in trunk soon. I will create patches for the CEF branches after I address the 
comments.

Original comment by ol...@adobe.com on 29 Jul 2013 at 5:54

GoogleCodeExporter commented 9 years ago
Adding the fixes for 10.7 crashes on CEF branches. The patches contain the code 
as resulting from this review:
https://codereview.chromium.org/21088004/

There are patches that apply directly on a CEF checkout - patches to the 
Chromium patches. These end in patchDiff.

I am also attaching the Chromium patches, for simpler reviewing, which can be 
copied on top of the files in patch/patches.

Original comment by ol...@adobe.com on 30 Jul 2013 at 1:34

Attachments:

GoogleCodeExporter commented 9 years ago
@comment#7: Thanks, added in 1453 branch revision 1351 and 1547 branch revision 
1352 with minor changes.

Original comment by magreenb...@gmail.com on 30 Jul 2013 at 3:49

GoogleCodeExporter commented 9 years ago
The fix has been submitted in Chromium trunk r 212060.

Original comment by ol...@adobe.com on 1 Aug 2013 at 7:35