Add $ISODIR for correct mounting
[grml-debootstrap.git] / grml-debootstrap
index de15471..27955fb 100755 (executable)
@@ -96,7 +96,7 @@ while [ "$#" -gt "0" ] ; do
             ;;
         -i|--iso)
             shift
-           [ -n "$MIRROR"] && unset MIRROR
+           [ -n "$MIRROR" ] && unset MIRROR
             ISO=$1
             ;;
         -h|--help)
@@ -163,11 +163,12 @@ fi
 # make sure we have the right syntax when using an iso image
 case $ISO in
    file*) # do nothing
-    ;
+    ;;
    *)
     ISO=file:$1
     ;;
 esac
+ISODIR=${ISO##file:}
 
 # provide variables to chroot system
 touch /etc/debootstrap/variables
@@ -202,7 +203,7 @@ bailout(){
         [ -x "$MNTPOINT"/bin/umount ] && chroot "$MNTPOINT" umount -a    1>/dev/null 2>&1
         [ -x "$MNTPOINT"/bin/umount ] && chroot "$MNTPOINT" umount /proc 1>/dev/null 2>&1
         [ -x "$MNTPOINT"/bin/umount ] && chroot "$MNTPOINT" umount /proc 1>/dev/null 2>&1
-        [ -d "$TARGET/$ISO" ] && umount "$TARGET/$ISO"
+        [ -d "$MNTPOINT/$ISODIR" ] && umount "$MNTPOINT/$ISODIR" 1>/dev/null 2>&1
         einfo "Unmounting $MNTPOINT" ; umount "$MNTPOINT" ; eend $?
      fi
   fi
@@ -296,9 +297,9 @@ mount_target() {
        eend $?
      fi
   fi
-  if [ -n "$ISO" ] ; then
-     mkdir "$TARGET/$ISO"
-     mount --bind "$ISO" "$TARGET/$ISO"
+  if [ -n "$ISODIR" ] ; then
+     mkdir -p "$MNTPOINT/$ISODIR"
+     mount --bind "$ISODIR" "$MNTPOINT/$ISODIR"
   fi
 }
 # }}}