SDL-2.0: Cannot create window

On a linux machine with Mesa 7.11 installed I just did a fresh checkout of SDL-2.0 from HG.

Ran autogen.sh, configure, and make, sudo make install

I go into tests and do the same.

When I try to run the tests I’m getting this:

Code:
$ ./testgles
Couldn’t create window:

So just for a quick check I fire up glx gears and it runs fine.

I go and check some of my other gles programs and they’re getting the same error.

Did I need to do some special configure options to get SDL and GLES to play nice?

.

Ran some tests:

Installed the mesa-demos and they all run ok.

So then I tried one of the SDL tests and specifically requested various renderers:

$ LD_PRELOAD=/usr/lib/libGLESv2.so ./testdraw2 --renderer software
156.54 frames per second
$ LD_PRELOAD=/usr/lib/libGLESv2.so ./testdraw2 --renderer opengl
Couldn’t create renderer:
$ LD_PRELOAD=/usr/lib/libGLESv2.so ./testdraw2 --renderer opengles
Couldn’t create renderer:
$ LD_PRELOAD=/usr/lib/libGLESv2.so ./testdraw2 --renderer opengles2
Couldn’t create renderer:

So then I check glxinfo to make sure that the driver wasn’t the software rasterizer:
$ glxinfo | grep -i renderer
OpenGL renderer string: Gallium 0.4 on NV36

So why can’t SDL-2.0 create an OpenGL renderer?

.

I took a minute and tried to trace what is happening when we try to render using opengl under Mesa.

