diff --git a/src/me/neatmonster/spacertk/PanelListener.java b/src/me/neatmonster/spacertk/PanelListener.java index 607c0af..86d7df0 100644 --- a/src/me/neatmonster/spacertk/PanelListener.java +++ b/src/me/neatmonster/spacertk/PanelListener.java @@ -197,7 +197,12 @@ public void run() { } else { final Object result = interpret(string); if (result != null) - output.println(Utilities.addHeader(JSONValue.toJSONString(result))); + try { + output.println(Utilities.addHeader(JSONValue.toJSONString(result))); + } catch (OutOfMemoryError e) { + System.gc(); + output.println(Utilities.addHeader(null)); + } else output.println(Utilities.addHeader(null)); } @@ -209,7 +214,12 @@ else if (string.startsWith("multiple") && string.contains("?method=") && string. if (string.contains("&key=" + Utilities.crypt(method + SpaceRTK.getInstance().salt))) { final Object result = interpretm(string); if (result != null) - output.println(Utilities.addHeader(JSONValue.toJSONString(result))); + try { + output.println(Utilities.addHeader(JSONValue.toJSONString(result))); + } catch (OutOfMemoryError e) { + System.gc(); + output.println(Utilities.addHeader(null)); + } else output.println(Utilities.addHeader(null)); } else