Re-fix for bug 55161 - if data is partial in activity table, prepend a ? to…

Re-fix for bug 55161 - if data is partial in activity table, prepend a ? to indicate that we don't know for sure what got dropped. Patch by Jake Steenhagen <jake@acutex.net> r= justdave@syndicomm.com
parent 759a1880
...@@ -1147,27 +1147,44 @@ sub DumpBugActivity { ...@@ -1147,27 +1147,44 @@ sub DumpBugActivity {
SendSQL($query); SendSQL($query);
print "<table border cellpadding=4>\n"; # Instead of outright printing this, we are going to store it in a $html
print "<tr>\n"; # variable and print it and the end. This is so we can explain ? (if nesc.)
print " <th>Who</th><th>What</th><th>Removed</th><th>Added</th><th>When</th>\n"; # at the top of the activity table rather than the botom.
print "</tr>\n"; my $html = "";
$html .= "<table border cellpadding=4>\n";
$html .= "<tr>\n";
$html .= " <th>Who</th><th>What</th><th>Removed</th><th>Added</th><th>When</th>\n";
$html .= "</tr>\n";
my @row; my @row;
my $incomplete_data = 0;
while (@row = FetchSQLData()) { while (@row = FetchSQLData()) {
my ($field,$when,$removed,$added,$who) = (@row); my ($field,$when,$removed,$added,$who) = (@row);
$removed = html_quote($removed); $removed = html_quote($removed);
$added = html_quote($added); $added = html_quote($added);
$removed = "&nbsp;" if $removed eq ""; $removed = "&nbsp;" if $removed eq "";
$added = "&nbsp;" if $added eq ""; $added = "&nbsp;" if $added eq "";
print "<tr>\n"; if ($added =~ /^\?/ || $removed =~ /^\?/) {
print "<td>$who</td>\n"; $incomplete_data = 1;
print "<td>$field</td>\n"; }
print "<td>$removed</td>\n"; $html .= "<tr>\n";
print "<td>$added</td>\n"; $html .= "<td>$who</td>\n";
print "<td>$when</td>\n"; $html .= "<td>$field</td>\n";
print "</tr>\n"; $html .= "<td>$removed</td>\n";
} $html .= "<td>$added</td>\n";
print "</table>\n"; $html .= "<td>$when</td>\n";
$html .= "</tr>\n";
}
$html .= "</table>\n";
if ($incomplete_data) {
print "There was a bug in older versions of Bugzilla which caused activity data \n";
print "to be lost if there was a large number of cc's or dependencies. That \n";
print "has been fixed, however, there was some data already lost on this bug \n";
print "that could not be regenerated. The changes that the script could not \n";
print "reliably determine are prefixed by '?'\n";
print "<p>\n";
}
print $html;
} }
......
...@@ -2431,6 +2431,12 @@ if (GetFieldDef('bugs_activity', 'oldvalue')) { ...@@ -2431,6 +2431,12 @@ if (GetFieldDef('bugs_activity', 'oldvalue')) {
$added = "?"; $added = "?";
$removed = "?"; $removed = "?";
} }
# If the origianl field (old|new)value was full, then this
# could be incomplete data.
if (length($oldvalue) == 255 || length($newvalue) == 255) {
$added = "? $added";
$removed = "? $removed";
}
} else { } else {
$removed = $oldvalue; $removed = $oldvalue;
$added = $newvalue; $added = $newvalue;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment