mirror of
https://github.com/Eaglercraft-TeaVM-Fork/eagler-teavm.git
synced 2024-12-22 08:14:09 -08:00
JS: fix bug in compilation of monitorenter instruction
This commit is contained in:
parent
5d9d64303e
commit
75d06bebbf
|
@ -161,7 +161,8 @@ public class AsyncMethodFinder {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hasAsyncMethods && methodRef.getClassName().equals("java.lang.Object")
|
if (!hasAsyncMethods && methodRef.getClassName().equals("java.lang.Object")
|
||||||
&& (methodRef.getName().equals("monitorEnter") || methodRef.getName().equals("monitorExit"))) {
|
&& (methodRef.getName().equals("monitorEnter") || methodRef.getName().equals("monitorExit"))
|
||||||
|
&& methodRef.parameterCount() == 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
for (CallSite callSite : node.getCallerCallSites()) {
|
for (CallSite callSite : node.getCallerCallSites()) {
|
||||||
|
|
|
@ -433,14 +433,14 @@ public class VMTest {
|
||||||
|
|
||||||
public synchronized void doWait() {
|
public synchronized void doWait() {
|
||||||
new Thread(() -> {
|
new Thread(() -> {
|
||||||
synchronized (AsyncClinitClass.this) {
|
synchronized (this) {
|
||||||
notify();
|
notify();
|
||||||
}
|
}
|
||||||
}).start();
|
}).start();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Thread.sleep(1);
|
Thread.sleep(1);
|
||||||
synchronized (AsyncClinitClass.this) {
|
synchronized (this) {
|
||||||
wait();
|
wait();
|
||||||
}
|
}
|
||||||
} catch (InterruptedException ie) {
|
} catch (InterruptedException ie) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user