From df11f7fd6353a45d2d52d11f82f52bcedf857e4f Mon Sep 17 00:00:00 2001
From: obarun <eric@obarun.org>
Date: Sun, 17 Jan 2021 21:45:34 +1100
Subject: [PATCH] It works now. Use notifpipe uniquely when the catch-all
 logger is not created. Do not use auto_string on chained stralloc

---
 src/66/66-boot.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/66/66-boot.c b/src/66/66-boot.c
index 76ed278c..62be8f22 100644
--- a/src/66/66-boot.c
+++ b/src/66/66-boot.c
@@ -446,7 +446,7 @@ static inline void run_stage2 (char const *const *envp, size_t envlen, char cons
 
     setsid() ;
 
-    if (catch_log) {
+    if (!catch_log) {
 
         close(notifpipe[1]) ;
         wait_for_notif(notifpipe[0]) ;
@@ -468,8 +468,10 @@ static inline void run_stage2 (char const *const *envp, size_t envlen, char cons
 
     size_t tlen = sacmdline.len ;
     char t[tlen + 1] ;
-    auto_strings(t,sacmdline.s) ;
+    memcpy(t,sacmdline.s,tlen) ;
+    t[tlen] = 0 ;
     stralloc_free(&sacmdline) ;
+
     xmexec_fm(newargv, envp, envlen, t, tlen) ;
 }
 
-- 
GitLab