Bug 18883
Summary: | nspluginwrapper gets X11 BadWindow on PluginView::stop() | ||
---|---|---|---|
Product: | WebKit | Reporter: | Chris Lord <chris> |
Component: | Plug-ins | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED WORKSFORME | ||
Severity: | Normal | CC: | gb.devel, marc.ordinasillopis, markybob, mrobinson, vicki |
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | PC | ||
OS: | Linux |
Chris Lord
After applying the patch in bug #18882 to fix the segfault with nspluginwrapper, one can navigate to youtube.com, where the flash works correctly, and navigate to a video page, where the flash still works correctly.
However, after navigating away from the video, npviewer.bin will receive an X11 BadWindow (invalid Window parameter) error and crash, stopping all subsequent flash from working.
Relevant part of the debugging log from nspluginwrapper/viewer:
*** NSPlugin Wrapper *** NPP_SetWindow instance=0xfbc2f0
*** NSPlugin Viewer *** handle_NPP_SetWindow
The program 'npviewer.bin' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
(Details: serial 15 error_code 3 request_code 3 minor_code 0)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
*** NSPlugin Wrapper *** ERROR: NPP_SetWindow() wait for reply: Connection closed
*** NSPlugin Wrapper *** return: 1 [NPERR_GENERIC_ERROR]
*** NSPlugin Wrapper *** NPP_Destroy instance=0xfbc2f0
*** NSPlugin Wrapper *** ERROR: NPP_Destroy() invoke: Connection closed
I guess this is happening in PluginView::stop, in WebCore/plugins/gtk/PluginViewGtk.cpp. SetWindow is being called with a NULL window, to signal that the plugin shouldn't do anything more with the window, as specified in the ns plugin API docs, but looking at the nspluginwrapper/viewer code, the case of a NULL window should be handled correctly...
I've no idea why this happens.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Gwenole Beauchesne
Hi, this should be fixed for nspluginwrapper 1.0.0 (in particular, rev 585). If not, please tell me. Thanks.
$ svn co http://svn.beauchesne.info/svn/gwenole/projects/nspluginwrapper/branches/nspluginwrapper-1.0-branch
Vicki Murley
Filed <rdar://problem/6453738> on the SetWindow issue.
Martin Robinson
Is this still an issue? There's been no activity for about two years. I'm unsure why this WebKitGTK+ bug has a radar issue as well.
Martin Robinson
No response for six months, so I'm just going to close this one. If it's still an issue, feel free to reopen with a comment.