stas        2002/06/16 19:58:22

  Modified:    lib/DocSet RunTime.pm Util.pm
  Log:
  DocSet sync:
  - provide a fix for File::Spec->abs2rel for WIN32 [Per Einar Ellefsen
    <[EMAIL PROTECTED]>]
  
  Revision  Changes    Path
  1.9       +5 -3      modperl-docs/lib/DocSet/RunTime.pm
  
  Index: RunTime.pm
  ===================================================================
  RCS file: /home/cvs/modperl-docs/lib/DocSet/RunTime.pm,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- RunTime.pm        15 Jun 2002 18:20:33 -0000      1.8
  +++ RunTime.pm        17 Jun 2002 02:58:22 -0000      1.9
  @@ -6,7 +6,7 @@
   use strict;
   use warnings;
   
  -use File::Spec::Functions qw(catdir catfile splitdir abs2rel);
  +use File::Spec::Functions qw(catdir catfile splitdir);
   use File::Find;
   
   use DocSet::Util;
  @@ -101,8 +101,10 @@
   
           my $rel_uri = path2uri($rel_path);
           $src_docs{$rel_uri} = {
  -            map { s/config\.cfg$/index.html/; ($_ => 1) } # autogenerated 
index.html
  -            map path2uri( abs2rel($_, $full_base_path) ), # full 
path=>relative uri
  +                                            # autogenerated index.html
  +            map { s/config\.cfg$/index.html/; ($_ => 1) }
  +                                            # full path => relative uri
  +            map path2uri( DocSet::Util::abs2rel($_, $full_base_path) ),
               grep $rsub_keep_ext->($_),      # get files with wanted exts
               grep !$rsub_skip_seen->($_),    # skip seen base dirs
               @{ expand_dir($full_base_path) }
  
  
  
  1.13      +14 -0     modperl-docs/lib/DocSet/Util.pm
  
  Index: Util.pm
  ===================================================================
  RCS file: /home/cvs/modperl-docs/lib/DocSet/Util.pm,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- Util.pm   11 Jun 2002 15:02:10 -0000      1.12
  +++ Util.pm   17 Jun 2002 02:58:22 -0000      1.13
  @@ -11,11 +11,13 @@
   use Data::Dumper;
   use Carp;
   use Template;
  +use File::Spec;
   use File::Spec::Functions;
   
   require DocSet::RunTime; # interdependency with DocSet::Util
   
   use constant IS_WIN32 => $^O eq 'MSWin32';
  +use constant PERL_LT_580 => $] < 5.008;
   
   use vars qw(@ISA @EXPORT);
   @ISA    = qw(Exporter);
  @@ -135,6 +137,18 @@
       return unless defined $_[0];
       return join '/', File::Spec->splitdir(shift);
   }
  +
  +# File::Spec->abs2rel doesn't strip the volume (e.g. /^c:/) before
  +# Perl v5.8.0 on Win32. This function fixes this bug.
  +#
  +# Make sure to call this function as DocSet::Util::abs2rel, especially
  +# in the code that already uses File::Spec functions.
  +sub abs2rel {
  +    my $res = File::Spec->abs2rel(@_);
  +    $res =~ s/^[a-zA-Z]:// if IS_WIN32 && PERL_LT_580 && defined $res;
  +    $res;
  +}
  +
   
   sub get_date {
       sprintf "%s %d, %d", (split /\s+/, scalar localtime)[1,2,4];
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to