From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12538 invoked by alias); 5 Apr 2018 14:46:32 -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: 42597 Received: (qmail 11867 invoked by uid 1010); 5 Apr 2018 14:46:32 -0000 X-Qmail-Scanner-Diagnostics: from park01.gkg.net by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(205.235.26.22):SA:0(-1.4/5.0):. Processed in 15.107592 secs); 05 Apr 2018 14:46:32 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00, FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS, SPF_PASS,T_DKIM_INVALID,T_RP_MATCHES_RCVD autolearn=no autolearn_force=no version=3.4.1 X-Envelope-From: SRS0=fJi4=G2=yahoo.co.uk=okiddle@bounces.park01.gkg.net X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | X-Virus-Scanned: by amavisd-new at gkg.net Authentication-Results: amavisd4.gkg.net (amavisd-new); dkim=pass (2048-bit key) header.d=yahoo.co.uk X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s2048; t=1522939567; bh=UKnXq436WbweXIIB1nEZjTVkL4A3xRuWWGLoYqs92ws=; h=From:To:Subject:Date:From:Subject; b=JjZQqKctMTbVc/C0IVqi+Co68LdD9dbGCQAT7J9MdcyKDhA6Qt0R7yogOo27NsjMX7vjpEuGsLXa+nukcLvaQgqpxn4c705XXKjbhWD3aB1KXjcdKbKIxyj2yDzzMeEYleRu7jugQuXrLXO+ifW/ThRhPrrx/b6gMUguoTWSzWBSIVJfp1DMMCqYPNyGnMIBNUC9N4/HDYDuSeoO8dAdkHrHJUQujnQLadQkhu0BWsOSQjQI1C8YQOaXxrqLfLkRWPEgWUk4/x89AptasbFMgpj0S0mCKs0BOMZtmxA5oZg7yJ0Cq1cWchkK1rnI+twctgWRPeIpRbtx3W8NWg2tWw== X-YMail-OSG: igKb1JQVM1mHqQm413uZTUoSrfR.ANgcKI8xPeQHJbTGkkDpKJBsHnnUxjI_f.8 t_3mJoGDyhi1KWnwZob4oBPXdD_XeYqZpYw526tMt1G1miF1Jz4xeyjZOGejvreyLBqrcqOxfT76 n0msh8d3UxcfRyvBaisxV71pwMlrUppH1Fa6Q1aZFZCuDn3aVXk59u9rlQ7ydRI_TpyEYEoB33qU v85YtO9EBK6rlkG38EA69OGJ1G7XqFjOHkqn_tmHSAD8iMHPCePQXRfJhFNc5t340XZZDaTOvFEz SMrISMAzqPEL6OxCTazIFIANWBHIOALKhUe8qJTpanUeGzkf4prWyo1zBcbDE8qGwCyiVxPUtDSe LbHGMguYd91bVE2p.36UNSiBKRM1lw.jNbvujTcQq7rh9B9vf6XQsiB1QnlMztpl9hzgnYHWSNlJ .yeMkUfglLpsPDb6iunjYSybD0.d1twyKFDZoB2k4W6T28HFJXXC1R6CSt0vtXshO55mhIBb3I6Z Tgo2areuU4A-- From: Oliver Kiddle To: Zsh workers Subject: PATCH: memory leak found by coverity MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <26913.1522939564.1@thecus> Date: Thu, 05 Apr 2018 16:46:05 +0200 Message-ID: <26914.1522939565@thecus> Coverity also identifies a memory leak in the case of these two error messages. This is new code since the last release. Oliver diff --git a/Src/params.c b/Src/params.c index de7730ae7..36f5f0676 100644 --- a/Src/params.c +++ b/Src/params.c @@ -3216,7 +3216,7 @@ assignaparam(char *s, char **val, int flags) * This only applies if the flag ASSPM_KEY_VALUE is passed in, * indicating prefork() detected this syntax. * - * For associative arrays we just junk the Makrer elements. + * For associative arrays we just junk the Marker elements. */ if (flags & ASSPM_KEY_VALUE) { char **aptr; @@ -3243,6 +3243,7 @@ assignaparam(char *s, char **val, int flags) (!isset(KSHARRAYS) && *iptr == 0)) { unqueue_signals(); zerr("bad subscript for direct array assignment: %s", *aptr); + freearray(val); return NULL; } if (!isset(KSHARRAYS)) @@ -3260,6 +3261,7 @@ assignaparam(char *s, char **val, int flags) fullval = zshcalloc((maxlen+1) * sizeof(char *)); if (!fullval) { zerr("array too large"); + freearray(val); return NULL; } fullval[maxlen] = NULL;