mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-01 05:15:43 +02:00
[228126] Traditional Rendering: ViewportCache.run() synchronization problem
This commit is contained in:
parent
29db111c61
commit
13f05bc71c
1 changed files with 8 additions and 8 deletions
|
@ -727,9 +727,9 @@ public class Rendering extends Composite implements IDebugEventSetListener
|
||||||
public void dispose()
|
public void dispose()
|
||||||
{
|
{
|
||||||
fDisposed = true;
|
fDisposed = true;
|
||||||
synchronized(this)
|
synchronized(fQueue)
|
||||||
{
|
{
|
||||||
this.notify();
|
fQueue.notify();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -789,10 +789,7 @@ public class Rendering extends Composite implements IDebugEventSetListener
|
||||||
fQueue.addElement(element);
|
fQueue.addElement(element);
|
||||||
fLastQueued = element;
|
fLastQueued = element;
|
||||||
}
|
}
|
||||||
}
|
fQueue.notify();
|
||||||
synchronized(this)
|
|
||||||
{
|
|
||||||
this.notify();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -836,11 +833,14 @@ public class Rendering extends Composite implements IDebugEventSetListener
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
synchronized(this)
|
synchronized(fQueue)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
this.wait();
|
if(fQueue.isEmpty())
|
||||||
|
{
|
||||||
|
fQueue.wait();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch(Exception e)
|
catch(Exception e)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue