Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 71f93d89 authored by Jorge Ruesga's avatar Jorge Ruesga
Browse files

CMFM: Fix move infinite loop

Change-Id: I5cc56e2053df4502673a553fa8e5abb82069569d
JIRA: CYAN-2791
Issue: https://jira.cyanogenmod.org/browse/CYAN-2791


Signed-off-by: default avatarJorge Ruesga <jorge@ruesga.com>
parent e38d9f1f
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -349,7 +349,6 @@ public final class CopyMoveActionPolicy extends ActionsPolicy {
             * @param dst The destination file
             * @param operation Indicates the operation to do
             */
            @SuppressWarnings("hiding")
            private void doOperation(
                    Context ctx, File src, File dst, COPY_MOVE_OPERATION operation)
                    throws Throwable {
@@ -357,18 +356,23 @@ public final class CopyMoveActionPolicy extends ActionsPolicy {
                if (src.compareTo(dst) == 0) return;

                try {
                    // Be sure to append a / if source is a folder (otherwise system crashes
                    // under using absolute paths) Issue: CYAN-2791
                    String source = src.getAbsolutePath() +
                            (src.isDirectory() ? File.separator : "");

                    // Copy or move?
                    if (operation.compareTo(COPY_MOVE_OPERATION.MOVE) == 0 ||
                            operation.compareTo(COPY_MOVE_OPERATION.RENAME) == 0) {
                        CommandHelper.move(
                                ctx,
                                src.getAbsolutePath(),
                                source,
                                dst.getAbsolutePath(),
                                null);
                    } else {
                        CommandHelper.copy(
                                ctx,
                                src.getAbsolutePath(),
                                source,
                                dst.getAbsolutePath(),
                                null);
                    }