From 13f05bc71cc450a316aa5e85f725bdc3ed6ed81a Mon Sep 17 00:00:00 2001 From: Ted Williams Date: Sat, 14 Mar 2009 06:23:27 +0000 Subject: [PATCH] [228126] Traditional Rendering: ViewportCache.run() synchronization problem --- .../debug/ui/memory/traditional/Rendering.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/memory/org.eclipse.cdt.debug.ui.memory.traditional/src/org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java b/memory/org.eclipse.cdt.debug.ui.memory.traditional/src/org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java index 7daca8ec32b..0a1d51ad722 100644 --- a/memory/org.eclipse.cdt.debug.ui.memory.traditional/src/org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java +++ b/memory/org.eclipse.cdt.debug.ui.memory.traditional/src/org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java @@ -727,9 +727,9 @@ public class Rendering extends Composite implements IDebugEventSetListener public void dispose() { fDisposed = true; - synchronized(this) + synchronized(fQueue) { - this.notify(); + fQueue.notify(); } } @@ -789,10 +789,7 @@ public class Rendering extends Composite implements IDebugEventSetListener fQueue.addElement(element); fLastQueued = element; } - } - synchronized(this) - { - this.notify(); + fQueue.notify(); } } @@ -836,11 +833,14 @@ public class Rendering extends Composite implements IDebugEventSetListener } else { - synchronized(this) + synchronized(fQueue) { try { - this.wait(); + if(fQueue.isEmpty()) + { + fQueue.wait(); + } } catch(Exception e) {