diff options
author | elliott_c <ocielliottc@users.noreply.github.com> | 2003-06-20 13:55:44 +0000 |
---|---|---|
committer | elliott_c <ocielliottc@users.noreply.github.com> | 2003-06-20 13:55:44 +0000 |
commit | cfd8cb4af625f74d51a679d788f46fd2a24e7876 (patch) | |
tree | 24cbc6e54323e9dbda4b44b4a9a2c3dda14c8a6e | |
parent | ffde12438c348d34433a81926b09f632ea6cc78c (diff) | |
download | MPC-cfd8cb4af625f74d51a679d788f46fd2a24e7876.tar.gz |
ChangeLogTag: Fri Jun 20 08:54:29 2003 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r-- | modules/ProjectCreator.pm | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/modules/ProjectCreator.pm b/modules/ProjectCreator.pm index c9da93d0..fa3549f7 100644 --- a/modules/ProjectCreator.pm +++ b/modules/ProjectCreator.pm @@ -215,12 +215,7 @@ sub parse_line { $self->generate_defaults(); ## Fill in type specific assignments - my($tsa) = $self->{'type_specific_assign'}->{$self->{'pctype'}}; - if (defined $tsa) { - foreach my $key (keys %$tsa) { - $self->process_assignment_add($key, $$tsa{$key}); - } - } + $self->process_type_specific_assignments(); ## Perform any additions, subtractions ## or overrides for the project values. @@ -248,9 +243,14 @@ sub parse_line { if ($status) { ## Now add in the features that have been defined $self->{$typecheck} = 0; + $self->{'type_specific_assign'} = {}; ($status, $errorString) = $self->process_features(); if ($status) { + ## If the feature added any type specific assignments + ## then we need to processs them before we write the project + $self->process_type_specific_assignments(); + ## End of project; Write out the file. ($status, $errorString) = $self->write_project(); } @@ -737,6 +737,18 @@ sub process_features { } +sub process_type_specific_assignments { + my($self) = shift; + my($tsa) = $self->{'type_specific_assign'}->{$self->{'pctype'}}; + + if (defined $tsa) { + foreach my $key (keys %$tsa) { + $self->process_assignment_add($key, $$tsa{$key}); + } + } +} + + sub process_array_assignment { my($self) = shift; my($aref) = shift; |