From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27550 invoked by alias); 15 Jun 2015 23:44:53 -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: X-Seq: 35476 Received: (qmail 20325 invoked from network); 15 Jun 2015 23:44:51 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:date:message-id; bh=xZReaaX4y1EYnpbsbV05lE1kzX5myocWKEXw28L05YU=; b=uxD3DieTFqSLYmqcIa8+hs4ZlKFeFXN/msX0dByZnQEpTQJy3UNasRs8+Zu/d6D6NC Caji6f/OhwQon1GhFCcRxQU0LEq5SujXvWifgFKJt1uQHJ02iSLwmpv2DBIlS6kWaN3E Bxx109ZPux4uZTXGdXvJ+viMEcsLN6op0cOA6gLshe8zKmMTp/RVOtaO9Kzhw0sx8TVT 24WiLcXiS3o16xAV1DLr7V8jBl4NBlp7fZtwAmT7vzU6+KJEMk/pb9i+6aob/BH37QbX fpd8t5jC7fc3DgTEWHQy8cm/7jl39wUd36Bnd9FbgEtee0G7ckoWHyMVwCbKZrK8cH8H O+pA== X-Received: by 10.180.86.234 with SMTP id s10mr35662532wiz.50.1434411889527; Mon, 15 Jun 2015 16:44:49 -0700 (PDT) From: Mikael Magnusson To: zsh-workers@zsh.org Subject: PATCH: Allow setting $0 when POSIX_ARGZERO is not set Date: Tue, 16 Jun 2015 01:44:39 +0200 Message-Id: <1434411879-12403-1-git-send-email-mikachu@gmail.com> X-Mailer: git-send-email 2.4.0 I don't think this should hurt anything. --- Src/params.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/Src/params.c b/Src/params.c index 98541a6..3b75735 100644 --- a/Src/params.c +++ b/Src/params.c @@ -196,7 +196,7 @@ static const struct gsu_integer ttyidle_gsu = { ttyidlegetfn, nullintsetfn, stdunsetfn }; static const struct gsu_scalar argzero_gsu = -{ argzerogetfn, nullstrsetfn, nullunsetfn }; +{ argzerogetfn, argzerosetfn, nullunsetfn }; static const struct gsu_scalar username_gsu = { usernamegetfn, usernamesetfn, stdunsetfn }; static const struct gsu_scalar dash_gsu = @@ -4044,6 +4044,21 @@ lcsetfn(Param pm, char *x) } #endif /* USE_LOCALE */ +/* Function to set value for special parameter `0' */ + +/**/ +static void +argzerosetfn(UNUSED(Param pm), char *x) +{ + if (x) { + if (!isset(POSIXARGZERO)) { + zsfree(argzero); + argzero = ztrdup(x); + } + zsfree(x); + } +} + /* Function to get value for special parameter `0' */ /**/ -- 2.4.0