Path: csiph.com!xmission!news.snarked.org!news.linkpendium.com!news.linkpendium.com!panix!usenet.stanford.edu!not-for-mail From: Chet Ramey Newsgroups: gnu.bash.bug Subject: Re: [bug] Segmentation fault in the "fc" builtin Date: Tue, 5 May 2020 16:10:18 -0400 Organization: ITS, Case Western Reserve University Lines: 48 Approved: bug-bash@gnu.org Message-ID: References: <06953bf8-5526-bb86-b878-2dcf9864acec@quoininc.com> <6ec4bd02-4aa3-3e03-980d-9744669c7270@case.edu> <0774c9ef-a992-8353-6e07-3e9c6e56d923@quoininc.com> Reply-To: chet.ramey@case.edu NNTP-Posting-Host: lists.gnu.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Trace: usenet.stanford.edu 1588709431 3718 209.51.188.17 (5 May 2020 20:10:31 GMT) X-Complaints-To: action@cs.stanford.edu Cc: chet.ramey@case.edu, brandon.pfeifer@quoininc.com To: "Franklin, Jason" , bug-bash@gnu.org Envelope-to: bug-bash@gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=case.edu; s=smtp-primary; t=1588709424; bh=Dmv0+9i3JDEkCurHcAJSr7Yx5RWPdtS4yHVeJU6czCQ=; h=Reply-To:Cc:Subject:To:References:From:Message-ID:Date: MIME-Version:In-Reply-To:Content-Type:Content-Transfer-Encoding; b=2XsQfKoxQ4Y1/YPDhVLP6QGgH/A0vfB5ICXJdyiPucMwofOKreiPmPVr3WSczsJLm2 MCVGplLZBPs6tRPG4JijCGtVpvQud+G2YYmPEj5aFJZoroBr5zKkNYG9tlQVNBIqTnf JV9B7HS28MKg7BNDFOHlhzlN6Lc4EDiDAhDsE6vBRLyyoLjjSN0HhCSeLf6pf4OoWyY 7mGjPrXkOU0efyJ38Ap8RbjHs4VLW9rmCeHxbw1s2NW2YPE4ei5rC+V6Vu2N/1fZ1LI 9vW/s5XbordYPfgsUDVbIKcLsi1vkW7CT0zeXtR5+9Xln0glaIJh8KgKTflnEUZ/voX QTl3myEg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=case.edu; s=smtp-primary; t=1588709422; bh=XoiyKm3cJ1/qFSGp/QJBYl6aYDX5/HzDHyPes+qDmk0=; h=Reply-To:Cc:Subject:To:References:From:Message-ID:Date: MIME-Version:In-Reply-To:Content-Type:Content-Transfer-Encoding; b=O+ayG9HVAUqaD9znEDkyZWGMoaIrGnA2ZWq9bSwHorBU3+2moWiTUSZTyzWld9dXR1 QmEiiSNhI8oCDGpHjC/3FF/ZuDs+wzPPl458tZ0Yr6PhNpxvAQjLqlzj9CyovjZ6alD /KDzx7EPC802Fsj2H/EaJ4Mjq0+jCkVrrjWW1F/Pb01w2+MMrH8BFpMeSwnekPf7+jJ yBowu49mSdtHj3cvCnspYdsBrUykdfTjGtR01/lz6Zq/Ba8ce2VzyHBhzlqlChL17Oe i6RNCRUIfB4DwpTpET6jKF5IibmvVVx5c6vzG0Juf1x4F1nq38GolDkj3MwXuRQQVzQ 6lhrC6oQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=case.edu; s=g-case; h=reply-to:cc:subject:to:references:from:autocrypt:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=XoiyKm3cJ1/qFSGp/QJBYl6aYDX5/HzDHyPes+qDmk0=; b=IFQ3nmt+x1aiXeCR7XgwIrXlMYw72O9EHS8pGwj6J/rXpK/OWD9IpfUXEbVrL58GlU jFaqotMpgG14POnQ92xqvME9DQ1Hlb9ArE3Pvuk3gGLnMEc+4ud5sN3V6ClaAF+QokaD hO2B1OY8yeivUMmCqfI/2PrJD/JtgaWSJ+2ggxoXaPknJmSTVa5ZKawich0e/QN8FDSv 99dcYeSCeQ+AQ8pr64//oIB8hOjiGALovt6IrAcbbLIJ0gxP6w4lOxfXWtXZDKmaWi0w hQF3q5NB9o7txPNP6C5Kg/rtdQatNPH7k2nBXGg5nLaURu1+MUBCfYrHNk5pqQdrlyc+ sCwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:reply-to:cc:subject:to:references:from:autocrypt :organization:message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=XoiyKm3cJ1/qFSGp/QJBYl6aYDX5/HzDHyPes+qDmk0=; b=kN/bg1wkbX2I/32LT0LYMJVBAttvXWe4Q7N+OkrgsOEvIVwvJWACdHf00etTVrriGw ElKvJyPssNA7Ghme6AnEUZw6MwQQA163vSeUEdm6uYBEsZAntCP/9nT7clyulQRpncVA 5/s2QZIw8bb+FNovjclQ8AqlhyGZgtGZ4wVSSwKc4ij1Ons5dWw33Y3fLY2tB3YNwk+J QAjmLnFaT+SynmeI/7VMOibaNI/604LjV+DqrnjgIGqRnVoTntGCVJuMzBT/vZZRB8HE CFxX21XSybPvBlhzSrjOkRoYSPaLzkGg5ymSmBh1Njhw/tzAX0yt4hC89/PA0gBX5pyo bAJw== X-Gm-Message-State: AGi0PuZTKjHURKvvbHyuipzGVAc99g1Id6nQOXQYPu9GmM5aNqe9hbM6 /l0qR6/yDVeZ+lridCD8yBqFtsKf9SIgDdF2Jr9lmqV5Y/GhOU93k5DDp8l+eWCeEntC11tOeGg UrLUcAvQ5qB0= X-Received: by 2002:ac8:4253:: with SMTP id r19mr4773141qtm.116.1588709421429; Tue, 05 May 2020 13:10:21 -0700 (PDT) X-Google-Smtp-Source: APiQypJDCNSqWXb36pUpby+Ge+dV+L9+3Soo/pwNdDGv/Fx/Q+yAFNxAlGAWiTSE0fInRCACaVjWMQ== X-Received: by 2002:ac8:4253:: with SMTP id r19mr4773103qtm.116.1588709420988; Tue, 05 May 2020 13:10:20 -0700 (PDT) Autocrypt: addr=chet.ramey@case.edu; prefer-encrypt=mutual; keydata= mQGiBEEOsGwRBACFa0A1oa71HSZLWxAx0svXzhOZNQZOzqHmSuGOG92jIpQpr8DpvgRh40Yp AwdcXb8QG1J5yGAKeevNE1zCFaA725vGSdHUyypHouV0xoWwukYO6qlyyX+2BZU+okBUqoWQ koWxiYaCSfzB2Ln7pmdys1fJhcgBKf3VjWCjd2XJTwCgoFJOwyBFJdugjfwjSoRSwDOIMf0D /iQKqlWhIO1LGpMrGX0il0/x4zj0NAcSwAk7LaPZbN4UPjn5pqGEHBlf1+xDDQCkAoZ/VqES GZragl4VqJfxBr29Ag0UDvNbUbXoxQsARdero1M8GiAIRc50hj7HXFoERwenbNDJL86GPLAQ OTGOCa4W2o29nFfFjQrsrrYHzVtyA/9oyKvTeEMJ7NA3VJdWcmn7gOu0FxEmSNhSoV1T4vP2 1Wf7f5niCCRKQLNyUy0wEApQi4tSysdz+AbgAc0b/bHYVzIf2uO2lIEZQNNt+3g2bmXgloWm W5fsm/di50Gm1l1Na63d3RZ00SeFQos6WEwLUHEB0yp6KXluXLLIZitEJLQwQ2hldCBSYW1l eSAoQ2FzZSBzdGFuZGFyZCkgPGNoZXQucmFtZXlAY2FzZS5lZHU+iF8EExECAB8FAkPi19EC GwMHCwkIBwMCAQMVAgMDFgIBAh4BAheAAAoJELtYafBk6nSrelkAn31Gsuib7GcCZHbv5L5t VKYR9LklAJ4hzUHKA49Z0QXR+qCb80osIcmPSbkBDQRBDrBvEAQAkK6TAOKBEM+EC4j6V/7o /riVZqcgU5cid2qG9TXdwNtD9a3kvA/ObZBO93sX59wc6Bnwo4VJxsOmMlpGrAjJsxNwg3QH akEtf8LXRbVpj5xStdmBdQZUhIQyalo/2/TZq5OijtddUQcL5cs70hTv/FpT3wUvr2Xr8rjF 41IFEz8AAwcD/A0CZEGlzIrT5WCBnl6xBog/8vKiUCbarByat3d1mL6DbizvKNXQRTC9E/vE dENAWCQCjr75Bu55xT8n3SXGtWdDC5xmZ/P3OBYORP8yl8H8I1FIosWOFirbIeYdZPq8SPD1 HL+EXo9zSiHVrrZRJ19ooCKKbSdXHFCY+aJG+0KZiEkEGBECAAkFAkEOsG8CGwwACgkQu1hp 8GTqdKvjcACfZlkVCDwaz/NTO9cy3t69oWpVPNwAnRwe0qk/WL/gfhH346xh5B3HFbFN User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 In-Reply-To: <0774c9ef-a992-8353-6e07-3e9c6e56d923@quoininc.com> Content-Language: en-US X-Mirapoint-IP-Reputation: reputation=Good-1, source=Queried, refid=tid=0001.0A020303.5EB1C5B4.0069, actions=tag X-Mirapoint-IP-Reputation: reputation=good-1, source=Fixed, refid=n/a, actions=tag X-Junkmail-Status: score=8/80, host=mpv4-2015.case.edu X-Junkmail-PrAS-Raw: score=8/80, refid=2.7.2:2020.5.5.191817:17:8.317, ip=, rules=__YOUTUBE_RCVD, DKIM_SIGNATURE, __X_GOOGLE_DKIM_SIGNATURE, __HAS_REPLYTO, __HAS_CC_HDR, __MULTIPLE_RCPTS_CC_X2, __SUBJ_REPLY, __BOUNCE_CHALLENGE_SUBJ, __BOUNCE_NDR_SUBJ_EXEMPT, __SUBJ_ALPHA_END, __TO_MALFORMED_2, __MULTIPLE_RCPTS_TO_X2, __TO_NAME, __TO_NAME_DIFF_FROM_ACC, __HAS_REFERENCES, __REFERENCES, __HAS_FROM, FROM_EDU_TLD, __HAS_MSGID, __SANE_MSGID, DATE_TZ_NA, __USER_AGENT, __MOZILLA_USER_AGENT, __MIME_VERSION, __IN_REP_TO, __CT, __CT_TEXT_PLAIN, __CTE, __REPLYTO_SAMEAS_FROM_ADDY, __REPLYTO_SAMEAS_FROM_ACC, __FROM_DOMAIN_IN_ANY_CC2, __REPLYTO_SAMEAS_FROM_DOMAIN, __DKIM_ALIGNS_1, __DKIM_ALIGNS_2, __ANY_URI, __URI_MAILTO, __URI_WITH_PATH, __URI_ENDS_IN_SLASH, __URI_NO_WWW, __CP_URI_IN_BODY, __FRAUD_MONEY_CURRENCY_DOLLAR, __SUBJ_ALPHA_NEGATE, __URI_IN_BODY, __URI_NOT_IMG, __MAIL_CHAIN, __FORWARDED_MSG, __BODY_NO_MAILTO, __NO_HTML_TAG_RAW, [TRUNCATED], so=2010-03-03 19:42:08, dmn=2016-08-03-0138 Received-SPF: pass client-ip=129.22.103.195; envelope-from=chet.ramey@case.edu; helo=mpv4-2015.case.edu X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/05 16:10:22 X-ACL-Warn: Detected OS = Linux 2.4.x-2.6.x [generic] [fuzzy] X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: bug-bash@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Bug reports for the GNU Bourne Again SHell List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Mailman-Original-Message-ID: X-Mailman-Original-References: <06953bf8-5526-bb86-b878-2dcf9864acec@quoininc.com> <6ec4bd02-4aa3-3e03-980d-9744669c7270@case.edu> <0774c9ef-a992-8353-6e07-3e9c6e56d923@quoininc.com> Xref: csiph.com gnu.bash.bug:16285 On 5/5/20 12:16 PM, Franklin, Jason wrote: > Agreed. This is an undocumented feature, which is why Brandon and I had > a bit of trouble figuring out what "should" happen. :/ > >> I'm leaning towards making 0 and -0 out-of-range errors for the non-listing >> case. This is what other shells do (the netbsd and freebsd shells being >> notable exceptions). > > Well, I think 0 and -0 have different intentions as it stands. In bash, yes. Nowhere else. They both require special handling. > Currently, "0" indicates the command right before the "fc" invocation > that caused the editing or listing. This shouldn't ever cause an > infinite loop and should not be an out-of-range error, I assert. Yes, it's equivalent to -1. That's just giving it semantics, not providing any unique functionality. It could just as easily have been an error, as POSIX intended. > Example session: > > bash-5.0$ true # example command > bash-5.0$ fc -l 0 > 48 true # example command > bash-5.0$ > > Thus, the argument in question is specifically "-0" proper. This, to > me, means "the fc command itself" that did this work. > > Would a good solution be to have "0" function as-is, but have "-0" only > be valid in the listing case? This would avoid the problem above. This is about the only reasonable alternative. > Of course, documenting the intent of the feature would be key to making > the change a successful one! I'll come up with something. Chet -- ``The lyf so short, the craft so long to lerne.'' - Chaucer ``Ars longa, vita brevis'' - Hippocrates Chet Ramey, UTech, CWRU chet@case.edu http://tiswww.cwru.edu/~chet/