Changeset 332
- Timestamp:
- 10/30/2007 10:26:05 PM
- Files:
-
- trunk/script/Vss2Svn/Dumpfile.pm (modified) (1 diff)
- trunk/script/Vss2Svn/Dumpfile/LabelMapper.pm (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/script/Vss2Svn/Dumpfile.pm
r325 r332 617 617 618 618 if (defined $self->{label_mapper}) { 619 $labeldir = $self->{label_mapper}->remap ($main::gCfg{labeldir}, $label); 619 my $mapping = $self->{label_mapper}->remap ($main::gCfg{labeldir}, $label); 620 $labeldir = $mapping->{replacement} if $mapping->{is_labeldir}; 621 $label = $mapping->{replacement} unless $mapping->{is_labeldir}; 620 622 } 621 623 $labeldir =~ s:\\:/:g; trunk/script/Vss2Svn/Dumpfile/LabelMapper.pm
r327 r332 4 4 use strict; 5 5 use Config::Ini; 6 use Text::Glob;7 6 8 7 ############################################################################### … … 12 11 my($class, $conf) = @_; 13 12 14 my $self = 15 { 16 config => new Config::Ini( $conf, -commentdelim => "#" ), 17 }; 13 my $config = new Config::Ini( $conf, -commentdelim => "#" ); 14 my $self = (); 18 15 19 $self->{labels} = $ self->{config}->get (['labels']);16 $self->{labels} = $config->get (['labels']); 20 17 21 18 $self = bless($self, $class); … … 30 27 my($self, $labeldir, $label) = @_; 31 28 32 my ($glob, $remap); 33 29 30 my $retval = (); 31 $retval->{is_labeldir} = 1; 32 $retval->{replacement} = $labeldir; 33 34 34 # we need to reset the following each enumeration if we aborted the 35 35 # previous one with a premature return 36 my $dummy =keys %{$self->{labels}};36 keys %{$self->{labels}}; 37 37 38 while (($glob, $remap) = each %{ $self->{labels} }) { 39 if ( $label =~ /$glob/) { 40 if ($remap->[0] =~ m:^/:) { 41 # print "remap label: $label to $remap->[0]\n"; 42 return $remap->[0]; 43 } 44 else { 45 # print "remap label: $label to $labeldir/$remap->[0]\n"; 46 return $labeldir . "/" . $remap->[0]; 47 } 48 38 my ($label_path, $remap); 39 while (($label_path, $remap) = each %{ $self->{labels} }) { 40 if ( $label =~ /$label_path/) { 41 $retval->{replacement} = $remap->[0]; 42 $retval->{is_labeldir} = ($remap->[0] =~ m:^/:); 43 last; 49 44 } 50 45 } 51 # print "$label not remaped\n"; 52 return $labeldir;46 47 return $retval; 53 48 } 54 49
