summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorknarf <knarf@17b73243-c579-4c4c-a9d2-2d5706c11dac>2009-06-19 04:16:58 +0000
committerknarf <knarf@17b73243-c579-4c4c-a9d2-2d5706c11dac>2009-06-19 04:16:58 +0000
commitda5894b104670dae36bd85cffcf97d54a3ca507e (patch)
tree3f4e37b24c3e5a05f03f5276d5b483e216b50ada
parent2e496d3dfb0ea33c1582683be296c26e781d8b6d (diff)
exit loop (not die) if no progress made. This can heppen if e.g. a dependency cannot be fulfilled (missing thorn) which is handled gracefully later (one hopes)
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4562 17b73243-c579-4c4c-a9d2-2d5706c11dac
-rw-r--r--lib/sbin/ProcessConfiguration.pl7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/sbin/ProcessConfiguration.pl b/lib/sbin/ProcessConfiguration.pl
index 27706b38..557a9003 100644
--- a/lib/sbin/ProcessConfiguration.pl
+++ b/lib/sbin/ProcessConfiguration.pl
@@ -124,12 +124,13 @@ sub ProcessConfiguration
map { $thorns_todo{"\U$_\E"} = 1; } sort keys %thorns;
my %requirements_done = ();
+ my $made_progress = 1;
# print "DEBUG: Processing thorn provisions:\n";
- while (keys %thorns_todo)
+ while (keys %thorns_todo and $made_progress)
{
# print "DEBUG: Thorns left to do: " . scalar(%thorns_todo) . "\n";
# map { print "DEBUG: - $_\n"; } sort keys %thorns_todo;
- my $made_progress = 0;
+ $made_progress = 0;
THORN: foreach $thorn (sort keys %thorns_todo)
{
# print "DEBUG: Checking thorn $thorn\n";
@@ -183,7 +184,7 @@ sub ProcessConfiguration
# print "DEBUG: Provided requirements: " . scalar($requirements_done) . "\n";
# map { print "DEBUG: - $_\n"; } sort keys %requirements_done;
# }
- die unless $made_progress;
+# die unless $made_progress;
}
}