Fixed: synchronized on client UI

This commit is contained in:
rubenpirreram
2026-05-15 17:10:30 +02:00
parent d4b8de9e4f
commit 2c65ce0aa7
3 changed files with 49 additions and 41 deletions
@@ -53,11 +53,14 @@ public class ClientCallbackImpl extends UnicastRemoteObject implements IClientCa
*/
@Override
public void onAction(NetworkEvent event) throws RemoteException {
if(event.getIsError()) {
clientController.view.showError(event.toString());
} else {
event.apply(clientController.miniModel);
clientController.view.render();
synchronized (clientController)
{
if(event.getIsError()) {
clientController.view.showError(event.toString());
} else {
event.apply(clientController.miniModel);
clientController.view.render();
}
}
}
}
@@ -156,17 +156,19 @@ public class TCPClient implements IClient {
e.printStackTrace();
break;
}
if (read instanceof NetworkEvent event) {
if (event.getIsError()) {
controller.view.showError(event.toString());
} else {
event.apply(controller.miniModel);
synchronized (controller) {
if (read instanceof NetworkEvent event) {
if (event.getIsError()) {
controller.view.showError(event.toString());
} else {
event.apply(controller.miniModel);
controller.view.render();
}
} else if (read instanceof MiniModel model) {
controller.setModel(model);
controller.view.render();
}
} else if (read instanceof MiniModel model) {
controller.setModel(model);
controller.view.render();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();