[vtk-developers] QVTKRenderWindowInteractor OpenGL bug fix
Clinton Stimpson
clinton at elemtech.com
Fri Jun 22 18:13:21 EDT 2012
Can you pass -sync into the QApplication constructor?
Debugging would become much easier, so you don't get an error at an unrelated
X call.
On Wednesday, June 20, 2012 04:53:56 PM Félix C. Morency wrote:
> Clinton,
>
> I finally found the source of the crash. I was calling the
> Initialize() method in the constructor of my
> QVTKRenderWindowInteractor subclass which was causing a segfault under
> Linux. The default QVTKRenderWindowInteractor (QWidget) seems to work
> fine, although I still have GLXBadDrawable errors if I make more than
> one QVTKRenderWindowInteractor which are located in QMdiArea
> subwindows. Do you have any idea why?
>
> Regards,
> -F
>
> On Wed, Jun 20, 2012 at 10:57 AM, Félix C. Morency
>
> <felix.morency at gmail.com> wrote:
> > Clinton,
> >
> > Thank you for pointing that out on gerrit. You are right about the
> > multiple context issue. I made some more tests and had the following
> > results:
> >
> > 1) The original wrapper (QWidget) with Matthieu's fix [1] works fine
> > under Windows x86_64. No need to switch to a QGLWidget.
> > 2) The crash with the original code (QWidget) happens on Linux x86_64
> > (Ubuntu 11.10), nVidia drivers 295.20. The backtrace points to
> > vtkXOpenGLRenderWindow.cxx:624
> > 3) Changing the display/window id (SetDisplayId()/SetWindowId())
> > results in a (different) crash. The backtrace points to
> > vtkXOpenGLRenderWindow.cxx:585. The dpy->ext_data and w parameters of
> > the XChangeWindowAttributes method are set to the values returned by
> > the QWidget x11Info().display() and winId().
> >
> > I'm stuck. Do you have any pointers/clues on:
> >
> > 1) The reason of the crash with the original code?
> > 2) How to get the OpenGL context from VTK so I can assign it to the
> > QGLWidget, if possible?
> >
> > Feel free to ask for more information.
> >
> > [1]: http://review.source.kitware.com/#/t/831/
> >
> > Regards,
> > -F
> >
> > On Tue, Jun 19, 2012 at 10:54 AM, Félix C. Morency
> >
> > <felix.morency at gmail.com> wrote:
> >> Hi,
> >>
> >> I pushed in [1] a bug fix that resolves a crash when trying to embed a
> >> QVTKRenderWindowInteractor in a PySide (v1.1.1) Linux application. The
> >> commit is marked as a WIP because I have the following error when the
> >> cone testing application exits:
> >>
> >> X Error of failed request: GLXBadDrawable
> >> Major opcode of failed request: 135 (GLX)
> >> Minor opcode of failed request: 5 (X_GLXMakeCurrent)
> >>
> >> I don't know if its VTK or PySide (or both) related. Do you guys have
> >> any idea?
> >>
> >> [1]: http://review.source.kitware.com/6249
> >>
> >> --
> >> Félix C. Morency, M.Sc.
> >> Plateforme d’analyse et de visualisation d’images
> >> Centre Hospitalier Universitaire de Sherbrooke
> >> Centre de recherche clinique Étienne-Le Bel
> >> Local Z5-3031 | 819.346.1110 ext 16634
> >
> > --
> > --
> > Félix C. Morency, M.Sc.
> > Plateforme d’analyse et de visualisation d’images
> > Centre Hospitalier Universitaire de Sherbrooke
> > Centre de recherche clinique Étienne-Le Bel
> > Local Z5-3031 | 819.346.1110 ext 16634
--
Clinton Stimpson
Elemental Technologies, Inc
Computational Simulation Software, LLC
www.csimsoft.com
More information about the vtk-developers
mailing list