diff options
author | knarf <knarf@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2009-06-19 04:16:58 +0000 |
---|---|---|
committer | knarf <knarf@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2009-06-19 04:16:58 +0000 |
commit | da5894b104670dae36bd85cffcf97d54a3ca507e (patch) | |
tree | 3f4e37b24c3e5a05f03f5276d5b483e216b50ada | |
parent | 2e496d3dfb0ea33c1582683be296c26e781d8b6d (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.pl | 7 |
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; } } |