From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from primenet.com.au (ns1.primenet.com.au [203.24.36.2]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id ecbc7fdd for ; Mon, 21 Jan 2019 23:00:30 +0000 (UTC) Received: (qmail 5582 invoked by alias); 21 Jan 2019 23:00:17 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: List-Unsubscribe: X-Seq: 44007 Received: (qmail 9751 invoked by uid 1010); 21 Jan 2019 23:00:17 -0000 X-Qmail-Scanner-Diagnostics: from kahlil.inlv.org by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.100.2/25112. spamassassin: 3.4.2. Clear:RC:0(37.59.109.123):SA:0(-1.9/5.0):. Processed in 2.191717 secs); 21 Jan 2019 23:00:17 -0000 X-Envelope-From: martijn@inlv.org X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Subject: Bug with traps and exit To: zsh-workers@zsh.org References: From: Martijn Dekker Openpgp: preference=signencrypt Autocrypt: addr=martijn@inlv.org; prefer-encrypt=mutual; keydata= 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 48csIvBNgfdRumZbb7sieWyff/8hEQk= Message-ID: <3859b4bf-08ba-62d5-f00a-3ec4e67caf95@inlv.org> Date: Mon, 21 Jan 2019 23:00:09 +0000 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 7bit Found a strange issue with traps and 'exit'. Test script: trap 'printf $1; exit; printf $2' USR1 fn() { printf 1 kill -s usr1 $$ printf 2 } printf 0 fn A B printf 3 Every shell outputs 01A, except zsh, which outputs 01A2. This means the execution of the fn() function is not interrupted. The USR1 trap executes 'exit' and does not execute the rest of the trap action, but instead of exiting the shell, zsh continues to execute fn() and then exits. Confirmed down to zsh 5.0.8 (didn't test earlier versions). - M.