fix display of uploader progress to reach 100%

This commit is contained in:
Zlatin Balevsky
2019-10-29 01:00:59 +00:00
parent c4095abdb4
commit 6c806c4441
3 changed files with 8 additions and 1 deletions

View File

@@ -20,6 +20,8 @@ class ContentUploader extends Uploader {
private final ContentRequest request
private final Mesh mesh
private final int pieceSize
private volatile boolean done
ContentUploader(File file, ContentRequest request, Endpoint endpoint, Mesh mesh, int pieceSize) {
super(endpoint)
@@ -71,6 +73,7 @@ class ContentUploader extends Uploader {
}
endpoint.getOutputStream().write(tmp, 0, read)
}
done = true
} finally {
try {channel?.close() } catch (IOException ignored) {}
endpoint.getOutputStream().flush()
@@ -100,7 +103,7 @@ class ContentUploader extends Uploader {
@Override
public synchronized int getProgress() {
if (mapped == null)
return 0
return done ? 100 : 0
int position = mapped.position()
int total = request.getRange().end - request.getRange().start
(int)(position * 100.0 / total)