[RESOLVED] Backtrace when using PepperFlash on CEF 56

Having problems with building or using CEF's C/C++ APIs? This forum is here to help. Please do not post bug reports or feature requests here.

[RESOLVED] Backtrace when using PepperFlash on CEF 56

Postby SeanDer » Sun Feb 12, 2017 2:08 am

Hey!

I have a fresh non-debug x64 build of 2924, and am using Flash PPAPI version 24.0.0.194
When accessing any site that uses Flash I get the following segfault, if a site doesn't use flash I get no segfault and when I unload flash I don't get the segfault on flash sites. I am loading flash by setting --ppapi-flash-path and --ppapi-flash-version in OnBeforeCommandLineProcessing

Any ideas on how I can debug this, anyone else seen this? I am going to try out 2987 and see if I have the same issue, I haven't had any luck Googling around for similar bugs.

Code: Select all
#0  IsReady () at ../../chrome/browser/supervised_user/supervised_user_settings_service.cc:114
#1  Subscribe () at ../../chrome/browser/supervised_user/supervised_user_settings_service.cc:94
#2  0x00007f38df28598c in SupervisedProvider () at ../../chrome/browser/content_settings/content_settings_supervised_provider.cc:46
#3  0x00007f38df0b0110 in BuildServiceInstanceFor () at ../../chrome/browser/content_settings/host_content_settings_map_factory.cc:104
#4  0x00007f38dff3715a in RefcountedBrowserContextKeyedServiceFactory::BuildServiceInstanceFor(base::SupportsUserData*) const () at ../../components/keyed_service/content/refcounted_browser_context_keyed_service_factory.cc:88
#5  0x00007f38df7eeb6e in GetServiceForContext () at ../../components/keyed_service/core/refcounted_keyed_service_factory.cc:82
#6  0x00007f38dff3711c in RefcountedBrowserContextKeyedServiceFactory::GetServiceForBrowserContext(content::BrowserContext*, bool) () at ../../components/keyed_service/content/refcounted_browser_context_keyed_service_factory.cc:46
#7  0x00007f38df0afe4f in GetForProfile () at ../../chrome/browser/content_settings/host_content_settings_map_factory.cc:53
#8  0x00007f38df0afda1 in BuildServiceInstanceFor () at ../../chrome/browser/content_settings/cookie_settings_factory.cc:68
#9  0x00007f38dff3715a in RefcountedBrowserContextKeyedServiceFactory::BuildServiceInstanceFor(base::SupportsUserData*) const () at ../../components/keyed_service/content/refcounted_browser_context_keyed_service_factory.cc:88
#10 0x00007f38df7eeb6e in GetServiceForContext () at ../../components/keyed_service/core/refcounted_keyed_service_factory.cc:82
#11 0x00007f38dff3711c in RefcountedBrowserContextKeyedServiceFactory::GetServiceForBrowserContext(content::BrowserContext*, bool) () at ../../components/keyed_service/content/refcounted_browser_context_keyed_service_factory.cc:46
#12 0x00007f38df0afb92 in GetForProfile () at ../../chrome/browser/content_settings/cookie_settings_factory.cc:27
#13 0x00007f38df20acc6 in GetCookieSettings () at ../../chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc:49
#14 0x00007f38ddd3f99d in Invoke<int const&> () at ../../base/bind_internal.h:164
#15 MakeItSo<content::PepperFileIOHost::UIThreadStuff (* const&)(int), int const&> () at ../../base/bind_internal.h:285
#16 RunImpl<content::PepperFileIOHost::UIThreadStuff (* const&)(int), std::tuple<int> const&, 0> () at ../../base/bind_internal.h:361
#17 Run () at ../../base/bind_internal.h:339
#18 0x00007f38df20b0bf in Run () at ../../base/callback.h:64
#19 ReturnAsParamAdapter<scoped_refptr<content_settings::CookieSettings> > () at ../../base/task_runner_util.h:22
#20 0x00007f38de1574b1 in Run () at ../../base/callback.h:64
#21 RunTaskAndPostReply () at ../../base/threading/post_task_and_reply_impl.cc:46
#22 0x00007f38de108528 in Run () at ../../base/callback.h:47
#23 RunTask () at ../../base/debug/task_annotator.cc:52
#24 0x00007f38de122c1c in RunTask () at ../../base/message_loop/message_loop.cc:410
#25 0x00007f38de122eb8 in DeferOrRunPendingTask () at ../../base/message_loop/message_loop.cc:419
#26 0x00007f38de12324b in DoWork () at ../../base/message_loop/message_loop.cc:512
#27 0x00007f38de1244aa in HandleDispatch () at ../../base/message_loop/message_pump_glib.cc:267
#28 WorkSourceDispatch () at ../../base/message_loop/message_pump_glib.cc:109
#29 0x00007f38e36ff1a7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007f38e36ff400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007f38e36ff4ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f38de124396 in base::MessagePumpGlib::Run(base::MessagePump::Delegate*) () at ../../base/message_loop/message_pump_glib.cc:309
#33 0x00007f38de13b6f0 in Run () at ../../base/run_loop.cc:35
#34 0x00007f38de04ddda in CefBrowserMessageLoop::RunMessageLoop() () at ../../cef/libcef/browser/browser_message_loop.cc:127
#35 0x0000000000412f4a in main ()
Last edited by SeanDer on Mon Feb 13, 2017 5:40 pm, edited 1 time in total.
SeanDer
Newbie
 
