Subversion Repositories DevTools

Rev

Rev 2048 | Rev 2423 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2048 Rev 2422
Line 555... Line 555...
555
    $self->{'infoTag'} = $tag;
555
    $self->{'infoTag'} = $tag;
556
    $self->{$tag}{SvnInfoPath} = $url;
556
    $self->{$tag}{SvnInfoPath} = $url;
557
    my $rv = $self->SvnCmd ('info', $url, '--depth', 'empty'
557
    my $rv = $self->SvnCmd ('info', $url, '--depth', 'empty'
558
                    , { 'credentials' => 1,
558
                    , { 'credentials' => 1,
559
                        'nosavedata' => 1,
559
                        'nosavedata' => 1,
-
 
560
                        'error' => 'SvnInfo',
560
                        'process' => \&ProcessInfo
561
                        'process' => \&ProcessInfo
561
                    }
562
                    }
562
     );
563
     );
563
 
564
 
564
    delete $self->{$tag} if ( @{$self->{ERROR_LIST}} );
565
    delete $self->{$tag} if ( @{$self->{ERROR_LIST}} );
Line 861... Line 862...
861
#
862
#
862
sub SvnCmd
863
sub SvnCmd
863
{
864
{
864
    my $self = shift;
865
    my $self = shift;
865
    Debug ("SvnCmd");
866
    Debug ("SvnCmd");
-
 
867
    my $authenicationError;
866
    
868
    
867
    #
869
    #
868
    #   Extract arguments and options
870
    #   Extract arguments and options
869
    #   If last argument is a hesh, then its a hash of options
871
    #   If last argument is a hesh, then its a hash of options
870
    #
872
    #
Line 955... Line 957...
955
        {
957
        {
956
            #
958
            #
957
            #   Process STDERR output
959
            #   Process STDERR output
958
            #
960
            #
959
            push @{$self->{ERROR_LIST}}, $data;
961
            push @{$self->{ERROR_LIST}}, $data;
-
 
962
            $authenicationError = 1 if ( $data =~ m~Could not authenticate~i );
960
        }
963
        }
961
        else
964
        else
962
        {
965
        {
963
            #
966
            #
964
            #   Process STDOUT data
967
            #   Process STDOUT data
Line 986... Line 989...
986
    #   perl-internal structure and can't spawn anymore processes.
989
    #   perl-internal structure and can't spawn anymore processes.
987
    #
990
    #
988
    my $rv = waitpid ( $pid, 0);
991
    my $rv = waitpid ( $pid, 0);
989
 
992
 
990
    #
993
    #
-
 
994
    #   Spell out authentication errors
-
 
995
    #   Appears that some users can't read manuals - let hope they can read screen
-
 
996
    #
-
 
997
    if ( $opt->{'error'} && $authenicationError )
-
 
998
    {
-
 
999
        $opt->{'error'} = 'Authentication Error';
-
 
1000
        $self->{ERROR_LIST} = [];
-
 
1001
        push @{$self->{ERROR_LIST}}
-
 
1002
            ,'=' x 80,
-
 
1003
            ,'User must manually authenticate against the repository.'
-
 
1004
            ,'Use \'svn ls --depth empty ' . $self->Full() . '\''
-
 
1005
            ,'Enter your Windows Credentials when prompted and save the password'
-
 
1006
            ,'=' x 80,
-
 
1007
            ;
-
 
1008
    }
-
 
1009
 
-
 
1010
    #
991
    #   If an error condition was detected and the user has provided
1011
    #   If an error condition was detected and the user has provided
992
    #   an error message, then display the error
1012
    #   an error message, then display the error
993
    #
1013
    #
994
    #   This simplifies the user error processing
1014
    #   This simplifies the user error processing
995
    #
1015
    #