diff options
author | pnehrer | 2005-02-23 01:37:08 +0000 |
---|---|---|
committer | pnehrer | 2005-02-23 01:37:08 +0000 |
commit | fd3f4e8439d83debac1894a10eda9fad7666faff (patch) | |
tree | 26f7b5c6f57cbcf3c142411a470b9c5511cd71a9 /examples/bundles | |
parent | e574d165398fe052d7a5c6cc300cc4916a488b41 (diff) | |
download | org.eclipse.ecf-fd3f4e8439d83debac1894a10eda9fad7666faff.tar.gz org.eclipse.ecf-fd3f4e8439d83debac1894a10eda9fad7666faff.tar.xz org.eclipse.ecf-fd3f4e8439d83debac1894a10eda9fad7666faff.zip |
Fixed NPE, invalid thread access.
Diffstat (limited to 'examples/bundles')
2 files changed, 17 insertions, 10 deletions
diff --git a/examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/ChatWindow.java b/examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/ChatWindow.java index 5dacf214b..10608d72d 100644 --- a/examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/ChatWindow.java +++ b/examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/ChatWindow.java @@ -55,7 +55,7 @@ public class ChatWindow extends ApplicationWindow { private final Runnable flipImage = new Runnable() { public void run() { Shell shell = getShell(); - if (!shell.isDisposed()) + if (shell != null && !shell.isDisposed()) if (blank == shell.getImage()) { if (image != null && !image.isDisposed()) shell.setImage(image); @@ -67,12 +67,13 @@ public class ChatWindow extends ApplicationWindow { }; private final Runnable showImageRunnable = new Runnable() { - public void run() { - Shell shell = getShell(); - if (!shell.isDisposed() && image != null && !image.isDisposed()) - shell.setImage(image); - } - }; + public void run() { + Shell shell = getShell(); + if (shell != null && !shell.isDisposed() && image != null + && !image.isDisposed()) + shell.setImage(image); + } + }; private Flash flash; diff --git a/examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/LineChatClientView.java b/examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/LineChatClientView.java index 69fdc8775..6e0e5b54c 100644 --- a/examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/LineChatClientView.java +++ b/examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/LineChatClientView.java @@ -210,16 +210,22 @@ public class LineChatClientView implements FileSenderUI { public void disposeClient() { myNames.clear(); - view.disposeClient(this); if (teamChat != null) { - if (teamChat.chatWindow != null) - teamChat.chatWindow.close(); + final ChatWindow chatWindow = teamChat.chatWindow; + if (chatWindow != null) { + Display.getDefault().syncExec(new Runnable() { + public void run() { + chatWindow.close(); + } + }); + } teamChat = null; } if (lch != null) { lch = null; } + view.disposeClient(this); } protected void expandAll() { |