From: terry%mozilla.org <> Date: Wed, 2 Feb 2000 07:48:13 +0000 (+0000) Subject: Nothing was checking that the bug number you entered for a duplicate X-Git-Tag: bugzilla-2.12~399 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6133b82636f84fe8c0b2370a452117fbb95ec5c7;p=thirdparty%2Fbugzilla.git Nothing was checking that the bug number you entered for a duplicate bug was actually a legal bug number. --- diff --git a/process_bug.cgi b/process_bug.cgi index d5ae66c390..b9be355b2b 100755 --- a/process_bug.cgi +++ b/process_bug.cgi @@ -358,27 +358,29 @@ SWITCH: for ($::FORM{'knob'}) { CheckFormFieldDefined(\%::FORM,'dup_id'); } my $num = trim($::FORM{'dup_id'}); - if ($num !~ /^[0-9]*$/) { + SendSQL("SELECT bug_id FROM bugs WHERE bug_id = " . SqlQuote($num)); + $num = FetchOneColumn(); + if (!$num) { print "You must specify a bug number of which this bug is a\n"; print "duplicate. The bug has not been changed.\n"; PutFooter(); exit; } - if (defined($::FORM{'id'}) && $::FORM{'dup_id'} == $::FORM{'id'}) { + if (!defined($::FORM{'id'}) || $num == $::FORM{'id'}) { print "Nice try, $::FORM{'who'}. But it doesn't really make sense to mark a\n"; print "bug as a duplicate of itself, does it?\n"; PutFooter(); exit; } - AppendComment($::FORM{'dup_id'}, $::FORM{'who'}, "*** Bug $::FORM{'id'} has been marked as a duplicate of this bug. ***"); + AppendComment($num, $::FORM{'who'}, "*** Bug $::FORM{'id'} has been marked as a duplicate of this bug. ***"); if ( Param('strictvaluechecks') ) { CheckFormFieldDefined(\%::FORM,'comment'); } - $::FORM{'comment'} .= "\n\n*** This bug has been marked as a duplicate of $::FORM{'dup_id'} ***"; + $::FORM{'comment'} .= "\n\n*** This bug has been marked as a duplicate of $num ***"; - print "

Notation added to bug $::FORM{'dup_id'}

\n"; - system("./processmail $::FORM{'dup_id'} $::FORM{'who'}"); - print "
Go To BUG# $::FORM{'dup_id'}
\n"; + print "

Notation added to bug $num

\n"; + system("./processmail $num $::FORM{'who'}"); + print "
Go To BUG# $num
\n"; last SWITCH; };