summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCody A.W. Somerville <cody.somerville@canonical.com>2011-07-20 08:46:11 +0200
committerDaniel Baumann <daniel@debian.org>2011-07-20 09:06:10 +0200
commit2610155ec6f65f82b8a0881629d07935a79816c5 (patch)
tree5a64e611148f5cc7dc146dbef809c5e2ee9be7e1
parent5a7f579561cfce81e48b8481341f1c30d1ab29f0 (diff)
downloadlive-build-2610155ec6f65f82b8a0881629d07935a79816c5.zip
live-build-2610155ec6f65f82b8a0881629d07935a79816c5.tar.gz
Fixing corruption of usb binary images caused by trying to modify flags in partition table when image is mounted with offset.
-rwxr-xr-xscripts/build/lb_binary_usb24
1 files changed, 18 insertions, 6 deletions
diff --git a/scripts/build/lb_binary_usb b/scripts/build/lb_binary_usb
index 51e6ca7..8a168c3 100755
--- a/scripts/build/lb_binary_usb
+++ b/scripts/build/lb_binary_usb
@@ -190,16 +190,10 @@ esac
case "${LB_BUILD_WITH_CHROOT}" in
true)
Chroot chroot "mkfs.${MKFS} ${MKFS_OPTIONS} ${FREELO}"
-
- Chroot chroot "parted -s ${FREELO} set 1 boot on" || true
- Chroot chroot "parted -s ${FREELO} set 1 lba off" || true
;;
false)
mkfs.${MKFS} ${MKFS_OPTIONS} ${FREELO}
-
- parted -s ${FREELO} set 1 boot on || true
- parted -s ${FREELO} set 1 lba off || true
;;
esac
@@ -265,6 +259,24 @@ ${LB_LOSETUP} -d ${FREELO}
echo "!!! The above error/warning messages can be ignored !!!"
+FREELO="$(${LB_LOSETUP} -f)"
+Losetup "${FREELO}" chroot/binary.img 0
+
+case "${LB_BUILD_WITH_CHROOT}" in
+ true)
+ Chroot chroot "parted -s ${FREELO} set 1 boot on" || true
+ Chroot chroot "parted -s ${FREELO} set 1 lba off" || true
+ ;;
+
+ false)
+ parted -s "${FREELO}" set 1 boot on || true
+ parted -s "${FREELO}" set 1 lba off || true
+ ;;
+esac
+
+sleep 1
+${LB_LOSETUP} -d ${FREELO}
+
if [ -n "${MAKEDEV}" ]
then
rm -rf chroot/dev