about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2024-04-16 16:03:54 +0000
committerLaurent Bercot <ska@appnovation.com>2024-04-16 16:03:54 +0000
commit167eeccde389ea3a9611aed611179c729d719460 (patch)
tree18f1bdac39afb7cb6ebf475633974ff7faa712a2
parenteb1b2c548ba48691e48069aa82c1f102ca0e8e67 (diff)
downloadexecline-167eeccde389ea3a9611aed611179c729d719460.tar.gz
execline-167eeccde389ea3a9611aed611179c729d719460.tar.xz
execline-167eeccde389ea3a9611aed611179c729d719460.zip
Fix off-by-one in backtick; prepare for 2.9.5.1
Signed-off-by: Laurent Bercot <ska@appnovation.com>
-rw-r--r--NEWS6
-rw-r--r--doc/index.html4
-rw-r--r--doc/upgrade.html6
-rw-r--r--package/info2
-rw-r--r--src/execline/backtick.c1
-rw-r--r--src/libexecline/el_modifs_and_exec.c2
6 files changed, 17 insertions, 4 deletions
diff --git a/NEWS b/NEWS
index 328c2d4..696b7f0 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,11 @@
 Changelog for execline.
 
+In 2.9.5.1
+----------
+
+ - Bugfixes.
+
+
 In 2.9.5.0
 ----------
 
diff --git a/doc/index.html b/doc/index.html
index 73b7867..74f83f3 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -61,7 +61,7 @@ library. </li>
 </p>
 
 <ul>
- <li> If you're using <a href="https://www.musl-libc.org/">musl</a> and
+ <li> If you're using <a href="https://musl.libc.org/">musl</a> and
 want nsswitch-like functionality:
 <a href="//skarnet.org/software/nsss/">nsss</a> version
 0.2.0.4 or later (build-time and boot-time) </li>
@@ -77,7 +77,7 @@ want nsswitch-like functionality:
 <h3> Download </h3>
 
 <ul>
- <li> The current released version of execline is <a href="execline-2.9.5.0.tar.gz">2.9.5.0</a>. </li>
+ <li> The current released version of execline is <a href="execline-2.9.5.1.tar.gz">2.9.5.1</a>. </li>
  <li> Alternatively, you can checkout a copy of the
 <a href="//git.skarnet.org/cgi-bin/cgit.cgi/execline/">execline
 git repository</a>:
diff --git a/doc/upgrade.html b/doc/upgrade.html
index b34a6fc..927db65 100644
--- a/doc/upgrade.html
+++ b/doc/upgrade.html
@@ -18,6 +18,12 @@
 
 <h1> What has changed in execline </h1>
 
+<h2> in 2.9.5.1 </h2>
+
+<ul>
+ <li> No functional changes. </li>
+</ul>
+
 <h2> in 2.9.5.0 </h2>
 
 <ul>
diff --git a/package/info b/package/info
index 6815b32..dc71495 100644
--- a/package/info
+++ b/package/info
@@ -1,4 +1,4 @@
 package=execline
-version=2.9.5.0
+version=2.9.5.1
 category=admin
 package_macro_name=EXECLINE
diff --git a/src/execline/backtick.c b/src/execline/backtick.c
index e4a543b..5625921 100644
--- a/src/execline/backtick.c
+++ b/src/execline/backtick.c
@@ -53,6 +53,7 @@ int main (int argc, char const **argv, char const *const *envp)
   argc1 = el_semicolon(argv) ;
   if (!argc1) strerr_dief1x(100, "empty block") ;
   if (argc1 >= argc) strerr_dief1x(100, "unterminated block") ;
+  if (argc1 + 1 == argc) strerr_dief1x(100, "the command line after the block must not be empty") ;
   argv[argc1] = 0 ;
 
   {
diff --git a/src/libexecline/el_modifs_and_exec.c b/src/libexecline/el_modifs_and_exec.c
index fe0117c..ca72291 100644
--- a/src/libexecline/el_modifs_and_exec.c
+++ b/src/libexecline/el_modifs_and_exec.c
@@ -21,7 +21,7 @@ void el_modifs_and_exec (char const *const *argv, char const *const *vars, char
     if (values[i])
     {
       yesn++ ;
-      yeslen += len ;
+      yeslen += len + 1 ;
       modiflen += 1 + strlen(values[i]) ;
     }
   }