summaryrefslogtreecommitdiff
path: root/java/src/IceGridGUI/Coordinator.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceGridGUI/Coordinator.java')
-rw-r--r--java/src/IceGridGUI/Coordinator.java54
1 files changed, 35 insertions, 19 deletions
diff --git a/java/src/IceGridGUI/Coordinator.java b/java/src/IceGridGUI/Coordinator.java
index 18851899330..17d1c4876a2 100644
--- a/java/src/IceGridGUI/Coordinator.java
+++ b/java/src/IceGridGUI/Coordinator.java
@@ -2235,27 +2235,43 @@ public class Coordinator
}
else
{
- SwingUtilities.invokeLater(new Runnable()
+ while(true)
+ {
+ try
{
- @Override
- public void run()
- {
- if(JOptionPane.showConfirmDialog(
- parent,
- "Unable to connect to the Master Registry:\n " + e.toString()
- + "\n\nDo you want to connect to a Slave Registry?",
- "Cannot connect to Master Registry",
- JOptionPane.YES_NO_OPTION,
- JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION)
- {
- cb.setRegistry(cb.getCurrentRegistry());
- }
- else
+ SwingUtilities.invokeAndWait(new Runnable()
{
- cb.loginFailed();
- }
- }
- });
+ @Override
+ public void run()
+ {
+ if(JOptionPane.showConfirmDialog(
+ parent,
+ "Unable to connect to the Master Registry:\n " + e.toString()
+ + "\n\nDo you want to connect to a Slave Registry?",
+ "Cannot connect to Master Registry",
+ JOptionPane.YES_NO_OPTION,
+ JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION)
+ {
+ cb.setRegistry(cb.getCurrentRegistry());
+ }
+ else
+ {
+ cb.loginFailed();
+ }
+ }
+ });
+ break;
+ }
+ catch(java.lang.InterruptedException ex)
+ {
+ // Ignore and retry
+ }
+ catch(java.lang.reflect.InvocationTargetException ex)
+ {
+ cb.loginFailed();
+ break;
+ }
+ }
if(cb.failed())
{
return;