pipe-loader: Don't destroy the winsys in the sw loader
authorTom Stellard <thomas.stellard@amd.com>
Fri, 9 May 2014 01:05:02 +0000 (21:05 -0400)
committerTom Stellard <thomas.stellard@amd.com>
Fri, 9 May 2014 08:32:54 +0000 (04:32 -0400)
The screen takes ownership of the winsys, and is responsible for
destroying it.  Users of pipe-loader should make sure they destory
and  screens they've created to avoid memory leaks.

This fixes a crash in clover introduced by
ce6c17c0833032e91a2d1b34f9eb80c738a854a2 where the pipe-loader was
destroying the winsys while a screen was still using it.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c

index 08d43538efef16f3154498fb6eb460c133d85417..fa317f22aaeb6424aff56e9180cbb05360253cee 100644 (file)
@@ -145,9 +145,6 @@ pipe_loader_sw_release(struct pipe_loader_device **dev)
 {
    struct pipe_loader_sw_device *sdev = pipe_loader_sw_device(*dev);
 
-   if (sdev->ws && sdev->ws->destroy)
-      sdev->ws->destroy(sdev->ws);
-
    if (sdev->lib)
       util_dl_close(sdev->lib);