diff -rup initramfs_orig/scripts/live initramfs/scripts/live
--- initramfs_orig/scripts/live	2008-12-06 12:33:00.676619000 +0000
+++ initramfs/scripts/live	2008-12-06 12:52:05.938629568 +0000
@@ -92,6 +92,11 @@ Arguments ()
 				export HOSTNAME LIVECONF
 				;;
 
+			findiso=*)
+				FINDISO="${ARGUMENT#findiso=}"
+				export FINDISO
+				;;
+
 			isofrom=*|fromiso=*)
 				FROMISO="${ARGUMENT#*=}"
 				export FROMISO
@@ -1365,6 +1370,17 @@ check_dev ()
 	if is_supported_fs ${fstype}
 	then
 		mount -t ${fstype} -o ro,noatime "${devname}" ${mountpoint} || continue
+		if [ -n "${FINDISO}" ]
+		then
+			if [ -f ${mountpoint}${FINDISO} ]; then
+				umount ${mountpoint}
+				mkdir /live/findiso -p
+				mount -t ${fstype} -o ro,noatime "${devname}" /live/findiso
+				loopdevname=$(setup_loop "/live/findiso${FINDISO}" "loop" "/sys/block/loop*" "" '')
+				devname="${loopdevname}"
+				mount -t iso9660 -o ro,noatime "${devname}" ${mountpoint}
+			fi
+		fi
 
 		if is_live_path ${mountpoint} && \
 			([ "${skip_uuid_check}" ] || matches_uuid ${mountpoint})
diff -rup initramfs_orig/scripts/live-bottom/05mountpoints initramfs/scripts/live-bottom/05mountpoints
--- initramfs_orig/scripts/live-bottom/05mountpoints	2008-12-06 14:30:05.486694000 +0000
+++ initramfs/scripts/live-bottom/05mountpoints	2008-12-06 14:41:26.346606201 +0000
@@ -38,4 +38,11 @@ if [ -n "$MOUNTED_ON" ] ; then
    echo "   -> Mounted live system on $MOUNTED_ON">/dev/console
 fi
 
+# Move findiso directory to the new root filesystem so that programs there can get at it.
+if [ -d /live/findiso -a ! -d /root/live/findiso ]
+then
+	mkdir -p /root/live/findiso
+	mount -n --move /live/findiso /root/live/findiso
+fi
+
 log_end_msg
