Fix IllegalAccessError crash

This was crashing when served from a webapp due to "IllegalAccessError". Lambda expressions seem to make it happy.
This commit is contained in:
fourbites
2026-01-03 19:45:40 +01:00
parent 4185d621f8
commit b6a687d2fa
2 changed files with 32 additions and 40 deletions
@@ -870,11 +870,7 @@ public class Client
} }
// otherwise queue this notification up to run on the run queue thread // otherwise queue this notification up to run on the run queue thread
else { else {
_runQueue.postRunnable(new Runnable() { _runQueue.postRunnable(() -> _observers.apply(op));
public void run () {
_observers.apply(op);
}
});
} }
} }
@@ -894,8 +890,7 @@ public class Client
// CLIENT_DID_LOGOFF; that may not have been invoked yet, so we don't want to clear out our // CLIENT_DID_LOGOFF; that may not have been invoked yet, so we don't want to clear out our
// communicator reference immediately; instead we queue up a runnable unit to do so to // communicator reference immediately; instead we queue up a runnable unit to do so to
// ensure that it won't happen until CLIENT_DID_LOGOFF was dispatched // ensure that it won't happen until CLIENT_DID_LOGOFF was dispatched
_runQueue.postRunnable(new Runnable() { _runQueue.postRunnable(() -> {
public void run () {
// tell the object manager that we're no longer connected to the server // tell the object manager that we're no longer connected to the server
if (_omgr instanceof ClientDObjectMgr) { if (_omgr instanceof ClientDObjectMgr) {
((ClientDObjectMgr)_omgr).cleanup(); ((ClientDObjectMgr)_omgr).cleanup();
@@ -925,7 +920,6 @@ public class Client
} }
} }
}); });
}
}); });
} }
@@ -234,10 +234,8 @@ public class ClientDObjectMgr
_flusher.cancel(); _flusher.cancel();
_flushes.clear(); _flushes.clear();
_dead.clear(); _dead.clear();
_client.getRunQueue().postRunnable(new Runnable() { _client.getRunQueue().postRunnable(() -> {
public void run () {
_ocache.clear(); _ocache.clear();
}
}); });
} }