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,T_SCC_BODY_TEXT_LINE, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 5782 invoked from network); 20 Jun 2022 20:31:45 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 20 Jun 2022 20:31:45 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1655757105; b=VD2/yT5o39QstdQjf0Q5sB6lVkaCqbkPOM0iL2spIwLowSVAegpZceRPvjDVJeF6mJYyUfJIby GD751kdf0X1+hk3NmluZYxnQ0ZNi+yNM1cd+8XRA13CbkxuLbY8/hNZujcO+a+H3+QoA0zjmzM yqE6b8vjulfS5I6WCTOwguwx/7Lt9x2j28IgjMfHyWRH4L5bGOPgNbGSLF6E+G1domSeDNd3mm espVPaWTAtp7bswpBlWN0ybyYj9//uGNyEENJZCevl9apUoCUG1sLhrW40bp7E/yUDB6Dec2Fy Ff7sBMoCF6yfM0PeD5vHZZO1ZR/f7/qQSxJneYozCsPzaA==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ed1-f44.google.com) smtp.remote-ip=209.85.208.44; dkim=pass header.d=brasslantern-com.20210112.gappssmtp.com header.s=20210112 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1655757105; bh=+SjnXPnaFc+88bd0Fy2TVZPWq7zLlKDwNKPaHCF95xE=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:DKIM-Signature:DKIM-Signature; b=U+71LDKk6NFvjst9ggjPgUr+Ff1ATzwB+3qrvYSmHN9uqfClEbKl64+2O8qkDqfZQYMosvfp+r Q+I4AIaRHJms5iq4qDclDrNBL+Vj/WSwv6okVFTGUGbyARacmg6C+tUVyPGk08RjwhwQ1T1TW5 3Ry7EacanNXXYVbJXGfMrExqqHDElc1KQ8qTK/Ew/H7r7dt2vb46YKixoVqQkJEp/2nATM+CaG iCLRzXk2Ce5gz2BbbuEE5OZ3l4y2ywGb8rePOXraQoEl6JMnMf/ArVA8GJk54fIpOpHkm51DV8 kFpuk2zBgJ8J8wJyOrdeGiwe9LL2nMrdXmvSduH9178D1Q==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Type:Cc:To:Subject:Message-ID :Date:From:In-Reply-To:References:MIME-Version:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=Hdfl83EZfdyZh/YwiE+fhO+ZjpXrUmKsrPDvUc3o8+M=; b=hAYmYSRnLsA/f7M1u7YphAeIdm w2Fw6oT1Zlj3hjXQav+95PNMxahCd9QpkaGl4bGWWNdFIAPM0+wUZztz2UM/IOYQfc9JCbSOFzaDz +1Ms+b/TrLqKxPGOfy+EndtiHj2JIPBInZrNvvluqWeLqyGh85e1peQf9e13Rl7l3HzOU38nz8Ijw 5lY8LNZ3XMfMW7keweNCWNegxwdmVAYsZZy8j4n4Ys4I0cOJKbfH939y4tI+TKvRKYilE5cWFGEHj GHPIcDG4cw5ylM49yKTgE2IBZJHILdhPe5T95AvoBh2d+znnsjkoj5ssBjg3hEiwP/Qd2rgf/3QmF aLZBBnKg==; Received: from authenticated user by zero.zsh.org with local id 1o3O3l-000Hbi-3H; Mon, 20 Jun 2022 20:31:45 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ed1-f44.google.com) smtp.remote-ip=209.85.208.44; dkim=pass header.d=brasslantern-com.20210112.gappssmtp.com header.s=20210112 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-ed1-f44.google.com ([209.85.208.44]:44880) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1o3O3B-000HIk-2K; Mon, 20 Jun 2022 20:31:10 +0000 Received: by mail-ed1-f44.google.com with SMTP id b8so16626387edj.11 for ; Mon, 20 Jun 2022 13:31:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20210112.gappssmtp.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Hdfl83EZfdyZh/YwiE+fhO+ZjpXrUmKsrPDvUc3o8+M=; b=Tdqat1PKu/i8NcCJ0Xdfc08cJmt4tGOHmPT5i/ulmwhsIWF8lyYh6AEA3aPP8qfUi8 cdxWndrzXw0ckkr0uPBsPRQug1adF0nLdIFGtqRUhBx1QnxlBrgnLnDe1km0F78jB/B7 FdKcDcOKDf6p0+/s7uSeQBYi2a0i30YfccFpRGbGNRjmUVb+cwFxTAbI8B2cXWr4sJiF TcIOkx8VBaHqqv2TkwXLLn4UvUK4XKouR2yC3W6hmPD6GXgewiKYYcTvUON8c4NpXIwk rqIsL+ZOfwXZJ/f39z2M0RRWbF4G0k2A57QJG8VdmtvpBmFMToJoG3mmeKGWdzgsNIWZ 8H4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Hdfl83EZfdyZh/YwiE+fhO+ZjpXrUmKsrPDvUc3o8+M=; b=3PDEKT34pZTLtEOeZt5y72iiNp4l0VEa+wlDHw98mWgPYuIw9Z9CcjG1K3zM5HbF0r tXz1LJXcjgr98S5itrr2EhnnwRyAhfxgGB/eUA3MawaSlsMA1MJ5Yko22rCUexAdjGHM nFE6NHPp04fMrw+pzTjH7FHr3RhoBEuXBl0KtIA6W5qY7m7GoL8A2a18pMwfjAoIgvsW 6RY787ZFD5dMbjRAG7ITrTJLojIUDU9OkA83Kwn7bmW15RAZnldX0OSq2No6SyWTs45u dlTD5INOFkSpIFd1BP/qwvBlbOfQ7k9RA01k3jZCzBujIkCY5zj4H1GI1AIha5oTg+fP 7I+g== X-Gm-Message-State: AJIora9AhWYG8ZGcVJ0KMo9+D7H57SffAjHbdUIlzHaoRvtDTvR6BmKn 9nppZdJJWbybHRgyu9z/1YFxcRsSuC82X6k+R9hLMVXWXnOf5w== X-Google-Smtp-Source: AGRyM1uUbCWU2GUj4y5KvVFzAD9JvIVcvhkAANybh7llE48Wb2kACcs2oJJ5OebNEx1272XaaqYVwRcQTY3Di/XRrA4= X-Received: by 2002:a05:6402:249c:b0:431:3883:967a with SMTP id q28-20020a056402249c00b004313883967amr32033823eda.264.1655757068525; Mon, 20 Jun 2022 13:31:08 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Bart Schaefer Date: Mon, 20 Jun 2022 13:30:57 -0700 Message-ID: Subject: Re: [Bug] comparisson operator `[[` not working as expected To: Paulo Diovani Cc: Zsh hackers list Content-Type: text/plain; charset="UTF-8" X-Seq: 50379 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: On Mon, Jun 20, 2022 at 11:33 AM Paulo Diovani wrote: > > In version 5.9 the [[ ]] operator is behaving unexpectedly for the following case: Yep, this is a bug, introduced when a different crashing bug was fixed. It's an off-by-one error skipping the first job in the table. The relevant ChangeLog entry for the crash bug is 2022-03-30 Peter Stephenson * 49906 (Bart), 49911: Doc/Zsh/builtins.yo, Doc/Zsh/mod_parameter.yo, Src/exec.c, Src/jobs.c, Test/W03jobparameters.ztst: Fix querying jobs in subshell. diff --git a/Src/jobs.c b/Src/jobs.c index e0e453ed8..25ceb81c4 100644 --- a/Src/jobs.c +++ b/Src/jobs.c @@ -2402,7 +2402,7 @@ bin_fg(char *name, char **argv, Options ops, int func) int curmaxjob, ignorejob; if (unset(MONITOR) && oldmaxjob) { jobptr = oldjobtab; - curmaxjob = oldmaxjob ? oldmaxjob - 1 : 0; + curmaxjob = oldmaxjob ? oldmaxjob : 0; ignorejob = 0; } else { jobptr = jobtab;