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.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,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 7a48bde0 for ; Tue, 19 Nov 2019 19:04:57 +0000 (UTC) Received: (qmail 16450 invoked by alias); 19 Nov 2019 19:04:48 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: List-Unsubscribe: X-Seq: 24451 Received: (qmail 3757 invoked by uid 1010); 19 Nov 2019 19:04:48 -0000 X-Qmail-Scanner-Diagnostics: from out1-smtp.messagingengine.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.102.0/25635. spamassassin: 3.4.2. Clear:RC:0(66.111.4.25):SA:0(-2.6/5.0):. Processed in 4.853044 secs); 19 Nov 2019 19:04:48 -0000 X-Envelope-From: d.s@daniel.shahaf.name X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: none (ns1.primenet.com.au: domain at daniel.shahaf.name does not designate permitted sender hosts) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= daniel.shahaf.name; h=mime-version:message-id:in-reply-to :references:date:from:to:subject:content-type :content-transfer-encoding; s=fm1; bh=dhRCv8Xf9MZhgcugHT9wml36o6 3GYXcGjtVb39ytHis=; b=qyNidKWCE5dOxSk8Im/TBeXePQgswUHsBqviHINfSk yf/BT1P1q4gNFy+SRiPnPS5z/dkR0Op2+GdSLosyns+QXf3k2N8reIaGvnFz22AC S8KekGFxgdOESiBdIsycUktoSzcijSxi4RgzkuGypigjUgtHkoAHtSQJ6fd/IHVP KMAdlbKY1EP/Fmi7EQe1gcnDteY0wcA+POe4ofN7zcLAJ6ERWshWkgXX8I3fWrlT GunZ2HU9iiCmjtwNM407Xdq1FBL//ntuE+GkWEXcaZdS0nF2895ERbZHqmGeBzOx tGS6KVTWoLZzIo53jOh/Cfi707yereTDTl0yTm0wc/Jg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; bh=dhRCv8Xf9MZhgcugHT9wml36o63GYXcGjtVb39ytH is=; b=G4HlgtbxAPrgloKAwUKv53Naoc89qECu2K+18Y7sMpZgoJ7MINxOQ7FZX t4xhLXA0c0edH7ejRzNgzzb18Srq01Gnn46arhGpXDsKCQaiNUwzINWpPBG/bv2a 0FHqmJtL+0fDV9MDQW7qwIrTYYkpK/Df1JFwojGOMMPNdEELFbu0sIWNP5zQt/O1 YphvNPlWfktegOjLdeHtkkKXdcnO0jYRP3garR2U9iF0he+6CkaJ/MA8YP4uH5hA nNGZup47AALlciJDvvj1YrQi81jz/fv1F/f5EjtI0d005JEtRVAPcBTcDCNKsgIb bMWeTeM4esT6bVp6kJoI0L6stzU4g== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedufedrudegkedguddvudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecunecujfgurhepofgfggfkjghffffhvffutgfgse htqhertderreejnecuhfhrohhmpedfffgrnhhivghlucfuhhgrhhgrfhdfuceougdrshes uggrnhhivghlrdhshhgrhhgrfhdrnhgrmhgvqeenucfrrghrrghmpehmrghilhhfrhhomh epugdrshesuggrnhhivghlrdhshhgrhhgrfhdrnhgrmhgvnecuvehluhhsthgvrhfuihii vgeptd X-ME-Proxy: X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.1.7-578-g826f590-fmstable-20191119v1 Mime-Version: 1.0 Message-Id: In-Reply-To: <1574187661.6021.15.camel@samsung.com> References: <1574070429.4551.2.camel@samsung.com> <1574187661.6021.15.camel@samsung.com> Date: Tue, 19 Nov 2019 19:03:10 +0000 From: "Daniel Shahaf" To: zsh-users@zsh.org Subject: Re: P modify in history event Content-Type: text/plain;charset=utf-8 Content-Transfer-Encoding: quoted-printable Peter Stephenson wrote on Tue, 19 Nov 2019 18:21 +00:00: > On Tue, 2019-11-19 at 18:00 +0000, Daniel Shahaf wrote: > > Can =C2=ABzgetcwd()=C2=BB return an empty string?=C2=A0=C2=A0If that= 's possible, the > > condition will be undefined behaviour (=C2=AB""[-1]=C2=BB). >=20 > Not in a sane world, but there are cases where we can't work out the > current directory.=C2=A0=C2=A0I think we return "." then, in fact.=C2=A0= =C2=A0But a bit of > safety probably wouldn't hurt --- applying [-1] to functions arguably > isn't top class style. How about this, then? diff --git a/Src/compat.c b/Src/compat.c index 7131d91a4..02b66a780 100644 --- a/Src/compat.c +++ b/Src/compat.c @@ -519,7 +519,7 @@ zgetcwd(void) #endif /* HAVE_GETCWD */ if (!ret) ret =3D unmeta(pwd); - if (!ret) + if (!ret || *ret =3D=3D '\0') ret =3D dupstring("."); return ret; } Cheers, Daniel (let's continue the discussion on -workers@)