Commit:    3c344392bdbb711da6c6cbc0611fe4fbc19f1599
Author:    Peter Kokot <[email protected]>         Wed, 22 May 2019 01:13:15 
+0200
Parents:   80abfff45301cb69fcd992a911ed6925625455e6
Branches:  master

Link:       
http://git.php.net/?p=web/bugs.git;a=commitdiff;h=3c344392bdbb711da6c6cbc0611fe4fbc19f1599

Log:
Fix #62088: Missing changelog entry when adding patch

Bugs:
https://bugs.php.net/62088

Changed paths:
  M  www/patch-add.php


Diff:
diff --git a/www/patch-add.php b/www/patch-add.php
index 76e34f0..9429ced 100644
--- a/www/patch-add.php
+++ b/www/patch-add.php
@@ -21,39 +21,39 @@ $canpatch = true;
 /// Input vars
 $bug_id = !empty($_REQUEST['bug']) ? (int) $_REQUEST['bug'] : 0;
 if (empty($bug_id)) {
-       $bug_id = !empty($_REQUEST['bug_id']) ? (int) $_REQUEST['bug_id'] : 0;
+    $bug_id = !empty($_REQUEST['bug_id']) ? (int) $_REQUEST['bug_id'] : 0;
 }
 
 if (empty($bug_id)) {
-       response_header('Error :: no bug selected');
-       display_bug_error('No bug selected to add a patch to (no bug or 
bug_id!)');
-       response_footer();
-       exit;
+    response_header('Error :: no bug selected');
+    display_bug_error('No bug selected to add a patch to (no bug or bug_id!)');
+    response_footer();
+    exit;
 }
 
 $bugRepository = $container->get(BugRepository::class);
 
 if (!($buginfo = $bugRepository->findOneById($bug_id))) {
-       response_header('Error :: invalid bug selected');
-       display_bug_error("Invalid bug #{$bug_id} selected");
-       response_footer();
-       exit;
+    response_header('Error :: invalid bug selected');
+    display_bug_error("Invalid bug #{$bug_id} selected");
+    response_footer();
+    exit;
 }
 
 $package_name = $buginfo['package_name'];
 
 // captcha is not necessary if the user is logged in
 if (!$logged_in) {
-       $captcha = $container->get(Captcha::class);
+    $captcha = $container->get(Captcha::class);
 }
 
 $show_bug_info = bugs_has_access($bug_id, $buginfo, $pw, $user_flags);
 
 if (!$show_bug_info) {
-       response_header('Private report');
-       display_bug_error("The bug #{$bug_id} is not available to public");
-       response_footer();
-       exit;
+    response_header('Private report');
+    display_bug_error("The bug #{$bug_id} is not available to public");
+    response_footer();
+    exit;
 }
 
 $patch_name = (!empty($_GET['patchname']) && is_string($_GET['patchname'])) ? 
