xserver: Branch 'xorg-server-1.4-apple'

Jeremy Huddleston jeremyhu at kemper.freedesktop.org
Thu Oct 23 17:35:35 PDT 2008


 hw/xquartz/X11Application.m                                   |   29 +++++-----
 hw/xquartz/bundle/Resources/English.lproj/Localizable.strings |binary
 2 files changed, 16 insertions(+), 13 deletions(-)

New commits:
commit af95174a088dc787d124ec548b1005f5b67c9e8d
Author: Jeremy Huddleston <jeremyhu at freedesktop.org>
Date:   Thu Oct 23 17:32:32 2008 -0700

    XQuartz: Do check_xinitrc() later to avoid possible deadlock.

diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m
index 0f2cefb..f213cbf 100644
--- a/hw/xquartz/X11Application.m
+++ b/hw/xquartz/X11Application.m
@@ -786,20 +786,19 @@ static void check_xinitrc (void) {
 Windows displayed by X11 applications may not have titlebars, or may look \
 different to windows displayed by native applications.\n\n\
 Would you like to move aside the existing file and use the standard X11 \
-environment?", @"Startup xinitrc dialog");
-	
-    if (NSRunAlertPanel (nil, msg, NSLocalizedString (@"Yes", @""),
-			 NSLocalizedString (@"No", @""), nil)
-	== NSAlertDefaultReturn) {
-      char buf2[1024];
-      int i = -1;
-      
-      snprintf (buf2, sizeof (buf2), "%s.old", buf);
+environment the next time you start X11?", @"Startup xinitrc dialog");
+
+    if(NSAlertDefaultReturn == NSRunAlertPanel (nil, msg, NSLocalizedString (@"Yes", @""),
+                                                NSLocalizedString (@"No", @""), nil)) {
+        char buf2[1024];
+        int i = -1;
       
-      for (i = 1; access (buf2, F_OK) == 0; i++)
-	snprintf (buf2, sizeof (buf2), "%s.old.%d", buf, i);
+        snprintf (buf2, sizeof (buf2), "%s.old", buf);
       
-      rename (buf, buf2);
+        for(i = 1; access (buf2, F_OK) == 0; i++)
+            snprintf (buf2, sizeof (buf2), "%s.old.%d", buf, i);
+
+        rename (buf, buf2);
     }
     
  done:
@@ -822,7 +821,6 @@ void X11ApplicationMain (int argc, char **argv, char **envp) {
     [[NSNotificationCenter defaultCenter] addObserver:NSApp
 					selector:@selector (became_key:)
 					name:NSWindowDidBecomeKeyNotification object:nil];
-    check_xinitrc ();
 
     /*
      * The xpr Quartz mode is statically linked into this server.
@@ -848,6 +846,11 @@ void X11ApplicationMain (int argc, char **argv, char **envp) {
 
     /* Tell the server thread that it can proceed */
     QuartzInitServer(argc, argv, envp);
+    
+    /* This must be done after QuartzInitServer because it can result in
+     * an mieqEnqueue() - <rdar://problem/6300249>
+     */
+    check_xinitrc();
            
     [NSApp run];
     /* not reached */
diff --git a/hw/xquartz/bundle/Resources/English.lproj/Localizable.strings b/hw/xquartz/bundle/Resources/English.lproj/Localizable.strings
index fec942e..001227a 100644
Binary files a/hw/xquartz/bundle/Resources/English.lproj/Localizable.strings and b/hw/xquartz/bundle/Resources/English.lproj/Localizable.strings differ


More information about the xorg-commit mailing list