[opensource-dev] Linux x64 - libmedia_plugin_cef.so error
Henri Beauchamp
sldev at free.fr
Thu Mar 22 09:00:51 PDT 2018
On Fri, 23 Mar 2018 01:48:08 +1000, Alex wrote:
> It does indeed sound like the viewer is subsequently spawning another
> SLPlugin instead of dullahan_host, you are right. I have no idea why the
> viewer would be doing that. From what I am aware, the viewer _should_
> start one instance of SLPlugin and dullahan_host when its at the login
> screen.
>
> Do you have a rough idea (assuming the standard LL viewer behavior)
> where these processes get launched from on startup (which part of the
> viewer code)?
In fact, the viewer (and SLPlugin) code itself got no knowlegde of
dullahan_host: the latter is launched (and gets passed arguments) by
CEF, from a setting given in dullahan_impl.cpp, in dullahan_impl::init()
My guess is that your plugin lacks a #elif defined(__linux__) and the
corresponding CefString(&settings.browser_subprocess_path) there.
Here is what I put in mine:
bool dullahan_impl::init(dullahan::dullahan_settings& user_settings)
{
DLNOUT("dullahan_impl::init()");
#ifdef WIN32
CefMainArgs args(GetModuleHandle(nullptr));
#else
CefMainArgs args(0, nullptr);
#endif
CefSettings settings;
// point to host application
#ifdef WIN32
CefString(&settings.browser_subprocess_path) = "dullahan_host.exe";
#elif __APPLE__
NSString* appBundlePath = [[NSBundle mainBundle] bundlePath];
CefString(&settings.browser_subprocess_path) =
[[NSString stringWithFormat:
@"%@/Contents/Frameworks/DullahanHelper.app/Contents/MacOS/DullahanHelper", appBundlePath] UTF8String];
#elif defined(__linux__)
CefString(&settings.browser_subprocess_path) = "dullahan_host";
#endif
// Do not bother with the stupid sandbox which keeps failing under Windows
// and which must be set UID root under Linux...
settings.no_sandbox = true;
.../...
Henri.
More information about the opensource-dev
mailing list