$_GET['patchname'] : '';
@@ -61,79 +61,77 @@ $patch_name = (!empty($_POST['name']) && 
is_string($_POST['name'])) ? $_POST['na
 $patch_name_url = urlencode($patch_name);
 
 if (isset($_POST['addpatch'])) {
-       if (!isset($_POST['obsoleted'])) {
-               $_POST['obsoleted'] = [];
-       }
-
-       // Check that patch name is given (required always)
-       if (empty($patch_name)) {
-               $patches = $patchRepository->findAllByBugId($bug_id);
-               $errors[] = 'No patch name entered';
-               include "{$ROOT_DIR}/templates/addpatch.php";
-               exit;
-       }
-
-       if (!$logged_in) {
-               try {
-                       $errors = [];
-
-                       $email = isset($_POST['email']) ? $_POST['email'] : '';
-
-                       if (!is_valid_email($email, $logged_in)) {
-                               $errors[] = 'Email address must be valid!';
-                       }
-
-                       /**
-                        * Check if session answer is set, then compare
-                        * it with the post captcha value. If it's not
-                        * the same, then it's an incorrect password.
-                        */
-                       if (!isset($_SESSION['answer']) || $_POST['captcha'] != 
$_SESSION['answer']) {
-                               $errors[] = 'Incorrect Captcha';
-                       }
-
-                       if (count($errors)) {
-                               throw new \Exception('');
-                       }
-
-                       try {
-                               $revision = $patchTracker->attach($bug_id, 
'patch', $patch_name, $email, $_POST['obsoleted']);
-                       } catch (\Exception $e) {
-                               $patches = 
$patchRepository->findAllByBugId($bug_id);
-                               $errors[] = $e->getMessage();
-                               $errors[] = 'Could not attach patch 
"'.htmlspecialchars($patch_name).'" to Bug #'.$bug_id;
-                               include "{$ROOT_DIR}/templates/addpatch.php";
-
-                               exit;
-                       }
-
-                       
redirect("patch-display.php?bug={$bug_id}&patch={$patch_name_url}&revision={$revision}");
-               } catch (\Exception $e) {
-                       $patches = $patchRepository->findAllByBugId($bug_id);
-                       include "{$ROOT_DIR}/templates/addpatch.php";
-                       exit;
-               }
-       } else {
-               $email = $auth_user->email;
-       }
-
-       try {
-               $revision = $patchTracker->attach($bug_id, 'patch', 
$patch_name, $auth_user->email, $_POST['obsoleted']);
-       } catch (\Exception $e) {
-               $patches = $patchRepository->findAllByBugId($bug_id);
-               $errors = [
-                       $e->getMessage(),
-                       'Could not attach patch 
"'.htmlspecialchars($patch_name, ENT_QUOTES).'" to Bug #'.$bug_id
-               ];
-               include "{$ROOT_DIR}/templates/addpatch.php";
-
-               exit;
-       }
-
-       // Add a comment to the bug report.
-       $patch_url = 
"{$site_method}://{$site_url}{$basedir}/patch-display.php?bug={$bug_id}&patch={$patch_name_url}&revision={$revision}";
-
-       $text = <<<TXT
+    if (!isset($_POST['obsoleted'])) {
+        $_POST['obsoleted'] = [];
+    }
+
+    // Check that patch name is given (required always)
+    if (empty($patch_name)) {
+        $patches = $patchRepository->findAllByBugId($bug_id);
+        $errors[] = 'No patch name entered';
+        include "{$ROOT_DIR}/templates/addpatch.php";
+        exit;
+    }
+
+    if (!$logged_in) {
+        try {
+            $errors = [];
+
+            $email = isset($_POST['email']) ? $_POST['email'] : '';
+
+            if (!is_valid_email($email, $logged_in)) {
+                $errors[] = 'Email address must be valid!';
+            }
+
+            /**
+             * Check if session answer is set, then compare
+             * it with the post captcha value. If it's not
+             * the same, then it's an incorrect password.
+             */
+            if (!isset($_SESSION['answer']) || $_POST['captcha'] != 
$_SESSION['answer']) {
+                $errors[] = 'Incorrect Captcha';
+            }
+
+            if (count($errors)) {
+                throw new \Exception('');
+            }
+
+            try {
+                $revision = $patchTracker->attach($bug_id, 'patch', 
$patch_name, $email, $_POST['obsoleted']);
+            } catch (\Exception $e) {
+                $patches = $patchRepository->findAllByBugId($bug_id);
+                $errors[] = $e->getMessage();
+                $errors[] = 'Could not attach patch 
"'.htmlspecialchars($patch_name).'" to Bug #'.$bug_id;
+                include "{$ROOT_DIR}/templates/addpatch.php";
+
+                exit;
+            }
+        } catch (\Exception $e) {
+            $patches = $patchRepository->findAllByBugId($bug_id);
+            include "{$ROOT_DIR}/templates/addpatch.php";
+            exit;
+        }
+    } else {
+        $email = $auth_user->email;
+
+        try {
+            $revision = $patchTracker->attach($bug_id, 'patch', $patch_name, 
$auth_user->email, $_POST['obsoleted']);
+        } catch (\Exception $e) {
+            $patches = $patchRepository->findAllByBugId($bug_id);
+            $errors = [
+                $e->getMessage(),
+                'Could not attach patch "'.htmlspecialchars($patch_name, 
ENT_QUOTES).'" to Bug #'.$bug_id
+            ];
+            include "{$ROOT_DIR}/templates/addpatch.php";
+
+            exit;
+        }
+    }
+
+    // Add a comment to the bug report.
+    $patch_url = 
"{$site_method}://{$site_url}{$basedir}/patch-display.php?bug={$bug_id}&patch={$patch_name_url}&revision={$revision}";
+
+    $text = <<<TXT
 The following patch has been added/updated:
 
 Patch Name: {$patch_name}
@@ -141,15 +139,15 @@ Revision:   {$revision}
 URL:        {$patch_url}
 TXT;
 
-       $res = bugs_add_comment($bug_id, $auth_user->email, $auth_user->name, 
$text, 'patch');
+    $res = bugs_add_comment($bug_id, $email, $auth_user->name, $text, 'patch');
 
-       // Send emails
-       mail_bug_updates($buginfo, $buginfo, $auth_user->email, $text, 4, 
$bug_id);
+    // Send emails
+    mail_bug_updates($buginfo, $buginfo, $email, $text, 4, $bug_id);
 
-       $patches = $patchRepository->findAllByBugId($bug_id);
-       $errors = [];
-       include "{$ROOT_DIR}/templates/patchadded.php";
-       exit;
+    $patches = $patchRepository->findAllByBugId($bug_id);
+    $errors = [];
+    include "{$ROOT_DIR}/templates/patchadded.php";
+    exit;
 }
 
 $email = isset($_GET['email']) ? $_GET['email'] : '';


--
PHP Webmaster List Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to