diff options
author | elliott_c <ocielliottc@users.noreply.github.com> | 2003-09-15 11:43:21 +0000 |
---|---|---|
committer | elliott_c <ocielliottc@users.noreply.github.com> | 2003-09-15 11:43:21 +0000 |
commit | 6813f34eac840bdffb36048384d0cf2860898800 (patch) | |
tree | 865ba459994b96ca4bfac527619376e012da2d26 | |
parent | eca70b21ffcb2ca6f96e322610ed510a60dff666 (diff) | |
download | ATCD-6813f34eac840bdffb36048384d0cf2860898800.tar.gz |
ChangeLogTag: Mon Sep 15 06:42:28 2003 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | bin/MakeProjectCreator/modules/WorkspaceCreator.pm | 48 |
2 files changed, 33 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog index e5dd49ec8d4..45fd649ba51 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Mon Sep 15 06:42:28 2003 Chad Elliott <elliott_c@ociweb.com> + + * bin/MakeProjectCreator/modules/WorkspaceCreator.pm: + + Added a check in the dependency sorter for an undefined dependency + value (this only happended with the vc7 and vc71 types). + Fri Sep 12 13:31:50 2003 Chad Elliott <elliott_c@ociweb.com> * bin/MakeProjectCreator/modules/WorkspaceCreator.pm: diff --git a/bin/MakeProjectCreator/modules/WorkspaceCreator.pm b/bin/MakeProjectCreator/modules/WorkspaceCreator.pm index c7d5dde75b2..dc1af5c1091 100644 --- a/bin/MakeProjectCreator/modules/WorkspaceCreator.pm +++ b/bin/MakeProjectCreator/modules/WorkspaceCreator.pm @@ -1303,34 +1303,38 @@ sub get_validated_ordering { my($project) = shift; my($warn) = shift; my($pjs) = $self->get_project_info(); - - my($name, $deps) = @{$$pjs{$project}}; - if (defined $deps && $deps ne '') { - my($darr) = $self->create_array($deps); - my($projects) = $self->get_projects(); - foreach my $dep (@$darr) { - my($found) = 0; - ## Avoid circular dependencies - if ($dep ne $name && $dep ne basename($project)) { - foreach my $p (@$projects) { - if ($dep eq $$pjs{$p}->[0] || $dep eq basename($p)) { - $found = 1; - last; + my($name) = undef; + my($deps) = ''; + + if (defined $$pjs{$project}) { + ($name, $deps) = @{$$pjs{$project}}; + if (defined $deps && $deps ne '') { + my($darr) = $self->create_array($deps); + my($projects) = $self->get_projects(); + foreach my $dep (@$darr) { + my($found) = 0; + ## Avoid circular dependencies + if ($dep ne $name && $dep ne basename($project)) { + foreach my $p (@$projects) { + if ($dep eq $$pjs{$p}->[0] || $dep eq basename($p)) { + $found = 1; + last; + } } - } - if (!$found) { - if ($warn && defined $ENV{MPC_VERBOSE_ORDERING}) { - print "WARNING: '$name' references '$dep' which has " . - "not been processed\n"; + if (!$found) { + if ($warn && defined $ENV{MPC_VERBOSE_ORDERING}) { + print "WARNING: '$name' references '$dep' which has " . + "not been processed\n"; + } + $deps =~ s/\s*"$dep"\s*/ /g; } - $deps =~ s/\s*"$dep"\s*/ /g; } } } - } - $deps =~ s/^\s+//; - $deps =~ s/\s+$//; + $deps =~ s/^\s+//; + $deps =~ s/\s+$//; + } return $deps; } |