From 871e1a8ab2bb1f46076efdb634719af325762ab7 Mon Sep 17 00:00:00 2001 From: Michael Mikonos <127171689+mknos@users.noreply.github.com> Date: Fri, 29 Nov 2024 13:17:38 +0800 Subject: [PATCH] ed: prevent trailing '/' when setting filename * The usage "f abc/" is technically invalid because it would point to a directory * Subsequent "e" or "w" commands fail because ed does not operate on directories * GNU ed 1.20 added validation to prevent this usage; add it here because it would flag bad user input slightly earlier --- bin/ed | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/bin/ed b/bin/ed index 4cd04e26..48d8ff18 100755 --- a/bin/ed +++ b/bin/ed @@ -579,9 +579,8 @@ sub edFilename { return E_ADDREXT; } if (defined($args[0])) { - if ($args[0] =~ m/\A\!/) { - return E_FNAME; - } + return E_FNAME if $args[0] =~ m/\A\!/; + return E_FNAME if $args[0] =~ m/\/\Z/; $RememberedFilename = $args[0]; } if (defined($RememberedFilename)) {