Bug 434529 - [p=reed r=bear r=timeless]
git-svn-id: svn://10.0.0.236/trunk@253042 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
fb8696c68a
commit
c122e3778d
@ -51,13 +51,15 @@ sub Error {
|
||||
}
|
||||
|
||||
|
||||
my ($url, $quote, $width, $height, $size );
|
||||
my ($url, $safe_url, $quote, $safe_quote, $width, $height, $size );
|
||||
|
||||
if( $url = $form{"url"} ){
|
||||
$quote = $form{"quote"};
|
||||
|
||||
$quote =~ s/[\r\n]/ /g;
|
||||
$url =~ s/[\r\n]/ /g;
|
||||
$safe_url = value_encode($url);
|
||||
$safe_quote = value_encode($quote);
|
||||
|
||||
$width = "";
|
||||
$height = "";
|
||||
@ -74,34 +76,29 @@ if( $url = $form{"url"} ){
|
||||
$height = $1;
|
||||
}
|
||||
if ($width eq "" || $height eq "") {
|
||||
Error "Couldn't get image size for \"$url\".\n";
|
||||
Error "Couldn't get image size for \"$safe_url\".\n";
|
||||
}
|
||||
# }
|
||||
|
||||
print "
|
||||
|
||||
<P><center><img border=2 src='$url' width=$width height=$height><br>
|
||||
<i>$quote</i><br><br>
|
||||
<P><center><img border=2 src='$safe_url' width=$width height=$height><br>
|
||||
<i>$safe_quote</i><br><br>
|
||||
";
|
||||
|
||||
if( $form{"submit"} ne "Yes" ){
|
||||
my $u2 = $url;
|
||||
my $q2 = $quote;
|
||||
$u2 =~ s@&@&@g; $u2 =~ s@<@<@g; $u2 =~ s@\"@"@g;
|
||||
$q2 =~ s@&@&@g; $q2 =~ s@<@<@g; $q2 =~ s@\"@"@g;
|
||||
|
||||
print "
|
||||
<form action='addimage.cgi' METHOD='get'>
|
||||
<input type=hidden name=url value=\"$u2\">
|
||||
<input type=hidden name=quote value=\"$q2\">
|
||||
<input type=hidden name=url value=\"$safe_url\">
|
||||
<input type=hidden name=quote value=\"$safe_quote\">
|
||||
<HR>
|
||||
<TABLE>
|
||||
<TR>
|
||||
<TH ALIGN=RIGHT NOWRAP>Image URL:</TH>
|
||||
<TD><TT><B>$u2</B></TT></TD>
|
||||
<TD><TT><B>$safe_url</B></TT></TD>
|
||||
</TR><TR>
|
||||
<TH ALIGN=RIGHT>Caption:</TH>
|
||||
<TD><TT><B>$q2</B></TT></TD>
|
||||
<TD><TT><B>$safe_quote</B></TT></TD>
|
||||
</TR>
|
||||
<TR>
|
||||
<TD></TD>
|
||||
@ -313,7 +310,7 @@ sub URLsize {
|
||||
my ($fullurl) = @_;
|
||||
my $S = new IO::Handle;
|
||||
|
||||
$_ = $fullurl;
|
||||
$_ = value_quote($fullurl);
|
||||
if ( ! m@^http://@ ) {
|
||||
Error "HTTP URLs only, please: \"$_\" is no good.";
|
||||
}
|
||||
@ -324,17 +321,18 @@ sub URLsize {
|
||||
my $size="";
|
||||
my ($newheight, $newwidth);
|
||||
|
||||
$_ = $them;
|
||||
$_ = value_quote($them);
|
||||
if ( m@^[^.]*$@ ) {
|
||||
Error "Fully-qualified host names only, please: \"$_\" is no good.";
|
||||
}
|
||||
|
||||
$_=$url;
|
||||
my ($remote, $iaddr, $paddr, $proto, $line);
|
||||
my ($remote, $safe_remote, $iaddr, $paddr, $proto, $line);
|
||||
$remote = $them;
|
||||
$safe_remote = value_encode($them);
|
||||
if ($port =~ /\D/) { $port = getservbyname($port, 'tcp') }
|
||||
die "No port" unless $port;
|
||||
$iaddr = inet_aton($remote) || die "no host: $remote";
|
||||
$iaddr = inet_aton($remote) || die "no host: $safe_remote";
|
||||
$paddr = sockaddr_in($port, $iaddr);
|
||||
|
||||
$proto = getprotobyname('tcp');
|
||||
@ -349,7 +347,7 @@ sub URLsize {
|
||||
|
||||
$_ = <$S>;
|
||||
if (! m@^HTTP/[0-9.]+ 200@ ) {
|
||||
Error "$them responded:<BR> $_";
|
||||
Error "$them responded badly";
|
||||
}
|
||||
|
||||
my $ctype = "";
|
||||
@ -363,7 +361,7 @@ sub URLsize {
|
||||
|
||||
$_ = $ctype;
|
||||
if ( $_ eq "" ) {
|
||||
Error "Server returned no content-type for \"$fullurl\"?";
|
||||
Error "Server returned no content-type for url?";
|
||||
} elsif ( m@image/jpeg@i || m@image/pjpeg@i ) {
|
||||
$size = &jpegsize($S);
|
||||
} elsif ( m@image/gif@i ) {
|
||||
|
||||
@ -46,7 +46,8 @@ my $error_guess = 0;
|
||||
|
||||
my ($args, $tree, $full_logfile, $linenum, $logfile);
|
||||
my ($errorparser, $buildname, $buildtime, $numlines, $fulltext);
|
||||
my ($enc_buildname, $brief_filename);
|
||||
my ($enc_buildname, $enc_logfile, $enc_errorparser, $enc_buildtime);
|
||||
my ($safe_buildname, $safe_buildtime, $brief_filename);
|
||||
|
||||
#############################################################
|
||||
# CGI inputs
|
||||
@ -56,6 +57,7 @@ if (defined($args = $form{log}) or defined($args = $form{exerpt})) {
|
||||
my ($full_logfile, $linenum) = split /:/, $args;
|
||||
($tree, $logfile) = split /\//, $full_logfile;
|
||||
$tree = &require_only_one_tree($tree);
|
||||
$logfile = shell_escape($logfile);
|
||||
|
||||
my $br = tb_find_build_record($tree, $logfile);
|
||||
$errorparser = $br->{errorparser};
|
||||
@ -66,14 +68,18 @@ if (defined($args = $form{log}) or defined($args = $form{exerpt})) {
|
||||
$numlines = $form{numlines} if exists $form{numlines};
|
||||
} else {
|
||||
$tree = &require_only_one_tree($form{tree});
|
||||
$errorparser = $form{errorparser};
|
||||
$logfile = $form{logfile};
|
||||
$errorparser = shell_escape($form{errorparser});
|
||||
$logfile = shell_escape($form{logfile});
|
||||
$buildname = $form{buildname};
|
||||
$buildtime = $form{buildtime};
|
||||
}
|
||||
$fulltext = $form{fulltext};
|
||||
|
||||
$safe_buildname = value_encode($buildname);
|
||||
$safe_buildtime = value_encode($buildname);
|
||||
$enc_buildname = url_encode($buildname);
|
||||
$enc_errorparser = url_encode($errorparser);
|
||||
$enc_logfile = url_encode($logfile);
|
||||
|
||||
tb_load_treedata($tree);
|
||||
|
||||
@ -137,12 +143,12 @@ sub print_fragment {
|
||||
print "\n";
|
||||
|
||||
my $heading = "Build Log (Fragment)";
|
||||
my $subheading = "$buildname on $time_str";
|
||||
my $subheading = "$safe_buildname on $time_str";
|
||||
my $title = "$heading - $subheading";
|
||||
|
||||
EmitHtmlTitleAndHeader($title, $heading, $subheading);
|
||||
|
||||
print "<a href='showlog.cgi?tree=$tree&errorparser=$errorparser&logfile=$logfile&buildtime=$buildtime&buildname=$enc_buildname&fulltext=1'>Show Full Build Log</a>";
|
||||
print "<a href='showlog.cgi?tree=$tree&errorparser=$enc_errorparser&logfile=$enc_logfile&buildtime=$enc_buildtime&buildname=$enc_buildname&fulltext=1'>Show Full Build Log</a>";
|
||||
|
||||
my $gz = gzopen("$::tree_dir/$tree/$logfile","rb") or
|
||||
warn "gzopen($::tree_dir/$tree/$logfile): $!\n";
|
||||
@ -184,17 +190,16 @@ sub print_header {
|
||||
}
|
||||
|
||||
my $heading = "Build Log ($s2)";
|
||||
my $subheading = "$buildname on $time_str";
|
||||
my $subheading = "$safe_buildname on $time_str";
|
||||
my $title = "$heading - $subheading";
|
||||
|
||||
EmitHtmlTitleAndHeader($title, $heading, $subheading);
|
||||
|
||||
print "
|
||||
<font size=+1>
|
||||
<dt><a href='showlog.cgi?tree=$tree&errorparser=$errorparser&logfile=$logfile&buildtime=$buildtime&buildname=$enc_buildname&fulltext=$s1'>$s</a>
|
||||
<dt><a href=\"showlog.cgi?tree=$tree&errorparser=$enc_errorparser&logfile=$enc_logfile&buildtime=$enc_buildtime&buildname=$enc_buildname&fulltext=$s1\">$s</a>
|
||||
<dt><a href=\"showbuilds.cgi?tree=$tree\">Return to the Build Page</a>
|
||||
<dt><a href=\"addnote.cgi?tree=$tree\&buildname=$enc_buildname\&buildtime=$buildtime\&logfile=$logfile\&errorparser=$errorparser\">
|
||||
Add a Comment to the Log</a>
|
||||
<dt><a href=\"addnote.cgi?tree=$tree&buildname=$enc_buildname&buildtime=$enc_buildtime&logfile=$enc_logfile&errorparser=$enc_errorparser\">Add a Comment to the Log</a>
|
||||
</font>
|
||||
";
|
||||
}
|
||||
@ -206,7 +211,7 @@ sub print_notes {
|
||||
my $found_note = 0;
|
||||
open(NOTES,"<", "$::tree_dir/$tree/notes.txt")
|
||||
or print "<h2>warning: Couldn't open $tree/notes.txt </h2>\n";
|
||||
print "$buildtime, $buildname<br>\n";
|
||||
print "$safe_buildtime, $safe_buildname<br>\n";
|
||||
while (<NOTES>) {
|
||||
chop;
|
||||
my ($nbuildtime,$nbuildname,$nwho,$nnow,$nenc_note) = split(/\|/);
|
||||
@ -259,8 +264,8 @@ sub print_log_section {
|
||||
my $first_line = $line_of_interest - $num_lines / 2;
|
||||
my $last_line = $first_line + $num_lines;
|
||||
|
||||
print "<a href='showlog.cgi?tree=$tree&logfile=$logfile&line="
|
||||
.($line_of_interest-$num_lines)."&numlines=$num_lines'>"
|
||||
print "<a href='showlog.cgi?tree=$tree&logfile=$enc_logfile&line="
|
||||
.($line_of_interest-$num_lines)."&numlines=$num_lines'>"
|
||||
."Previous $num_lines</a>";
|
||||
print "<font size='+1'><b>.<br>.<br>.<br></b></font>";
|
||||
print "<pre>";
|
||||
@ -281,8 +286,8 @@ sub print_log_section {
|
||||
$gz->gzclose() if defined($gz);
|
||||
print "</pre>";
|
||||
print "<font size='+1'><b>.<br>.<br>.<br></b></font>";
|
||||
print "<a href='showlog.cgi?tree=$tree&logfile=$logfile&line="
|
||||
.($line_of_interest+$num_lines)."&numlines=$num_lines'>"
|
||||
print "<a href='showlog.cgi?tree=$tree&logfile=$enc_logfile&line="
|
||||
.($line_of_interest+$num_lines)."&numlines=$num_lines'>"
|
||||
."Next $num_lines</a>";
|
||||
}
|
||||
|
||||
@ -351,7 +356,7 @@ BEGIN {
|
||||
my $cvsblame = $out{error_guess} ? "cvsguess.cgi" : "cvsblame.cgi";
|
||||
&tb_load_queryconfig();
|
||||
my $query = $::global_treedata->{$tree}->{query};
|
||||
$line =~ s@$q@<a href=$::QueryInfo{$query}{url}/$cvsblame?file=$out{error_file_ref}&rev=$::global_treedata->{$tree}->{cvs_branch}&mark=$out{error_line}\#$goto_line>$out{error_file}</a>@;
|
||||
$line =~ s@$q@<a href=$::QueryInfo{$query}{url}/$cvsblame?file=$out{error_file_ref}&rev=$::global_treedata->{$tree}->{cvs_branch}&mark=$out{error_line}\#$goto_line>$out{error_file}</a>@;
|
||||
}
|
||||
|
||||
if ($has_error) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user