Ok, that backtrace makes it pretty plain what's gone wrong:

Code:
    _buf = radeon_drm_bufmgr_create_buffer_from_handle(ws->kman, 
whandle->handle);

    if (stride)
        *stride = whandle->stride;
    if (size)
        *size = _buf->base.size;

State:
 #0  radeon_r300_winsys_buffer_from_handle (rws=<value optimized out>, 
whandle=0x7fffe69964b0, stride=0x7fffe69963f4, size=0x7fffe69963f0) at 
radeon_r300.c:123
         ws = <value optimized out>
         _buf = 0x0

So, it's a simple null pointer dereference.  Now we have two questions:

* How/why did radeon_drm_bufmgr_create_buffer_from_handle() give us a null 
pointer?
* If that is a permissible return value, the code should check for it.  Should 
it still call radeon_libdrm_winsys_buffer() in this case, or just return?

-- 
You received this bug notification because you are a member of compiz
packagers, which is subscribed to compiz in ubuntu.
https://bugs.launchpad.net/bugs/691653

Title:
  compiz crashes when using alt-tab (the radeon driver kills it)

_______________________________________________
Mailing list: https://launchpad.net/~compiz
Post to     : compiz@lists.launchpad.net
Unsubscribe : https://launchpad.net/~compiz
More help   : https://help.launchpad.net/ListHelp

Reply via email to