This file is indexed.

/usr/share/perl5/XMLTV/ProgressBar.pm is in libxmltv-perl 0.5.63-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# A few routines for asking the user questions.  Used in --configure
# and also by Makefile.PL, so this file should not depend on any
# nonstandard libraries.
#

package XMLTV::ProgressBar;
use strict;        
use XMLTV::GUI;

# Use Log::TraceMessages if installed.
BEGIN {
     eval { require Log::TraceMessages };
     if ($@) {
          *t = sub {};
          *d = sub { '' };
     }
     else {
          *t = \&Log::TraceMessages::t;
          *d = \&Log::TraceMessages::d;
     }
}

my $real_class = 'XMLTV::ProgressBar::None';
my $bar;

# Must be called before we use this module if we want to use a gui.
sub init( $ ) {
     my $opt_gui = shift;
     
     # Ask the XMLTV::GUI module for the graphics type we will use  
     my $gui_type = XMLTV::GUI::get_gui_type($opt_gui);
     
     if ($gui_type eq 'term') {
          $real_class = 'XMLTV::ProgressBar::None';
     } elsif ($gui_type eq 'term+progressbar') {
          $real_class = 'XMLTV::ProgressBar::Term';
     } elsif ($gui_type eq 'tk') {
          $real_class = 'XMLTV::ProgressBar::Tk';
     } else {
          die "Unknown gui type: '$gui_type'.";
     }
}

# Create and return a new progress bar.
# Parameters:
#   text to display
#   maximum value
# Or the syntax for Term::ProgressBar may be used, but much of it will be
# ignored in some of the implementations.
sub new {
     my $class = shift;
     
     ((my $real_class_path = $real_class.".pm") =~ s/::/\//g);
     
     require $real_class_path;
     import $real_class_path;
     
     $bar = $real_class->new(@_);
     
     my $self = {};
     return bless $self, $class;
}

# Alter the value displayed in this progress bar
# Parameters:
#   the value to change this bar to display (optional)
# If no value is given, the value will be incremented by 1.
sub update {
     my $self = shift;
     return $bar->update( @_ );
}

# Close the progress bar.
sub finish {

     # Only does anything for the GUI ones.
     if ($real_class eq 'XMLTV::ProgressBar::Tk') {
          return $bar->finish();    
     }
}

1;