add arcanist patch to fix arc diff
authorAditya Kumar <appujee@google.com>
Wed, 1 Feb 2023 20:10:56 +0000 (12:10 -0800)
committerAditya Kumar <appujee@google.com>
Wed, 1 Feb 2023 20:14:25 +0000 (12:14 -0800)
Another patch to fix arcanist on newer php versions. See previous patch
here: https://reviews.llvm.org/D129232

Authored by: Justin Stitt (justinstitt)
Reviewed by: nickdesaulniers, hiraditya, foad
Differential Revision: https://reviews.llvm.org/D131699

llvm/utils/phabricator/0002-Fix-PHP-8.1.5-empty-strlen-with-arc-diff-verbatim.patch [new file with mode: 0644]

diff --git a/llvm/utils/phabricator/0002-Fix-PHP-8.1.5-empty-strlen-with-arc-diff-verbatim.patch b/llvm/utils/phabricator/0002-Fix-PHP-8.1.5-empty-strlen-with-arc-diff-verbatim.patch
new file mode 100644 (file)
index 0000000..75fd75a
--- /dev/null
@@ -0,0 +1,36 @@
+From 3a6e789fe893fc8c855826994d044d17a281fd85 Mon Sep 17 00:00:00 2001
+From: Justin Stitt <justinstitt@google.com>
+Date: Thu, 11 Aug 2022 10:26:21 -0700
+Subject: [PATCH] Fix PHP 8.1.5 empty strlen with <$ arc diff --verbatim>
+
+Fixes the following observed error with PHP 8.1.5:
+| EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
+| arcanist(head=master, ref.master=680fe6d06e5a)
+|   #0 PhutilErrorHandler::handleError(integer, string, string, integer) called at [<arcanist>/src/workflow/ArcanistDiffWorkflow.php:2364]
+|   #1 ArcanistDiffWorkflow::getDiffOntoTargets() called at [<arcanist>/src/workflow/ArcanistDiffWorkflow.php:2342]
+|   #2 ArcanistDiffWorkflow::updateOntoDiffProperty() called at [<arcanist>/src/workflow/ArcanistDiffWorkflow.php:409]
+|   #3 ArcanistDiffWorkflow::run() called at [<arcanist>/scripts/arcanist.php:427]
+
+Link: https://secure.phabricator.com/book/phabcontrib/article/contributing_code/
+Link: https://reviews.llvm.org/D129232#3634072
+Signed-off-by: Justin Stitt <justinstitt@google.com>
+---
+ src/workflow/ArcanistDiffWorkflow.php | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/workflow/ArcanistDiffWorkflow.php b/src/workflow/ArcanistDiffWorkflow.php
+index 5b8ff40c..1b717b23 100644
+--- a/src/workflow/ArcanistDiffWorkflow.php
++++ b/src/workflow/ArcanistDiffWorkflow.php
+@@ -2361,7 +2361,7 @@ EOTEXT
+     // If we track an upstream branch either directly or indirectly, use that.
+     $branch = $api->getBranchName();
+-    if (strlen($branch)) {
++    if (phutil_nonempty_string($branch) && strlen($branch)) {
+       $upstream_path = $api->getPathToUpstream($branch);
+       $remote_branch = $upstream_path->getRemoteBranchName();
+       if ($remote_branch !== null) {
+-- 
+2.37.1.559.g78731f0fdb-goog
+