This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch tymux
in repository terminology.

View the commit online.

commit b063957e8ff295b15b052cd7b79d2c7036b7d96e
Author: [email protected] <[email protected]>
AuthorDate: Thu May 14 19:03:03 2026 -0600

    feat(tymux): resolve new-terminal cwd from daemon shell pid
    
    When opening a new tab or split from a tymux-attached terminology
    window, the new shell is spawned in the outer terminology process's
    startup directory, not the directory of the shell running inside the
    tymux session.
    
    This is because termio_cwd_get() reads /proc/<pid>/cwd from the local
    pty, which for tymux is a shadow pty with pid=-1. That always fails,
    causing the caller to pass cwd=NULL and inherit the startup directory.
    
    We now override the pid source when a tymux session is active: instead
    of the shadow pty pid, we use the daemon-reported shell_pid. This is
    sent in the ATTACHED message after the three prior commits
    (1455830e, 83108947, 471ea67b) set up the wire format and plumb it
    through. The existing /proc/<pid>/cwd readlink logic then reads from
    the real shell's cwd.
    
    This makes new tabs/splits open in the expected directory.
---
 src/bin/termio.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/bin/termio.c b/src/bin/termio.c
index bf125e1e..71e50254 100644
--- a/src/bin/termio.c
+++ b/src/bin/termio.c
@@ -460,7 +460,13 @@ termio_cwd_get(const Evas_Object *obj, char *buf, size_t size)
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(sd, EINA_FALSE);
 
-   pid = termpty_pid_get(sd->pty);
+#ifdef HAVE_TYMUX
+   if (sd->tymux && sd->tymux->shell_pid > 0)
+     pid = sd->tymux->shell_pid;
+   else
+#endif
+     pid = termpty_pid_get(sd->pty);
+
    if (pid <= 0)
      return EINA_FALSE;
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to