mirror of
https://github.com/topjohnwu/Magisk.git
synced 2024-12-25 13:37:39 +00:00
Wrap wrapper with buffer
This commit is contained in:
parent
186bd11463
commit
e140481f14
@ -11,6 +11,7 @@ import android.widget.Toast;
|
||||
|
||||
import com.topjohnwu.magisk.FlashActivity;
|
||||
import com.topjohnwu.magisk.R;
|
||||
import com.topjohnwu.magisk.container.InputStreamWrapper;
|
||||
import com.topjohnwu.magisk.utils.Shell;
|
||||
import com.topjohnwu.magisk.utils.Utils;
|
||||
import com.topjohnwu.magisk.utils.WebService;
|
||||
@ -116,7 +117,7 @@ public class ProcessRepoZip extends ParallelTask<Void, Object, Boolean> {
|
||||
break;
|
||||
} while (true);
|
||||
|
||||
InputStream in = new ProgressUpdateInputStream(conn.getInputStream());
|
||||
InputStream in = new BufferedInputStream(new ProgressInputStream(conn.getInputStream()));
|
||||
|
||||
// Temp files
|
||||
File temp1 = new File(activity.getCacheDir(), "1.zip");
|
||||
@ -186,9 +187,9 @@ public class ProcessRepoZip extends ParallelTask<Void, Object, Boolean> {
|
||||
return this;
|
||||
}
|
||||
|
||||
private class ProgressUpdateInputStream extends BufferedInputStream {
|
||||
private class ProgressInputStream extends InputStreamWrapper {
|
||||
|
||||
ProgressUpdateInputStream(@NonNull InputStream in) {
|
||||
ProgressInputStream(InputStream in) {
|
||||
super(in);
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,59 @@
|
||||
package com.topjohnwu.magisk.container;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
|
||||
public class InputStreamWrapper extends InputStream {
|
||||
private InputStream in;
|
||||
|
||||
public InputStreamWrapper(InputStream in) {
|
||||
this.in = in;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int available() throws IOException {
|
||||
return in.available();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void close() throws IOException {
|
||||
in.close();
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void mark(int readlimit) {
|
||||
in.mark(readlimit);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean markSupported() {
|
||||
return in.markSupported();
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized int read() throws IOException {
|
||||
return in.read();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int read(@NonNull byte[] b) throws IOException {
|
||||
return read(b, 0, b.length);
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized int read(@NonNull byte[] b, int off, int len) throws IOException {
|
||||
return in.read(b, off, len);
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void reset() throws IOException {
|
||||
in.reset();
|
||||
}
|
||||
|
||||
@Override
|
||||
public long skip(long n) throws IOException {
|
||||
return in.skip(n);
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user