Posts: 7
Joined: Mon Jan 30, 2017 2:06 pm

Re: Backtrace in profile code when using PepperFlash on CEF

Postby amaitland » Sun Feb 12, 2017 7:10 pm

What OS are you using? Does the problem reproduce using cefclient downloaded from http://opensource.spotify.com/cefbuilds/index.html
Maintainer of the CefSharp project.
amaitland
Virtuoso
 
Posts: 1292
Joined: Wed Jan 14, 2015 2:35 am

Re: Backtrace in profile code when using PepperFlash on CEF

Postby SeanDer » Mon Feb 13, 2017 2:40 am

Hey amaitland, thanks for the response!

I am using Debian testing, I was able to get the same exact trace using
Code: Select all
cef_binary_3.2924.1566.ga6a3da2_linux64


The code I added to load Flash was (with the proper header) to CEFSimple is
Code: Select all
void SimpleApp::OnBeforeCommandLineProcessing(
    const CefString &process_type, CefRefPtr<CefCommandLine> command_line) {
  command_line->AppendSwitchWithValue("ppapi-flash-version", "24.0.0.194");
  command_line->AppendSwitchWithValue("ppapi-flash-path", "PATH_TO/libpepflashplayer.so");
}


and then just to make sure there isn't any difference here is the bt
Code: Select all
#0  0x00007fb2eb07a033 in IsReady () at ../../chrome/browser/supervised_user/supervised_user_settings_service.cc:114
#1  0x00007fb2eb07a033 in Subscribe() () at ../../chrome/browser/supervised_user/supervised_user_settings_service.cc:94
#2  0x00007fb2eb067ccf in SupervisedProvider() () at ../../chrome/browser/content_settings/content_settings_supervised_provider.cc:46
#3  0x00007fb2eae814c0 in BuildServiceInstanceFor() () at ../../chrome/browser/content_settings/host_content_settings_map_factory.cc:104
#4  0x00007fb2ebd5454a in warning: (Internal error: pc 0x7fb2ebd54549 in read in psymtab, but not in symtab.)
#5  0x00007fb2eb5e42ba in GetServiceForContext() () at ../../components/keyed_service/core/refcounted_keyed_service_factory.cc:82
#6  0x00007fb2ebd5450c in warning: (Internal error: pc 0x7fb2ebd5450b in read in psymtab, but not in symtab.)
#7  0x00007fb2eae811ff in GetForProfile() () at ../../chrome/browser/content_settings/host_content_settings_map_factory.cc:53
#8  0x00007fb2eae8116a in BuildServiceInstanceFor() () at ../../chrome/browser/content_settings/cookie_settings_factory.cc:68
#9  0x00007fb2ebd5454a in warning: (Internal error: pc 0x7fb2ebd54549 in read in psymtab, but not in symtab.)
#10 0x00007fb2eb5e42ba in GetServiceForContext() () at ../../components/keyed_service/core/refcounted_keyed_service_factory.cc:82
#11 0x00007fb2ebd5450c in warning: (Internal error: pc 0x7fb2ebd5450b in read in psymtab, but not in symtab.)
#12 0x00007fb2eae80fa2 in GetForProfile() () at ../../chrome/browser/content_settings/cookie_settings_factory.cc:27
#13 0x00007fb2eafe78f6 in GetCookieSettings() () at ../../chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc:49
#14 0x00007fb2e9c4901d in Invoke<int const&> () at ../../base/bind_internal.h:164
#15 0x00007fb2e9c4901d in MakeItSo<content::PepperFileIOHost::UIThreadStuff (* const&)(int), int const&> () at ../../base/bind_internal.h:285
#16 0x00007fb2e9c4901d in RunImpl<content::PepperFileIOHost::UIThreadStuff (* const&)(int), std::tuple<int> const&, 0> () at ../../base/bind_internal.h:361
#17 0x00007fb2e9c4901d in Run() () at ../../base/bind_internal.h:339
#18 0x00007fb2eafe7cef in Run () at ../../base/callback.h:64
#19 0x00007fb2eafe7cef in ReturnAsParamAdapter<scoped_refptr<content_settings::CookieSettings> >() () at ../../base/task_runner_util.h:22
#20 0x00007fb2ea020961 in Run () at ../../base/callback.h:64
#21 0x00007fb2ea020961 in RunTaskAndPostReply() () at ../../base/threading/post_task_and_reply_impl.cc:46
#22 0x00007fb2e9fcfd2e in Run () at ../../base/callback.h:47
#23 0x00007fb2e9fcfd2e in RunTask() () at ../../base/debug/task_annotator.cc:52
#24 0x00007fb2e9fea3dc in RunTask() () at ../../base/message_loop/message_loop.cc:410
#25 0x00007fb2e9fea688 in DeferOrRunPendingTask() () at ../../base/message_loop/message_loop.cc:419
#26 0x00007fb2e9fea96b in DoWork() () at ../../base/message_loop/message_loop.cc:512
#27 0x00007fb2e9febd6a in HandleDispatch () at ../../base/message_loop/message_pump_glib.cc:267
#28 0x00007fb2e9febd6a in WorkSourceDispatch() () at ../../base/message_loop/message_pump_glib.cc:109
#29 0x00007fb2e68ae7f7 in g_main_dispatch (context=0x5616c2cd1fe0) at ././glib/gmain.c:3203
#30 0x00007fb2e68ae7f7 in g_main_context_dispatch (context=context@entry=0x5616c2cd1fe0) at ././glib/gmain.c:3856
#31 0x00007fb2e68aea60 in g_main_context_iterate (context=context@entry=0x5616c2cd1fe0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ././glib/gmain.c:3929
#32 0x00007fb2e68aeb0c in g_main_context_iteration (context=0x5616c2cd1fe0, may_block=1) at ././glib/gmain.c:3990
#33 0x00007fb2e9febc56 in base::MessagePumpGlib::Run(base::MessagePump::Delegate*) () at ../../base/message_loop/message_pump_glib.cc:309
#34 0x00007fb2ea003a30 in Run() () at ../../base/run_loop.cc:35
#35 0x00007fb2e9f0dbba in CefBrowserMessageLoop::RunMessageLoop() () at ../../cef/libcef/browser/browser_message_loop.cc:127
#36 0x00005616c19a4bc8 in main ()
SeanDer
Newbie
 
