git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Ondřej Pohořelský via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: "Ondřej Pohořelský" <opohorel@redhat.com>,
	"Ondřej Pohořelský" <opohorel@redhat.com>
Subject: [PATCH v3] cvsserver: avoid precedence problem between ! and %s
Date: Thu, 22 May 2025 11:26:46 +0000	[thread overview]
Message-ID: <pull.1925.v3.git.1747913206622.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.1925.v2.git.1747822992457.gitgitgadget@gmail.com>

From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= <opohorel@redhat.com>

With perl-5.41.4 and newer, test t9402-git-cvsserver-refs.sh
(specifically t9402.30, t9402.31, t9402.32, t9402.34) fails, because
of the new warnings[0] populating cvs.log.

Use the 'does not match' operator '!~' directly to express the
negated pattern match, resolving the precedence issue.

[0] https://metacpan.org/release/ETHER/perl-5.41.12/view/pod/perl5414delta.pod#New-Warnings

Reported-by: Jitka Plesnikova <jplesnik@redhat.com>
Suggested-by: Jitka Plesnikova <jplesnik@redhat.com>
Signed-off-by: Ondřej Pohořelský <opohorel@redhat.com>
---
    cvsserver: avoid precedence problem between ! and %s
    
    cc: "Kristoffer Haugsbakk" kristofferhaugsbakk@fastmail.com cc: "brian
    m. carlson" sandals@crustytoothpaste.net

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1925%2Fopohorel%2Fcvsserver_parentheses-v3
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1925/opohorel/cvsserver_parentheses-v3
Pull-Request: https://github.com/gitgitgadget/git/pull/1925

Range-diff vs v2:

 1:  a15f924657c ! 1:  b7563182492 cvsserver: avoid precedence problem between ! and %s
     @@ Metadata
       ## Commit message ##
          cvsserver: avoid precedence problem between ! and %s
      
     -    With perl-5.41.4 and newer, git-cvsserver fails to build because of
     -    possible precedence problem[0]
     +    With perl-5.41.4 and newer, test t9402-git-cvsserver-refs.sh
     +    (specifically t9402.30, t9402.31, t9402.32, t9402.34) fails, because
     +    of the new warnings[0] populating cvs.log.
      
     -    Added parentheses avoid this issue.
     +    Use the 'does not match' operator '!~' directly to express the
     +    negated pattern match, resolving the precedence issue.
      
          [0] https://metacpan.org/release/ETHER/perl-5.41.12/view/pod/perl5414delta.pod#New-Warnings
      
     @@ git-cvsserver.perl: sub escapeRefName
           #     desired ASCII character byte. (for anything else)
       
      -    if(! $refName=~/^[1-9][0-9]*(\.[1-9][0-9]*)*$/)
     -+    if(! ($refName=~/^[1-9][0-9]*(\.[1-9][0-9]*)*$/))
     ++    if ($refName !~ /^[1-9][0-9]*(\.[1-9][0-9]*)*$/)
           {
               $refName=~s/_-/_-u--/g;
               $refName=~s/\./_-p-/g;


 git-cvsserver.perl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/git-cvsserver.perl b/git-cvsserver.perl
index a4e1bad33ca..7ccd720019b 100755
--- a/git-cvsserver.perl
+++ b/git-cvsserver.perl
@@ -5009,7 +5009,7 @@ sub escapeRefName
     #   = "_-xx-" Where "xx" is the hexadecimal representation of the
     #     desired ASCII character byte. (for anything else)
 
-    if(! $refName=~/^[1-9][0-9]*(\.[1-9][0-9]*)*$/)
+    if ($refName !~ /^[1-9][0-9]*(\.[1-9][0-9]*)*$/)
     {
         $refName=~s/_-/_-u--/g;
         $refName=~s/\./_-p-/g;

base-commit: cb96e1697ad6e54d11fc920c95f82977f8e438f8
-- 
gitgitgadget

  parent reply	other threads:[~2025-05-22 11:26 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-21  7:45 [PATCH] cvsserver: avoid precedence problem between ! and %s Ondřej Pohořelský via GitGitGadget
2025-05-21  7:53 ` Kristoffer Haugsbakk
2025-05-21 10:23 ` [PATCH v2] " Ondřej Pohořelský via GitGitGadget
2025-05-21 15:54   ` Junio C Hamano
2025-05-21 16:02   ` Junio C Hamano
2025-05-21 17:03     ` Junio C Hamano
2025-05-22  7:19       ` Ondrej Pohorelsky
2025-05-22 15:55         ` Junio C Hamano
2025-05-22 17:05           ` Jeff King
2025-05-22 17:56             ` Todd Zullinger
2025-05-22 18:51               ` Junio C Hamano
2025-05-23  4:47                 ` Matthew Ogilvie
2025-05-23 15:48                   ` Junio C Hamano
2025-05-26 13:56                     ` Ondrej Pohorelsky
2025-05-27 15:52                       ` Junio C Hamano
2025-05-22 11:26   ` Ondřej Pohořelský via GitGitGadget [this message]
2025-05-26 13:48     ` [PATCH v4] cvsserver: remove unused escapeRefName function Ondřej Pohořelský via GitGitGadget
2025-05-27 15:24       ` Junio C Hamano
2025-05-21 14:58 ` [PATCH] cvsserver: avoid precedence problem between ! and %s Junio C Hamano
2025-05-21 21:48   ` brian m. carlson
2025-05-22  7:31     ` Ondrej Pohorelsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=pull.1925.v3.git.1747913206622.gitgitgadget@gmail.com \
    --to=gitgitgadget@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=opohorel@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).