From 642591226c57f1902e6d159c0dea5bbee2afc572 Mon Sep 17 00:00:00 2001 From: Tails developers Date: Fri, 2 Mar 2012 15:26:03 +0100 Subject: Refactor closing of persistent devices upon failure. Errors can occur at various places so it's best to just do it once in a consistent manner. --- scripts/live | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'scripts/live') diff --git a/scripts/live b/scripts/live index a24da07..e248937 100755 --- a/scripts/live +++ b/scripts/live @@ -1228,9 +1228,19 @@ setup_unionfs () [ -n "${DEBUG}" ] && cp ${custom_mounts} "${rootmnt}/live/persistent" # Now we do the actual mounting (and symlinking) - do_custom_mounts ${custom_mounts} + local used_overlays="" + used_overlays=$(activate_custom_mounts ${custom_mounts}) rm ${custom_mounts} + # Close unused overlays (e.g. due to missing $persistence_list) + for overlay in ${overlay_devices} + do + if echo ${used_overlays} | grep -qve "^\(.* \)\?${device}\( .*\)\?$" + then + close_persistent_media ${overlay} + fi + done + # Look for other snapshots to copy in try_snap "${root_snapdata}" "${rootmnt}" "ROOT" # This second type should be removed when snapshot grow smarter -- cgit v1.2.3