X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/63a3522ab7c8940ccc48be09e2247f86cbf60598..c2abbaaedb69dba35866a48b745b68f3519cbca1:/src/com/owncloud/android/syncadapter/FileSyncAdapter.java diff --git a/src/com/owncloud/android/syncadapter/FileSyncAdapter.java b/src/com/owncloud/android/syncadapter/FileSyncAdapter.java index ec8750c0..a0ca9881 100644 --- a/src/com/owncloud/android/syncadapter/FileSyncAdapter.java +++ b/src/com/owncloud/android/syncadapter/FileSyncAdapter.java @@ -27,6 +27,7 @@ import java.util.Map; import org.apache.jackrabbit.webdav.DavException; import com.owncloud.android.Log_OC; +import com.owncloud.android.MainApp; import com.owncloud.android.R; import com.owncloud.android.authentication.AuthenticatorActivity; import com.owncloud.android.datamodel.DataStorageManager; @@ -37,6 +38,8 @@ import com.owncloud.android.operations.SynchronizeFolderOperation; import com.owncloud.android.operations.UpdateOCVersionOperation; import com.owncloud.android.operations.RemoteOperationResult.ResultCode; import com.owncloud.android.ui.activity.ErrorsWhileCopyingHandlerActivity; + + import android.accounts.Account; import android.accounts.AccountsException; import android.app.Notification; @@ -218,8 +221,13 @@ public class FileSyncAdapter extends AbstractOwnCloudSyncAdapter { List children = synchFolderOp.getChildren(); fetchChildren(children); // beware of the 'hidden' recursion here! + sendStickyBroadcast(true, remotePath, null); + } else { - if (result.getCode() == RemoteOperationResult.ResultCode.UNAUTHORIZED) { + if (result.getCode() == RemoteOperationResult.ResultCode.UNAUTHORIZED || + // (result.isTemporalRedirection() && result.isIdPRedirection() && + ( result.isIdPRedirection() && + MainApp.getAuthTokenTypeSamlSessionCookie().equals(getClient().getAuthTokenType()))) { mSyncResult.stats.numAuthExceptions++; } else if (result.getException() instanceof DavException) { @@ -263,8 +271,12 @@ public class FileSyncAdapter extends AbstractOwnCloudSyncAdapter { OCFile newFile = files.get(i); if (newFile.isDirectory()) { fetchData(newFile.getRemotePath(), newFile.getFileId()); + + // Update folder size on DB + getStorageManager().calculateFolderSize(newFile.getFileId()); } } + if (mCancellation && i