[package] base-files: Add support for assigning multiple IPv6 addresses on an interface
[openwrt.git] / scripts / env
index 642a329..ebfbb70 100755 (executable)
@@ -119,12 +119,12 @@ env_revert() {
 }
 
 env_ask_sync() {
+       env_sync_data
        LINES="$(env_diff | wc -l)" # implies env_init
        [ "$LINES" -gt 0 ] && {
                if ask_bool 1 "Do you want to save your changes"; then
                        env_sync
                else
-                       env_sync_data
                        env_do_reset
                fi
        }
@@ -138,7 +138,7 @@ env_clear() {
        env_sync_data
        if ask_bool 1 "Do you want to keep your current config and files"; then
                mkdir -p "$BASEDIR/files"
-               cp -a "$ENVDIR/files/*" "$BASEDIR/files" 2>/dev/null >/dev/null
+               cp -a "$ENVDIR/files/"* "$BASEDIR/files" 2>/dev/null >/dev/null
                cp "$ENVDIR/.config" "$BASEDIR/"
        else
                rm -rf "$BASEDIR/files" "$BASEDIR/.config"
@@ -192,7 +192,8 @@ env_new() {
        if [ -f "$BASEDIR/.config" -o -d "$BASEDIR/files" ]; then
                if ask_bool 1 "Do you want to keep your current config and files?"; then
                        [ -d "$BASEDIR/files" -a \! -L "$BASEDIR/files" ] && {
-                               mv "$BASEDIR/files/"* "$ENVDIR/" 2>/dev/null
+                               mkdir -p "$ENVDIR/files"
+                               mv "$BASEDIR/files/"* "$ENVDIR/files/" 2>/dev/null
                                rmdir "$BASEDIR/files"
                        }
                        env_sync
This page took 0.024826 seconds and 4 git commands to generate.