Revert changes

Signed-off-by: alperozturk <alper_ozturk@proton.me>
This commit is contained in:
alperozturk 2024-04-11 12:37:12 +02:00 committed by Alper Öztürk
parent a563c87b01
commit d583a2f62c
1 changed files with 19 additions and 10 deletions

View File

@ -439,6 +439,7 @@ public class UploadFileOperation extends SyncOperation {
@SuppressLint("AndroidLintUseSparseArrays") // gson cannot handle sparse arrays easily, therefore use hashmap
private RemoteOperationResult encryptedUpload(OwnCloudClient client, OCFile parentFile) {
RemoteOperationResult result = null;
File temporalFile = null;
File originalFile = new File(mOriginalStoragePath);
File expectedFile = null;
File encryptedTempFile = null;
@ -579,14 +580,14 @@ public class UploadFileOperation extends SyncOperation {
String temporalPath = FileStorageUtils.getInternalTemporalPath(user.getAccountName(), mContext) +
mFile.getRemotePath();
mFile.setStoragePath(temporalPath);
encryptedTempFile = new File(temporalPath);
temporalFile = new File(temporalPath);
Files.deleteIfExists(Paths.get(temporalPath));
result = copy(originalFile, encryptedTempFile);
result = copy(originalFile, temporalFile);
if (result.isSuccess()) {
if (encryptedTempFile.length() == originalFile.length()) {
channel = new RandomAccessFile(encryptedTempFile.getAbsolutePath(), "rw").getChannel();
if (temporalFile.length() == originalFile.length()) {
channel = new RandomAccessFile(temporalFile.getAbsolutePath(), "rw").getChannel();
fileLock = channel.tryLock();
} else {
result = new RemoteOperationResult(ResultCode.LOCK_FAILED);
@ -731,6 +732,9 @@ public class UploadFileOperation extends SyncOperation {
}
}
if (temporalFile != null && !originalFile.equals(temporalFile)) {
temporalFile.delete();
}
if (result == null) {
result = new RemoteOperationResult(ResultCode.UNKNOWN_ERROR);
}
@ -749,12 +753,6 @@ public class UploadFileOperation extends SyncOperation {
result = unlockFolderResult;
}
if (result.isSuccess()) {
handleSuccessfulUpload(encryptedTempFile, expectedFile, originalFile, client);
} else if (result.getCode() == ResultCode.SYNC_CONFLICT) {
getStorageManager().saveConflict(mFile, mFile.getEtagInConflict());
}
if (encryptedTempFile != null) {
boolean isTempEncryptedFileDeleted = encryptedTempFile.delete();
Log_OC.e(TAG, "isTempEncryptedFileDeleted: " + isTempEncryptedFileDeleted);
@ -763,6 +761,17 @@ public class UploadFileOperation extends SyncOperation {
}
}
if (result.isSuccess()) {
handleSuccessfulUpload(temporalFile, expectedFile, originalFile, client);
} else if (result.getCode() == ResultCode.SYNC_CONFLICT) {
getStorageManager().saveConflict(mFile, mFile.getEtagInConflict());
}
// delete temporal file
if (temporalFile != null && temporalFile.exists() && !temporalFile.delete()) {
Log_OC.e(TAG, "Could not delete temporal file " + temporalFile.getAbsolutePath());
}
return result;
}