Posts: 7
Joined: Mon Jan 30, 2017 2:06 pm

Re: Backtrace in profile code when using PepperFlash on CEF

Postby SeanDer » Mon Feb 13, 2017 3:13 am

I also can confirm the same exact change does not crash with cef_binary_3.2785.1485.g2b5c3a7_linux64
How can I be helpful in getting this reported/debugged efficiently?

thanks
SeanDer
Newbie
 
Posts: 7
Joined: Mon Jan 30, 2017 2:06 pm

Re: Backtrace in profile code when using PepperFlash on CEF

Postby amaitland » Mon Feb 13, 2017 3:42 am

How does cefclient behave? Just use the prebuilt version and add the args to the command line.
Maintainer of the CefSharp project.
amaitland
Virtuoso
 
Posts: 1292
Joined: Wed Jan 14, 2015 2:35 am

Re: Backtrace in profile code when using PepperFlash on CEF

Postby SeanDer » Mon Feb 13, 2017 1:34 pm

cef_binary_3.2924.1566.ga6a3da2_linux64_client from Spotify gives the same exact backtrace passing in the arguments from the command line (instead of setting them myself)
Code: Select all
./cefsimple --url=http://www.cwtv.com/shows/the-flash/ --ppapi-flash-path=libpepflashplayer.so --ppapi-flash-version=24.0.0.194
SeanDer
Newbie
 
Posts: 7
Joined: Mon Jan 30, 2017 2:06 pm

Re: Backtrace in profile code when using PepperFlash on CEF

Postby magreenblatt » Mon Feb 13, 2017 1:43 pm

Please file a bug at https://bitbucket.org/chromiumembedded/cef/issues/new. Include the reproduction steps, backtrace and a link to this forum thread.
magreenblatt
Site Admin
 
Posts: 12409
Joined: Fri May 29, 2009 6:57 pm

Re: Backtrace in profile code when using PepperFlash on CEF

Postby SeanDer » Mon Feb 13, 2017 2:40 pm

Filed (and fixed) as https://bitbucket.org/chromiumembedded/ ... rting-with

thanks for the debugging help amaitland!
SeanDer
Newbie
 
Posts: 7
Joined: Mon Jan 30, 2017 2:06 pm


Return to Support Forum

Who is online

Users browsing this forum: No registered users and 45 guests