From 2305d18e8d53dbbf341b580b60f9ed21f408bff1 Mon Sep 17 00:00:00 2001
From: Yagmur Eren <yagmur.eren@oracle.com>
Date: Thu, 5 Sep 2024 09:26:08 +0000
Subject: [PATCH] 8339384: Unintentional IOException in jdk.jdi module when
 JDWP end of stream occurs

Reviewed-by: cjplummer, kevinw
---
 src/jdk.jdi/share/classes/com/sun/tools/jdi/TargetVM.java | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/jdk.jdi/share/classes/com/sun/tools/jdi/TargetVM.java b/src/jdk.jdi/share/classes/com/sun/tools/jdi/TargetVM.java
index 2a9e4555099..5023a03d514 100644
--- a/src/jdk.jdi/share/classes/com/sun/tools/jdi/TargetVM.java
+++ b/src/jdk.jdi/share/classes/com/sun/tools/jdi/TargetVM.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2022, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2024, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -123,8 +123,9 @@ public class TargetVM implements Runnable {
                 byte b[] = connection.readPacket();
                 if (b.length == 0) {
                     done = true;
+                } else {
+                    p = Packet.fromByteArray(b);
                 }
-                p = Packet.fromByteArray(b);
             } catch (IOException e) {
                 done = true;
             }