From 9bf394f90ae336463894e3cf2f64783ce0a0a2ca Mon Sep 17 00:00:00 2001 From: ghidra1 Date: Mon, 24 Jan 2022 14:37:39 -0500 Subject: [PATCH] GP-1693 protect against NPE with BlockStreamServer --- .../java/ghidra/server/stream/BlockStreamServer.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Ghidra/Features/GhidraServer/src/main/java/ghidra/server/stream/BlockStreamServer.java b/Ghidra/Features/GhidraServer/src/main/java/ghidra/server/stream/BlockStreamServer.java index 1bac423eab..12de874d43 100644 --- a/Ghidra/Features/GhidraServer/src/main/java/ghidra/server/stream/BlockStreamServer.java +++ b/Ghidra/Features/GhidraServer/src/main/java/ghidra/server/stream/BlockStreamServer.java @@ -315,11 +315,12 @@ public class BlockStreamServer extends Thread { } else if (!(e instanceof EOFException)) { // silent on closed connection log.error("file block stream failed from " + socket.getInetAddress() + ": " + - e.getMessage()); + e.getMessage(), e); } } finally { - if (!success && (registration.blockStream instanceof InputBlockStream)) { + if (!success && (registration != null) && + (registration.blockStream instanceof InputBlockStream)) { // ensure input stream is closed since it can be terminated by client, // let client handle error if any try { @@ -337,7 +338,9 @@ public class BlockStreamServer extends Thread { // ignore } } - registration.state = HandlerConnectionState.CLOSED; + if (registration != null) { + registration.state = HandlerConnectionState.CLOSED; + } } }