jdk/src/java.base/share/classes/java/io/ObjectInputStream.java
changeset 33403 d2bfc26f26cc
parent 32649 2ee9017c7597
child 33674 566777f73c32
--- a/jdk/src/java.base/share/classes/java/io/ObjectInputStream.java	Tue Oct 27 20:06:02 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/io/ObjectInputStream.java	Wed Oct 28 12:35:54 2015 +0100
@@ -3383,10 +3383,11 @@
          * Registers a dependency (in exception status) of one handle on
          * another.  The dependent handle must be "open" (i.e., assigned, but
          * not finished yet).  No action is taken if either dependent or target
-         * handle is NULL_HANDLE.
+         * handle is NULL_HANDLE. Additionally, no action is taken if the
+         * dependent and target are the same.
          */
         void markDependency(int dependent, int target) {
-            if (dependent == NULL_HANDLE || target == NULL_HANDLE) {
+            if (dependent == target || dependent == NULL_HANDLE || target == NULL_HANDLE) {
                 return;
             }
             switch (status[dependent]) {