[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xorg-server: Changes to 'ubuntu'



 debian/changelog                            |    4 +++-
 debian/patches/214_glx_dri_searchdirs.patch |   28 ++++++++++++++--------------
 2 files changed, 17 insertions(+), 15 deletions(-)

New commits:
commit 12aac07cd1ba0605586bcd44cedcda84632cc56b
Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
Date:   Tue Feb 22 09:53:58 2011 +1100

    Don't free the handle returned by dlopen.  That way lies madness, and LP: 722563

diff --git a/debian/changelog b/debian/changelog
index 3f67222..09a9ba7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -78,6 +78,8 @@ xorg-server (2:1.9.99.902-2ubuntu1) UNRELEASED; urgency=low
     - Refcount GLXDrawables to avoid use-after-free crashes.  Patch from
       xorg-devel mailing list.  Prevents segfault on logout and server
       regenerate, and possibly other times. (LP: #711422)
+  * 214_glx_dri_searchdirs.patch:
+    - Fix dlclose/free snafu. (LP: #722563)
 
   [ Timo Aaltonen ]
   * debian/patches/216_dix-valuator-count-of-0-is-valid.diff:
@@ -85,7 +87,7 @@ xorg-server (2:1.9.99.902-2ubuntu1) UNRELEASED; urgency=low
       Regression from 1.9, keyboard events are not converted to protocol
       events. (LP: #714696)
 
- -- Timo Aaltonen <tjaalton@ubuntu.com>  Mon, 21 Feb 2011 13:05:55 +0200
+ -- Christopher James Halse Rogers <raof@ubuntu.com>  Tue, 22 Feb 2011 09:52:26 +1100
 
 xorg-server (2:1.9.99.902-2) experimental; urgency=low
 
diff --git a/debian/patches/214_glx_dri_searchdirs.patch b/debian/patches/214_glx_dri_searchdirs.patch
index d778aea..ce2a291 100644
--- a/debian/patches/214_glx_dri_searchdirs.patch
+++ b/debian/patches/214_glx_dri_searchdirs.patch
@@ -1,7 +1,7 @@
 Index: xorg-server/glx/glxdri.c
 ===================================================================
---- xorg-server.orig/glx/glxdri.c	2011-02-21 16:27:15.608549466 +1100
-+++ xorg-server/glx/glxdri.c	2011-02-21 16:37:17.849432756 +1100
+--- xorg-server.orig/glx/glxdri.c	2011-02-22 09:34:13.115682466 +1100
++++ xorg-server/glx/glxdri.c	2011-02-22 09:34:15.855686483 +1100
 @@ -858,8 +858,6 @@
  
  
@@ -126,8 +126,8 @@ Index: xorg-server/glx/glxdri.c
  
 Index: xorg-server/glx/glxdri2.c
 ===================================================================
---- xorg-server.orig/glx/glxdri2.c	2011-02-21 16:27:15.618549476 +1100
-+++ xorg-server/glx/glxdri2.c	2011-02-21 16:32:47.869036782 +1100
+--- xorg-server.orig/glx/glxdri2.c	2011-02-22 09:34:13.155682524 +1100
++++ xorg-server/glx/glxdri2.c	2011-02-22 09:34:15.855686483 +1100
 @@ -599,8 +599,6 @@
      NULL
  };
@@ -245,8 +245,8 @@ Index: xorg-server/glx/glxdri2.c
  }
 Index: xorg-server/glx/glxdricommon.c
 ===================================================================
---- xorg-server.orig/glx/glxdricommon.c	2011-02-21 16:14:58.587468479 +1100
-+++ xorg-server/glx/glxdricommon.c	2011-02-21 16:27:16.768551168 +1100
+--- xorg-server.orig/glx/glxdricommon.c	2011-02-22 09:29:22.105255652 +1100
++++ xorg-server/glx/glxdricommon.c	2011-02-22 09:39:11.016119400 +1100
 @@ -29,6 +29,7 @@
  
  #include <stdint.h>
@@ -315,7 +315,7 @@ Index: xorg-server/glx/glxdricommon.c
 +	if (extensions == NULL) {
 +	    LogMessage(X_INFO, "AIGLX: %s exports no extensions (%s)\n",
 +		       driverName, dlerror());
-+	    free(driver);
++	    dlclose(driver);
 +	    continue;
 +	}
 +    
@@ -336,7 +336,7 @@ Index: xorg-server/glx/glxdricommon.c
 +		       "AIGLX: %s does not export required DRI extension\n",
 +		       driverName);
 +	    *coreExt = *renderExt = NULL;
-+	    free(driver);
++	    dlclose(driver);
 +	    continue;
 +	}
 +	return driver;
@@ -346,8 +346,8 @@ Index: xorg-server/glx/glxdricommon.c
 +}
 Index: xorg-server/glx/glxdricommon.h
 ===================================================================
---- xorg-server.orig/glx/glxdricommon.h	2011-02-21 16:14:58.617468523 +1100
-+++ xorg-server/glx/glxdricommon.h	2011-02-21 16:27:16.778551178 +1100
+--- xorg-server.orig/glx/glxdricommon.h	2011-02-22 09:29:22.175255757 +1100
++++ xorg-server/glx/glxdricommon.h	2011-02-22 09:34:15.875686524 +1100
 @@ -38,4 +38,9 @@
  
  extern const __DRIsystemTimeExtension systemTimeExtension;
@@ -360,8 +360,8 @@ Index: xorg-server/glx/glxdricommon.h
  #endif
 Index: xorg-server/glx/glxdriswrast.c
 ===================================================================
---- xorg-server.orig/glx/glxdriswrast.c	2011-02-21 16:15:25.147507439 +1100
-+++ xorg-server/glx/glxdriswrast.c	2011-02-21 16:27:16.778551178 +1100
+--- xorg-server.orig/glx/glxdriswrast.c	2011-02-22 09:29:22.125255677 +1100
++++ xorg-server/glx/glxdriswrast.c	2011-02-22 09:34:15.875686524 +1100
 @@ -427,17 +427,13 @@
      }
  }
@@ -438,8 +438,8 @@ Index: xorg-server/glx/glxdriswrast.c
  
 Index: xorg-server/configure.ac
 ===================================================================
---- xorg-server.orig/configure.ac	2011-02-21 16:27:16.498550772 +1100
-+++ xorg-server/configure.ac	2011-02-21 16:27:16.778551178 +1100
+--- xorg-server.orig/configure.ac	2011-02-22 09:34:15.505685983 +1100
++++ xorg-server/configure.ac	2011-02-22 09:34:15.875686524 +1100
 @@ -1259,7 +1259,12 @@
  AC_DEFINE_DIR(SERVER_MISC_CONFIG_PATH, SERVERCONFIG, [Server miscellaneous config path])
  AC_DEFINE_DIR(BASE_FONT_PATH, FONTROOTDIR, [Default base font path])


Reply to: