From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 65683 invoked by alias); 19 Jun 2017 04:51:23 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 65653 invoked by uid 89); 19 Jun 2017 04:51:20 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.9 required=5.0 tests=BAYES_00,KAM_LAZY_DOMAIN_SECURITY,SPF_HELO_PASS,T_RP_MATCHES_RCVD autolearn=no version=3.3.2 spammy= X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 19 Jun 2017 04:51:19 +0000 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id E916D3299; Mon, 19 Jun 2017 04:51:22 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com E916D3299 Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=sergiodj@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com E916D3299 Received: from localhost (unused-10-15-17-193.yyz.redhat.com [10.15.17.193]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BE1731724A; Mon, 19 Jun 2017 04:51:22 +0000 (UTC) From: Sergio Durigan Junior To: GDB Patches Cc: Simon Marchi , Pedro Alves Subject: Re: [PATCH v6] C++ify gdb/common/environ.c References: <20170413040455.23996-1-sergiodj@redhat.com> <20170619043531.32394-1-sergiodj@redhat.com> Date: Mon, 19 Jun 2017 04:51:00 -0000 In-Reply-To: <20170619043531.32394-1-sergiodj@redhat.com> (Sergio Durigan Junior's message of "Mon, 19 Jun 2017 00:35:31 -0400") Message-ID: <87k248y3zp.fsf@redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-IsSubscribed: yes X-SW-Source: 2017-06/txt/msg00493.txt.bz2 On Monday, June 19 2017, I wrote: > [...] > -struct gdb_environ * > -make_environ (void) > +gdb_environ & > +gdb_environ::operator= (gdb_environ &&e) > { > - struct gdb_environ *e; > - > - e = XNEW (struct gdb_environ); > - > - e->allocated = 10; > - e->vector = (char **) xmalloc ((e->allocated + 1) * sizeof (char *)); > - e->vector[0] = 0; > - return e; > -} > - > -/* Free an environment and all the strings in it. */ > - > -void > -free_environ (struct gdb_environ *e) > -{ > - char **vector = e->vector; > - > - while (*vector) > - xfree (*vector++); > - > - xfree (e->vector); > - xfree (e); > + clear (); > + m_environ_vector = std::move (e.m_environ_vector); > + return *this; > } I should probably do an m_environ_vector.clear () before doing the std::move, because the vector will contain the NULL element. I'll make sure to do this before I push the patch. Thanks, -- Sergio GPG key ID: 237A 54B1 0287 28BF 00EF 31F4 D0EB 7628 65FC 5E36 Please send encrypted e-mail if possible http://sergiodj.net/