summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java
diff options
context:
space:
mode:
authorSimon Rettberg2016-04-21 17:31:29 +0200
committerSimon Rettberg2016-04-21 17:31:29 +0200
commita79d8dbd95849a035c654f798d661ff006e9032a (patch)
tree42b51204a32dd24f2e0d2538ef7a0e753bf6e0f5 /src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java
parentMore imgsync stuff (diff)
downloadmaster-sync-shared-a79d8dbd95849a035c654f798d661ff006e9032a.tar.gz
master-sync-shared-a79d8dbd95849a035c654f798d661ff006e9032a.tar.xz
master-sync-shared-a79d8dbd95849a035c654f798d661ff006e9032a.zip
Truncate files if they are resumed and bigger than expected
Diffstat (limited to 'src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java')
-rw-r--r--src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java b/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java
index c2d8ee9..518a29f 100644
--- a/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java
+++ b/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java
@@ -88,6 +88,13 @@ public abstract class IncomingTransferBase extends AbstractTransfer implements H
tmpFileName = absFilePath;
tmpFileName.getParentFile().mkdirs();
tmpFileHandle = new RandomAccessFile( absFilePath, "rw" );
+ try {
+ if ( tmpFileHandle.length() > fileSize ) {
+ tmpFileHandle.setLength( fileSize );
+ }
+ } catch ( IOException e ) {
+ LOGGER.debug( "File " + tmpFileName + " is too long and could not be truncated" );
+ }
chunks = new ChunkList( fileSize, blockHashes );
}