Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpnehrer2005-02-23 01:37:08 +0000
committerpnehrer2005-02-23 01:37:08 +0000
commitfd3f4e8439d83debac1894a10eda9fad7666faff (patch)
tree26f7b5c6f57cbcf3c142411a470b9c5511cd71a9 /examples/bundles
parente574d165398fe052d7a5c6cc300cc4916a488b41 (diff)
downloadorg.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')
-rw-r--r--examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/ChatWindow.java15
-rw-r--r--examples/bundles/org.eclipse.ecf.example.collab/src/org/eclipse/ecf/example/collab/ui/LineChatClientView.java12
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() {

Back to the top