From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23174 invoked by alias); 2 Dec 2011 21:49:14 -0000 Received: (qmail 23164 invoked by uid 22791); 2 Dec 2011 21:49:13 -0000 X-SWARE-Spam-Status: No, hits=-6.8 required=5.0 tests=AWL,BAYES_00,KAM_STOCKGEN,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,SINGLE_HEADER_1K,SPF_HELO_PASS,TW_BP X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 02 Dec 2011 21:48:58 +0000 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id pB2Lmv74014787 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Fri, 2 Dec 2011 16:48:58 -0500 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id pB2Lmv0O026665; Fri, 2 Dec 2011 16:48:57 -0500 Received: from barimba (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id pB2Lmu2k022743; Fri, 2 Dec 2011 16:48:56 -0500 From: Tom Tromey To: Kevin Pouget Cc: gdb-patches@sourceware.org Subject: Re: [RFC] Python Finish Breakpoints References: Date: Fri, 02 Dec 2011 21:49:00 -0000 In-Reply-To: (Kevin Pouget's message of "Wed, 30 Nov 2011 17:01:55 +0100") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.90 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain 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 X-SW-Source: 2011-12/txt/msg00058.txt.bz2 >>>>> "Kevin" == Kevin Pouget writes: Sorry about the delay on this. I got kind of distracted this week. Kevin> I noticed a bug in the previous version of the patch, which led to Kevin> `out_of_scope' callback being triggered when it was not supposed to be Kevin> (namely, when the breakpoint was hit, the execution continued, and Kevin> then the callback was triggered before the temporary breakpoint could Kevin> be deleted. Looking close now. Kevin> + if (ret) Kevin> + self_finishbp->return_value = value_to_value_object (ret); If this fails then the error is never cleared or handled. I think checking == NULL and then calling gdbpy_print_stack is appropriate. Kevin> + /* Ignore Python errors at this stage. */ Kevin> + self_bpfinish->return_type = type_to_type_object (ret_type); Kevin> + PyErr_Clear (); Kevin> + self_bpfinish->function_type = Kevin> + type_to_type_object (SYMBOL_TYPE (function)); Kevin> + PyErr_Clear (); This looked a little weird, but I verified from the docs that it is ok. I think this still needs a NEWS entry. Tom