From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 14155 invoked from network); 9 Feb 2021 17:44:00 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 9 Feb 2021 17:44:00 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20200801; t=1612892640; b=Cd90RXt2HQAtCOkmYExbsXdre7g0p8R5F5d/fSnGj1g6QVXqiqvaGMSI5dRcTXtb5ZtNsXnvQK dP4S+Z4KZYMpJ0RjdlT9R5Ug7kcPpGH4GpdovBanEJ4VNJUiTA5QT5OddTemPq910IEXDHVXbD wAA+dh1JS9qHOStoM06s5EI6fK6c7zbqO+IH536XTIvQcRm2v7BnTVzji8ya0xnr9uJzI/lgnv 0e8HtKps3A9ZQaHcbpgCX1bPIMld+fXppm9RGNX8nnnklKWOgihAKFEYfxyEXYMwqs6Q6fUPcP ByZY6aTBCxlWujQlgPjES1kEeoIPsqrfjt0ozH+GydJFCA==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (so254-31.mailgun.net) smtp.remote-ip=198.61.254.31; dkim=pass header.d=klanderman.net header.s=mg header.a=rsa-sha256; dmarc=none header.from=klanderman.net; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20200801; t=1612892640; bh=e/N53PK2C8PY8Zv3ymykTRga1u7oZr1uA/RN7phFe/Q=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Reply-To:Subject:To:From:DKIM-Signature:DKIM-Signature; b=STV8LCCNjGTfSPIX1i2ZQdlGfUaMtXnQ7P6BKOUB1AUC/sGP6JsTp7aTKlF4Q9ATcAMH5S2o49 46m8yt6sZbBY62YT2cEy3a2EmK7cUHZSwMBhlav3pPV4oBDBB/jFo4iX11XTeXmD6otvKWP0vN hyikSLovxcZOdp3Idc5sJcIni8JDcK+tFT0np0m660CDIgR/A0mzRueBaLRovuCrsC/FsjpN6/ K1mHgM2pbYbMVUfAlqBx5cLzhbSimca8fx5ld/sYMzXWG7k7demDeRG6OZOU1n1IMzVuSTZ+PU G//ezM5s+cViNW0kTu5H04JnEnUC9BUC0gt7MpFrYXkB9w==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20200801; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Reply-To:Subject:To:From:Cc: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=plKmuCYO4wrLFHv88GLG8g3tkrbcnaYAabbw4+KXOW4=; b=L1ZKS4+DUN3wJEdU6DfScLk9mk crUMgWFhC0wB9va9iMH3M8Cp4Ghi+/76mUByEc6NB2oKTQqM5n0L6QS/HjejbCjdOloloMTnYxZuX ThO9aR2E2kuE8JevPyoBgl1IJc6XaBOUFGbLV+bdSWLlWWmL0l7IBejw8cGAm6Tx7PSCY21RKSKdo hjOGKifQy+U1QqhXhlSqQ17ll67eu55vDcRJqcbPvTJHCGYF51CfRT/OdSAtG8oqKOfYg2fTsDgsN IOFtXWjqMEQIgD0K7Kp1CKEHa8NBYodYTTqU+AYEerehM89pLZenhzh1WQI1YlyugP7lGDYlk6Bw4 IVnpHF/w==; Received: from authenticated user by zero.zsh.org with local id 1l9X3O-000EcV-Er; Tue, 09 Feb 2021 17:43:58 +0000 Authentication-Results: zsh.org; iprev=pass (so254-31.mailgun.net) smtp.remote-ip=198.61.254.31; dkim=pass header.d=klanderman.net header.s=mg header.a=rsa-sha256; dmarc=none header.from=klanderman.net; arc=none Received: from so254-31.mailgun.net ([198.61.254.31]:55045) by zero.zsh.org with utf8esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1l9X37-000EUA-7y; Tue, 09 Feb 2021 17:43:41 +0000 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=klanderman.net; q=dns/txt; s=mg; t=1612892621; h=Content-Type: MIME-Version: Message-ID: In-Reply-To: Date: References: Reply-To: Subject: To: From: Sender; bh=plKmuCYO4wrLFHv88GLG8g3tkrbcnaYAabbw4+KXOW4=; b=QJG7/O6kJfRReSYzWOh99a+B4jAHDkP8tsApyvZcGDRKdPDhBjg33jA3290V+Byv/i5TLmRT iGmmQT012woVmt5bHhPy4Ccbo0Bda2UcTrs64z+zlVH5hGUqzX6IkyLA12JfxGF2izZ2NZuB DnrAMWgK+VVjKAyk7u8Ga6rIzPw= X-Mailgun-Sending-Ip: 198.61.254.31 X-Mailgun-Sid: WyIwZjNkNyIsICJ6c2gtd29ya2Vyc0B6c2gub3JnIiwgIjk3ZGJkOCJd Received: from smtp2.klanderman.net (smtp2.klanderman.net [142.93.10.110]) by smtp-out-n07.prod.us-east-1.postgun.com with SMTP id 6022c9cae4842e91286ed158 (version=TLS1.3, cipher=TLS_AES_128_GCM_SHA256); Tue, 09 Feb 2021 17:43:38 GMT Received: from lwm.klanderman.net (pool-72-93-77-73.bstnma.fios.verizon.net [72.93.77.73]) by smtp2.klanderman.net (Postfix) with ESMTPSA id B9C83414E1; Tue, 9 Feb 2021 12:43:37 -0500 (EST) Received: by lwm.klanderman.net (Postfix, from userid 1000) id 6EF0F29E1A45; Tue, 9 Feb 2021 12:43:37 -0500 (EST) From: Greg Klanderman To: zsh-workers@zsh.org Subject: Re: zpty intermediate zsh process? Reply-To: Greg Klanderman References: <24606.56852.904076.773054@lwm.klanderman.net> <87v9b22ia1.fsf@lwm.klanderman.net> Date: Tue, 09 Feb 2021 12:43:37 -0500 In-Reply-To: <87v9b22ia1.fsf@lwm.klanderman.net> (Greg Klanderman's message of "Mon, 08 Feb 2021 19:31:50 -0500") Message-ID: <87o8gt2l2u.fsf@lwm.klanderman.net> User-Agent: Gnus/5.1008 (Gnus v5.10.8) XEmacs/21.4.24 (linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Seq: 47978 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: >>>>> On February 8, 2021 Greg Klanderman wrote: >>>>> On February 6, 2021 Bart Schaefer wrote: >> On Sat, Feb 6, 2021 at 10:21 AM Greg Klanderman wrote: >>> >>> I can prefix the command with 'exec' to avoid that, but looking at the >>> code in zpty.c, maybe the execode() call should just be setting the >>> (third) 'exiting' argument to true? >> That doesn't seem to cause any of the tests to fail, but I wonder >> about side effects when traps are enabled, especially the EXIT trap. > Hmm interesting, hadn't considered but I suppose the pty might even > just be executing zsh code.. I suppose this is not worth changing if > it might break desirable behavior. >> Maybe just passing !sigtrapped[SIGEXIT] as the third argument would >> suffice ... or maybe the handling of that trap by zpty is already >> iffy. > Reading zexit(), I suppose also "zshexit" and "zshexit_functions". > What is > runhookdef(EXITHOOK, NULL); > ? Relatedly, how would you feel about zpty returning the pid of the new process in $!, like the zsh/clone module does? Looks like it should just require adding | lastpid = pid; somewhere after the brace closing 'else if (!pid) { ...' Greg