소스 검색

Merge pull request #8554 from nextcloud/correctEtagCheck

Correct etag check/store when it has changed
Andy Scherzinger 4 년 전
부모
커밋
9b1d03181c
1개의 변경된 파일6개의 추가작업 그리고 1개의 파일을 삭제
  1. 6 1
      src/main/java/com/owncloud/android/operations/RefreshFolderOperation.java

+ 6 - 1
src/main/java/com/owncloud/android/operations/RefreshFolderOperation.java

@@ -243,6 +243,8 @@ public class RefreshFolderOperation extends RemoteOperation {
             if (result.isSuccess()) {
                 // request for the synchronization of KEPT-IN-SYNC file contents
                 startContentSynchronizations(mFilesToSyncContents);
+            } else {
+                mLocalFolder.setEtag("");
             }
 
             mLocalFolder.setLastSyncDateForData(System.currentTimeMillis());
@@ -370,7 +372,7 @@ public class RefreshFolderOperation extends RemoteOperation {
                 // check if remote and local folder are different
                 String remoteFolderETag = remoteFolder.getEtag();
                 if (remoteFolderETag != null) {
-                    mRemoteFolderChanged = !(remoteFolderETag.equalsIgnoreCase(mLocalFolder.getEtagOnServer()));
+                    mRemoteFolderChanged = !(remoteFolderETag.equalsIgnoreCase(mLocalFolder.getEtag()));
                 } else {
                     Log_OC.e(TAG, "Checked " + mAccount.name + remotePath + ": No ETag received from server");
                 }
@@ -464,6 +466,9 @@ public class RefreshFolderOperation extends RemoteOperation {
         // update richWorkspace
         mLocalFolder.setRichWorkspace(remoteFolder.getRichWorkspace());
 
+        // update eTag
+        mLocalFolder.setEtag(remoteFolder.getEtag());
+
         DecryptedFolderMetadata metadata = getDecryptedFolderMetadata(encryptedAncestor,
                                                                       mLocalFolder,
                                                                       getClient(),