< prev index next >

src/java.base/share/classes/java/util/zip/Inflater.java

Print this page

        

@@ -116,11 +116,11 @@
      * library in order to support certain optimizations.
      *
      * @param nowrap if true then support GZIP compatible compression
      */
     public Inflater(boolean nowrap) {
-        this.zsRef = InflaterZStreamRef.get(this, init(nowrap));
+        this.zsRef = InflaterZStreamRef.get(this, nowrap);
     }
 
     /**
      * Creates a new decompressor.
      */

@@ -440,13 +440,13 @@
     static class InflaterZStreamRef implements Runnable {
 
         private long address;
         private final Cleanable cleanable;
 
-        private InflaterZStreamRef(Inflater owner, long addr) {
+        private InflaterZStreamRef(Inflater owner, boolean nowrap) {
             this.cleanable = (owner != null) ? CleanerFactory.cleaner().register(owner, this) : null;
-            this.address = addr;
+            this.address = init(nowrap);
         }
 
         long address() {
             return address;
         }

@@ -468,27 +468,27 @@
          * overridden, uses {@code finalizer} mechanism for resource cleanup. So
          * {@code end} method can be called when the {@code Inflater} is unreachable.
          * This mechanism will be removed when the {@code finalize} method is
          * removed from {@code Inflater}.
          */
-        static InflaterZStreamRef get(Inflater owner, long addr) {
+        static InflaterZStreamRef get(Inflater owner, boolean nowrap) {
             Class<?> clz = owner.getClass();
             while (clz != Inflater.class) {
                 try {
                     clz.getDeclaredMethod("end");
-                    return new FinalizableZStreamRef(owner, addr);
+                    return new FinalizableZStreamRef(owner, nowrap);
                 } catch (NoSuchMethodException nsme) {}
                 clz = clz.getSuperclass();
             }
-            return new InflaterZStreamRef(owner, addr);
+            return new InflaterZStreamRef(owner, nowrap);
         }
 
         private static class FinalizableZStreamRef extends InflaterZStreamRef {
             final Inflater owner;
 
-            FinalizableZStreamRef(Inflater owner, long addr) {
-                super(null, addr);
+            FinalizableZStreamRef(Inflater owner, boolean nowrap) {
+                super(null, nowrap);
                 this.owner = owner;
             }
 
             @Override
             void clean() {
< prev index next >