From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.polymtl.ca (smtp.polymtl.ca [132.207.4.11]) by sourceware.org (Postfix) with ESMTPS id 843C83858022 for ; Thu, 6 May 2021 02:28:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 843C83858022 Received: from simark.ca (simark.ca [158.69.221.121]) (authenticated bits=0) by smtp.polymtl.ca (8.14.7/8.14.7) with ESMTP id 1462SARn018611 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 5 May 2021 22:28:15 -0400 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp.polymtl.ca 1462SARn018611 Received: from [10.0.0.11] (192-222-157-6.qc.cable.ebox.net [192.222.157.6]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by simark.ca (Postfix) with ESMTPSA id 573581E813; Wed, 5 May 2021 22:28:10 -0400 (EDT) Subject: Re: [PATCHv2 2/2] gdb/guile: Have gdbscm_safe_source_script return a unique_ptr To: Andrew Burgess , gdb-patches@sourceware.org References: <87bl9pq9li.fsf@tromey.com> <17720e44850a8a0ed172812da5ce6a3919f9bb4e.1620248278.git.andrew.burgess@embecosm.com> From: Simon Marchi Message-ID: Date: Wed, 5 May 2021 22:28:10 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 MIME-Version: 1.0 In-Reply-To: <17720e44850a8a0ed172812da5ce6a3919f9bb4e.1620248278.git.andrew.burgess@embecosm.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Poly-FromMTA: (simark.ca [158.69.221.121]) at Thu, 6 May 2021 02:28:10 +0000 X-Spam-Status: No, score=-10.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, NICE_REPLY_A, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 May 2021 02:28:17 -0000 On 2021-05-05 5:01 p.m., Andrew Burgess wrote: > diff --git a/gdb/guile/scm-safe-call.c b/gdb/guile/scm-safe-call.c > index 5bea970239b..a475774f921 100644 > --- a/gdb/guile/scm-safe-call.c > +++ b/gdb/guile/scm-safe-call.c > @@ -432,7 +432,7 @@ scscm_source_scheme_script (void *data) > printed according to "set guile print-stack" and the result is an error > message allocated with malloc, caller must free. */ > > -char * > +gdb::unique_xmalloc_ptr > gdbscm_safe_source_script (const char *filename) > { > /* scm_c_primitive_load_path only looks in %load-path for files with > @@ -454,7 +454,7 @@ gdbscm_safe_source_script (const char *filename) > (void *) filename); > > if (result != NULL) > - return xstrdup (result); > + return make_unique_xstrdup (result); > return NULL; Hmm, result comes from gdbscm_with_guile, which states: The result if NULL if no exception occurred, otherwise it is a statically allocated error message (caller must *not* free). */ Simon