Merge branch 'gingerbread' of git://github.com/CyanogenMod/android_vendor_cyanogen into gingerbread
diff --git a/prebuilt/common/bin/backuptool.sh b/prebuilt/common/bin/backuptool.sh
index dc4590a..39666ce 100755
--- a/prebuilt/common/bin/backuptool.sh
+++ b/prebuilt/common/bin/backuptool.sh
@@ -18,10 +18,18 @@
 }
 
 check_installscript() {
-   if [ -f "/tmp/.installscript" -a ! -f "$S/etc/force_backuptool" ];
+   if [ -f "/tmp/.installscript" ] && [ $PROCEED -ne 0 ];
    then
-      echo "/tmp/.installscript found. Skipping backuptool."
-      PROCEED=0;
+      # We have an install script, and ROM versions match!
+      # We now need to check and see if we have force_backup
+      # in either /etc or /tmp/backupdir 
+      if [ -f "$S/etc/force_backuptool" ] || [ -f "$C/force_backuptool" ];
+      then
+         echo "force_backuptool file found, Forcing backuptool."
+      else
+         echo "/tmp/.installscript found. Skipping backuptool."
+         PROCEED=0;
+      fi
    fi
 }
 
@@ -132,12 +140,11 @@
    fi
 }
 
-check_installscript;
-
 case "$1" in
    backup)
       mount $S
       check_prereq;
+      check_installscript;
       if [ $PROCEED -ne 0 ];
       then
          rm -rf $C
@@ -152,6 +159,7 @@
    ;;
    restore)
       check_prereq;
+      check_installscript;
       if [ $PROCEED -ne 0 ];
       then
          for file_list in get_files get_custom_files; do