Code:
==3752== Command: ./testdraw2 --renderer opengl
==3752==
SDL_CreateWindow called
==3752== Syscall param ioctl(generic) points to uninitialised byte(s)
==3752== at 0x4CEE7829: ioctl (in /lib/libc-2.14.90.so)
==3752== by 0x42377A63: drmIoctl (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x4237A44C: drmCommandWriteRead (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x49B63C3: nouveau_device_get_param (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B64AE: nouveau_device_open_existing (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x455882C: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x42380FF3: ??? (in /usr/lib/libdrm.so.2.4.0)
==3752== Address 0xbeb507b8 is on thread 1’s stack
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x49B637D: nouveau_device_get_param (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752==
==3752== Syscall param ioctl(generic) points to uninitialised byte(s)
==3752== at 0x4CEE7829: ioctl (in /lib/libc-2.14.90.so)
==3752== by 0x42377A63: drmIoctl (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x4237A44C: drmCommandWriteRead (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x49B8079: nouveau_bo_wrap (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B69A9: nouveau_channel_alloc (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x45D6F0D: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x4565CF4: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x45588DE: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x42380FF3: ??? (in /usr/lib/libdrm.so.2.4.0)
==3752== Address 0xbeb506cc is on thread 1’s stack
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x49B7FE0: nouveau_bo_wrap (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752==
==3752== Syscall param ioctl(generic) points to uninitialised byte(s)
==3752== at 0x4CEE7829: ioctl (in /lib/libc-2.14.90.so)
==3752== by 0x42377A63: drmIoctl (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x4237A44C: drmCommandWriteRead (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x49B6CC9: nouveau_pushbuf_init (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B6A4C: nouveau_channel_alloc (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x45D6F0D: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x4565CF4: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x45588DE: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x42380FF3: ??? (in /usr/lib/libdrm.so.2.4.0)
==3752== Address 0xbeb506b4 is on thread 1’s stack
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x49B6C7F: nouveau_pushbuf_init (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752==
==3752== Syscall param ioctl(generic) points to uninitialised byte(s)
==3752== at 0x4CEE7829: ioctl (in /lib/libc-2.14.90.so)
==3752== by 0x42377A63: drmIoctl (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x4237A44C: drmCommandWriteRead (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x49B7AAD: ??? (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B7EDE: nouveau_bo_new_tile (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B7F5B: nouveau_bo_new (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B6D1A: nouveau_pushbuf_init (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B6A4C: nouveau_channel_alloc (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x45D6F0D: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x4565CF4: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x45588DE: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x42380FF3: ??? (in /usr/lib/libdrm.so.2.4.0)
==3752== Address 0xbeb505c0 is on thread 1’s stack
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x49B79FF: ??? (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752==
SDL_CreateWindow called
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== by 0x40D200D: X11_GL_GetVisual (SDL_x11opengl.c:427)
==3752== by 0x40CB4C3: XCreateWindow (SDL_x11sym.h:37)
==3752== by 0x40D4EFF: X11_CreateWindow (SDL_x11window.c:480)
==3752== by 0x40C7255: SDL_CreateWindow (SDL_video.c:1204)
==3752== by 0x804B7E5: CommonInit (common.c:730)
==3752== by 0x80497F3: main (testdraw2.c:228)
==3752== Address 0x4173bb3 is 35 bytes inside a block of size 16,384 alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== Address 0x4173bd7 is 71 bytes inside a block of size 16,384 alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== by 0x4222B9F: ???
==3752== Address 0x4173bd7 is 71 bytes inside a block of size 16,384 alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== by 0x5: ???
==3752== Address 0x4173bb3 is 35 bytes inside a block of size 16,384 alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== by 0x422739F: ???
==3752== Address 0x4173bd7 is 71 bytes inside a block of size 16,384 alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
Couldn’t create renderer:
==3752==
==3752== HEAP SUMMARY:
==3752== in use at exit: 233,606 bytes in 831 blocks
==3752== total heap usage: 6,147 allocs, 5,316 frees, 670,782 bytes allocated
==3752==
==3752== LEAK SUMMARY:
==3752== definitely lost: 420 bytes in 7 blocks
==3752== indirectly lost: 101,255 bytes in 147 blocks
==3752== possibly lost: 0 bytes in 0 blocks
==3752== still reachable: 131,931 bytes in 677 blocks
==3752== suppressed: 0 bytes in 0 blocks
==3752== Rerun with --leak-check=full to see details of leaked memory
==3752==
==3752== For counts of detected and suppressed errors, rerun with: -v
==3752== ERROR SUMMARY: 16 errors from 9 contexts (suppressed: 0 from 0)

And it looks like SDL keeps calling the same code over and over until it fails.

.

Can you do --track-origin=yes so we can see where the uninit’d values came
from?On Tue, May 15, 2012 at 10:27 AM, greno wrote:

**
I took a minute and tried to trace what is happening when we try to render
using opengl under Mesa.

Code:

==3752== Command: ./testdraw2 --renderer opengl
==3752==
SDL_CreateWindow called
==3752== Syscall param ioctl(generic) points to uninitialised byte(s)
==3752== at 0x4CEE7829: ioctl (in /lib/libc-2.14.90.so)
==3752== by 0x42377A63: drmIoctl (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x4237A44C: drmCommandWriteRead (in
/usr/lib/libdrm.so.2.4.0)
==3752== by 0x49B63C3: nouveau_device_get_param (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B64AE: nouveau_device_open_existing (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x455882C: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x42380FF3: ??? (in /usr/lib/libdrm.so.2.4.0)
==3752== Address 0xbeb507b8 is on thread 1’s stack
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x49B637D: nouveau_device_get_param (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752==
==3752== Syscall param ioctl(generic) points to uninitialised byte(s)
==3752== at 0x4CEE7829: ioctl (in /lib/libc-2.14.90.so)
==3752== by 0x42377A63: drmIoctl (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x4237A44C: drmCommandWriteRead (in
/usr/lib/libdrm.so.2.4.0)
==3752== by 0x49B8079: nouveau_bo_wrap (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B69A9: nouveau_channel_alloc (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x45D6F0D: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x4565CF4: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x45588DE: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x42380FF3: ??? (in /usr/lib/libdrm.so.2.4.0)
==3752== Address 0xbeb506cc is on thread 1’s stack
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x49B7FE0: nouveau_bo_wrap (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752==
==3752== Syscall param ioctl(generic) points to uninitialised byte(s)
==3752== at 0x4CEE7829: ioctl (in /lib/libc-2.14.90.so)
==3752== by 0x42377A63: drmIoctl (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x4237A44C: drmCommandWriteRead (in
/usr/lib/libdrm.so.2.4.0)
==3752== by 0x49B6CC9: nouveau_pushbuf_init (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B6A4C: nouveau_channel_alloc (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x45D6F0D: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x4565CF4: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x45588DE: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x42380FF3: ??? (in /usr/lib/libdrm.so.2.4.0)
==3752== Address 0xbeb506b4 is on thread 1’s stack
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x49B6C7F: nouveau_pushbuf_init (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752==
==3752== Syscall param ioctl(generic) points to uninitialised byte(s)
==3752== at 0x4CEE7829: ioctl (in /lib/libc-2.14.90.so)
==3752== by 0x42377A63: drmIoctl (in /usr/lib/libdrm.so.2.4.0)
==3752== by 0x4237A44C: drmCommandWriteRead (in
/usr/lib/libdrm.so.2.4.0)
==3752== by 0x49B7AAD: ??? (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B7EDE: nouveau_bo_new_tile (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B7F5B: nouveau_bo_new (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B6D1A: nouveau_pushbuf_init (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x49B6A4C: nouveau_channel_alloc (in
/usr/lib/libdrm_nouveau.so.1.0.0)
==3752== by 0x45D6F0D: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x4565CF4: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x45588DE: ??? (in /usr/lib/dri/nouveau_dri.so)
==3752== by 0x42380FF3: ??? (in /usr/lib/libdrm.so.2.4.0)
==3752== Address 0xbeb505c0 is on thread 1’s stack
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x49B79FF: ??? (in /usr/lib/libdrm_nouveau.so.1.0.0)
==3752==
SDL_CreateWindow called
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== by 0x40D200D: X11_GL_GetVisual (SDL_x11opengl.c:427)
==3752== by 0x40CB4C3: XCreateWindow (SDL_x11sym.h:37)
==3752== by 0x40D4EFF: X11_CreateWindow (SDL_x11window.c:480)
==3752== by 0x40C7255: SDL_CreateWindow (SDL_video.c:1204)
==3752== by 0x804B7E5: CommonInit (common.c:730)
==3752== by 0x80497F3: main (testdraw2.c:228)
==3752== Address 0x4173bb3 is 35 bytes inside a block of size 16,384
alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== Address 0x4173bd7 is 71 bytes inside a block of size 16,384
alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== by 0x4222B9F: ???
==3752== Address 0x4173bd7 is 71 bytes inside a block of size 16,384
alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== by 0x5: ???
==3752== Address 0x4173bb3 is 35 bytes inside a block of size 16,384
alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
==3752== Syscall param writev(vector[…]) points to uninitialised byte(s)
==3752== at 0x4CEE794E: writev (in /lib/libc-2.14.90.so)
==3752== by 0x422739F: ???
==3752== Address 0x4173bd7 is 71 bytes inside a block of size 16,384
alloc’d
==3752== at 0x4006467: calloc (vg_replace_malloc.c:467)
==3752== by 0x41C1B971: XOpenDisplay (in /usr/lib/libX11.so.6.3.0)
==3752== by 0x40CBDFB: XOpenDisplay (SDL_x11sym.h:77)
==3752== by 0x40D3EFF: X11_CreateDevice (SDL_x11video.c:162)
==3752== by 0x40C6FA6: SDL_VideoInit (SDL_video.c:457)
==3752== by 0x804B531: CommonInit (common.c:583)
==3752== by 0x4CE156B2: (below main) (in /lib/libc-2.14.90.so)
==3752== Uninitialised value was created by a stack allocation
==3752== at 0x41C27A1F: XStoreColors (in /usr/lib/libX11.so.6.3.0)
==3752==
Couldn’t create renderer:
==3752==
==3752== HEAP SUMMARY:
==3752== in use at exit: 233,606 bytes in 831 blocks
==3752== total heap usage: 6,147 allocs, 5,316 frees, 670,782 bytes
allocated
==3752==
==3752== LEAK SUMMARY:
==3752== definitely lost: 420 bytes in 7 blocks
==3752== indirectly lost: 101,255 bytes in 147 blocks
==3752== possibly lost: 0 bytes in 0 blocks
==3752== still reachable: 131,931 bytes in 677 blocks
==3752== suppressed: 0 bytes in 0 blocks
==3752== Rerun with --leak-check=full to see details of leaked memory
==3752==
==3752== For counts of detected and suppressed errors, rerun with: -v
==3752== ERROR SUMMARY: 16 errors from 9 contexts (suppressed: 0 from 0)

And it looks like SDL keeps calling the same code over and over until it
fails.

.


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

Patrick Baggett wrote:

Can you do --track-origin=yes so we can see where the uninit’d values came from?

Yes, I had the option on already. It just shows that it came from stack allocation.

.

HERPDERP, right. Sorry. Reading over it now.On Tue, May 15, 2012 at 10:42 AM, greno wrote:

**

Patrick Baggett wrote:

Can you do --track-origin=yes so we can see where the uninit’d values
came from?

Yes, I had the option on already. It just shows that it came from stack
allocation.

.


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

I think you may be able to duplicate this by creating a Fedora 16 guest in VirtualBox and installing Mesa.

My understanding was that VirtualBox supported OpenGL hardware acceleration.

.

Looking at this some more…

It looks like it is complaining about uninitialized structures.

Looking through some of the code I can see where structures are allocated with calloc but that doesn’t really initialize the structure.

.