Index: src/mlx/gui/flight.py
===================================================================
--- src/mlx/gui/flight.py	(revision 798)
+++ src/mlx/gui/flight.py	(revision 805)
@@ -2500,9 +2500,4 @@
         table.attach(self._rememberButton, 1, 2, 2, 3, ypadding = 8)
 
-        self._credentialsCondition = threading.Condition()
-        self._credentialsAvailable = False
-        self._credentialsUserName = None
-        self._credentialsPassword = None
-
         label = gtk.Label(xstr("simbrief_extra_fuel"))
         label.set_use_underline(True)
@@ -2675,23 +2670,10 @@
             self._wizard.gui.beginBusy(xstr("simbrief_calling"))
 
-            cef.startFastTimeout()
             cef.callSimBrief(plan,
-                             self._getCredentialsCallback,
-                             self._simBriefProgressCallback,
+                             self._getCredentials,
+                             self._simBriefProgress,
                              SimBriefSetupPage.getHTMLFilePath())
 
             startSound(const.SOUND_NOTAM)
-
-    def _getCredentialsCallback(self, count):
-        """Called when the SimBrief home page requests the credentials."""
-        with self._credentialsCondition:
-            self._credentialsAvailable = False
-
-            gobject.idle_add(self._getCredentials, count)
-
-            while not self._credentialsAvailable:
-                self._credentialsCondition.wait()
-
-            return (self._credentialsUserName, self._credentialsPassword)
 
     def _getCredentials(self, count):
@@ -2701,42 +2683,35 @@
         are returned. Otherwise a dialog box is displayed informing the user of
         invalid credentials and requesting another set of them."""
-        with self._credentialsCondition:
-            if count==0:
-                self._credentialsUserName = self._userName.get_text()
-                self._credentialsPassword = self._password.get_text()
+        print "_getCredentials", count
+        if count==0:
+            return (self._userName.get_text(), self._password.get_text())
+        else:
+            gui = self._wizard.gui
+            config = gui.config
+
+            dialog = SimBriefCredentialsDialog(gui,
+                                               config.simBriefUserName,
+                                               config.simBriefPassword,
+                                               config.rememberSimBriefPassword)
+            response = dialog.run()
+
+            if response==RESPONSETYPE_OK:
+                userName = dialog.userName
+                self._userName.set_text(userName)
+                password = dialog.password
+                self._password.set_text(password)
+                rememberPassword = dialog.rememberPassword
+
+                config.simBriefUserName = userName
+
+                config.simBriefPassword = \
+                    password if rememberPassword else ""
+                config.rememberSimBriefPassword = rememberPassword
+
+                config.save()
+
+                return (userName, password)
             else:
-                gui = self._wizard.gui
-                config = gui.config
-
-                dialog = SimBriefCredentialsDialog(gui,
-                                                   config.simBriefUserName,
-                                                   config.simBriefPassword,
-                                                   config.rememberSimBriefPassword)
-                response = dialog.run()
-
-                if response==RESPONSETYPE_OK:
-                    self._credentialsUserName = dialog.userName
-                    self._userName.set_text(self._credentialsUserName)
-                    self._credentialsPassword = dialog.password
-                    self._password.set_text(self._credentialsPassword)
-                    rememberPassword = dialog.rememberPassword
-
-                    config.simBriefUserName = self._credentialsUserName
-
-                    config.simBriefPassword = \
-                        self._credentialsPassword if rememberPassword else ""
-                    config.rememberSimBriefPassword = rememberPassword
-
-                    config.save()
-                else:
-                    self._credentialsUserName = None
-                    self._credentialsPassword = None
-
-            self._credentialsAvailable = True
-            self._credentialsCondition.notify()
-
-    def _simBriefProgressCallback(self, progress, result, flightInfo):
-        """Called by the SimBrief handling thread."""
-        gobject.idle_add(self._simBriefProgress, progress, result, flightInfo)
+                return (None, None)
 
     def _simBriefProgress(self, progress, result, flightInfo):
@@ -2748,5 +2723,4 @@
             self._wizard.gui.updateBusyState(xstr(message))
         else:
-            cef.stopFastTimeout()
             self._wizard.gui.endBusy()
 
