From 1ad5f79ebc86b35578a021b07dc856bfa2db1188 Mon Sep 17 00:00:00 2001 From: Ginn Chen Date: Tue, 10 Mar 2009 14:27:41 +0800 Subject: [PATCH] Bug 448512 Crash on quit [@ XCloseDisplay] r=dbaron --- widget/src/gtk2/nsScreenManagerGtk.cpp | 10 ---------- widget/src/gtk2/nsScreenManagerGtk.h | 1 - 2 files changed, 11 deletions(-) diff --git a/widget/src/gtk2/nsScreenManagerGtk.cpp b/widget/src/gtk2/nsScreenManagerGtk.cpp index ef56857eac9e..53e8dbf976bc 100644 --- a/widget/src/gtk2/nsScreenManagerGtk.cpp +++ b/widget/src/gtk2/nsScreenManagerGtk.cpp @@ -107,7 +107,6 @@ root_window_event_filter(GdkXEvent *aGdkXEvent, GdkEvent *aGdkEvent, nsScreenManagerGtk :: nsScreenManagerGtk ( ) : mXineramalib(nsnull) - , mXineramaIsActive(PR_FALSE) , mRootWindow(nsnull) { // nothing else to do. I guess we could cache a bunch of information @@ -131,12 +130,6 @@ nsScreenManagerGtk :: ~nsScreenManagerGtk() * We can't unload libXinerama.so.1 here because this will make * the address of close_display() registered in X to be invalid and * it will crash when XCloseDisplay() is called later. */ -#ifdef MOZ_X11 - if (mXineramalib && mXineramalib != SCREEN_MANAGER_LIBRARY_LOAD_FAILED && - !mXineramaIsActive) { - PR_UnloadLibrary(mXineramalib); - } -#endif } @@ -197,9 +190,6 @@ nsScreenManagerGtk :: Init() if (_XnrmIsActive && _XnrmQueryScreens && _XnrmIsActive(GDK_DISPLAY())) { screenInfo = _XnrmQueryScreens(GDK_DISPLAY(), &numScreens); - - // remember for the destructor, if we are really working with Xinerama - mXineramaIsActive = numScreens > 0; } } diff --git a/widget/src/gtk2/nsScreenManagerGtk.h b/widget/src/gtk2/nsScreenManagerGtk.h index 73156e6c2100..d9fc54264dd5 100644 --- a/widget/src/gtk2/nsScreenManagerGtk.h +++ b/widget/src/gtk2/nsScreenManagerGtk.h @@ -75,7 +75,6 @@ private: nsCOMArray mCachedScreenArray; PRLibrary *mXineramalib; - PRPackedBool mXineramaIsActive; GdkWindow *mRootWindow; #ifdef MOZ_X11