changeset 10984:7e8459e7a45c jdk8u51-b09

8076401: Serialize OIS data Reviewed-by: alanb, chegar
author igerasim
date Mon, 20 Apr 2015 15:07:16 +0300
parents e0bf010f895b
children a8718a2e9ccd
files src/share/classes/java/io/ObjectInputStream.java
diffstat 1 files changed, 4 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/classes/java/io/ObjectInputStream.java	Mon Apr 20 15:17:22 2015 +0300
+++ b/src/share/classes/java/io/ObjectInputStream.java	Mon Apr 20 15:07:16 2015 +0300
@@ -1887,10 +1887,9 @@
             ObjectStreamClass slotDesc = slots[i].desc;
 
             if (slots[i].hasData) {
-                if (obj != null &&
-                    slotDesc.hasReadObjectMethod() &&
-                    handles.lookupException(passHandle) == null)
-                {
+                if (obj == null || handles.lookupException(passHandle) != null) {
+                    defaultReadFields(null, slotDesc); // skip field values
+                } else if (slotDesc.hasReadObjectMethod()) {
                     SerialCallbackContext oldContext = curContext;
                     if (oldContext != null)
                         oldContext.check();
@@ -1924,6 +1923,7 @@
                 } else {
                     defaultReadFields(obj, slotDesc);
                 }
+
                 if (slotDesc.hasWriteObjectData()) {
                     skipCustomData();
                 } else {