xpra icon
Bug tracker and wiki

Opened 5 years ago

Closed 5 years ago

#599 closed defect (fixed)

Xpra 0.13.5 fails with error on glGenFramebuffers

Reported by: callegar Owned by: callegar
Priority: major Milestone: 0.14
Component: client Version: 0.13.x
Keywords: Cc:

Description

Hi,

working with a kubuntu client (intel graphics) and a kubuntu server (nvidia graphics with proprietary driver). Both 64 bit, both at 14.04 (trusty) ubuntu release.

With latest xpra 0.13.5, server starts fine, but client cannot attach.

When attaching I get lots of errors, where the issue seems to be:

ValueError: glGenFramebuffers requires 1 arguments (n), received 2: (1, c_uint(1L))

Specifically

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/xpra/client/gl/gl_window_backing.py", line 436, in gl_expose_event
    drawable = self.gl_init()
  File "/usr/lib/python2.7/dist-packages/xpra/client/gl/gl_window_backing.py", line 297, in gl_init
    self.gl_init_textures()
  File "/usr/lib/python2.7/dist-packages/xpra/client/gl/gl_window_backing.py", line 245, in gl_init_textures
    glGenFramebuffers(1, self.offscreen_fbo)
  File "/usr/lib/python2.7/dist-packages/OpenGL/latebind.py", line 45, in __call__
    return self._finalCall( *args, **named )
  File "/usr/lib/python2.7/dist-packages/OpenGL/wrapper.py", line 570, in wrapperCall
    pyArgs = tuple( calculate_pyArgs( args ))
  File "/usr/lib/python2.7/dist-packages/OpenGL/wrapper.py", line 347, in calculate_pyArgs
    args
ValueError: glGenFramebuffers requires 1 arguments (n), received 2: (1, c_uint(1L))
2014-06-13 18:47:59,252 using audio codec: MPEG 1 Audio, Layer 3 (MP3)
2014-06-13 18:47:59,425 do_paint_rgb32 error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/xpra/client/window_backing_base.py", line 339, in do_paint_rgb32
    success = (self._backing is not None) and self._do_paint_rgb32(img_data, x, y, width, height, rowstride, options)
  File "/usr/lib/python2.7/dist-packages/xpra/client/gl/gl_window_backing.py", line 445, in _do_paint_rgb32
    return self._do_paint_rgb(32, img_data, x, y, width, height, rowstride, options)
  File "/usr/lib/python2.7/dist-packages/xpra/client/gl/gl_window_backing.py", line 452, in _do_paint_rgb
    drawable = self.gl_init()
  File "/usr/lib/python2.7/dist-packages/xpra/client/gl/gl_window_backing.py", line 305, in gl_init
    glBindFramebuffer(GL_FRAMEBUFFER, self.offscreen_fbo)
  File "/usr/lib/python2.7/dist-packages/OpenGL/error.py", line 208, in glCheckError
    baseOperation = baseOperation,
GLError: GLError(
        err = 1282,
        description = 'invalid operation',
        baseOperation = glBindFramebuffer,
        cArguments = (GL_FRAMEBUFFER, c_uint(1L))

and more...

Change History (5)

comment:1 Changed 5 years ago by Antoine Martin

Owner: changed from Antoine Martin to Antoine Martin
Status: newassigned

Ouch, that was caused by the fix for older versions of pyopengl (r6767).
The fix was tested on older versions, newer versions, but not Ubuntu versions..

A temporary workaround you can use is to disable opengl, either via the tray or via --opengl=no.

Last edited 5 years ago by Antoine Martin (previous) (diff)

comment:2 Changed 5 years ago by callegar

Right, I forgot to report it, but disabling opengl was enough to be operative, if not at full performance

comment:3 Changed 5 years ago by Antoine Martin

Owner: changed from Antoine Martin to callegar
Status: assignednew

Here's the fix: r6787, and the backport to v0.13.x in r6788.

Which broke centos again... re-fixed in r6791, backport in r6792.

I'm rebuilding all the Linux packages with this change as version 0.13.5-3, rather than trying to figure out which versions work and which ones don't.

The trusty packages are done, does this fix the problem for you?

Last edited 5 years ago by Antoine Martin (previous) (diff)

comment:4 Changed 5 years ago by onlyjob

Due to this bug I couldn't connect to my session using 0.13.5 but r6788 fixed it.

comment:5 Changed 5 years ago by Antoine Martin

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.