diff --git a/baas/dup_calls.js b/baas/dup_calls.js
index c7c22032dc065be30dba341d0bfc8fa546ec6bc4..fb17dfb9ddf2ce5cb6a44d90fc56c530162f2f1f 100644
--- a/baas/dup_calls.js
+++ b/baas/dup_calls.js
@@ -259,13 +259,6 @@ function call_duplicity(mode, backup_set, force) {
         if(parse_cloud_error(data)) cloud_error = true;
         if(mode == "backup") {
             toggle_msgs(data, "msg");
-            disable_form(false);
-            disable_actions(true);
-            backup_set.last_status = "Failed";
-            if(!cloud_error) {
-                show_alert_box("There was a problem uploading backup set",
-                    "error", false);
-            }
         } else if(mode == "restore") {
             if(!cloud_error) {
                 check_restore_errors(data);
@@ -289,6 +282,14 @@ function call_duplicity(mode, backup_set, force) {
                 $("#inc").prop("disabled", false);
                 $("#inc").prop("checked", true);
                 disable_actions(false);
+            } else {
+                if(typeof backup_set.first_backup == 'undefined') {
+                    disable_form(false);
+                }
+                disable_actions(true);
+                backup_set.last_status = "Failed";
+                show_alert_box("There was a problem uploading backup set",
+                    "error", false);
             }
             disable_buttons(false);
             write_conf_file(BACKUP_CONF_FILE, backups);