From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12710 invoked by alias); 19 Apr 2013 14:36:52 -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 12701 invoked by uid 89); 19 Apr 2013 14:36:51 -0000 X-Spam-SWARE-Status: No, score=-6.8 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,RCVD_IN_DNSWL_HI,RCVD_IN_HOSTKARMA_W,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.1 Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Fri, 19 Apr 2013 14:36:51 +0000 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r3JEaoPM011892 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 19 Apr 2013 10:36:50 -0400 Received: from barimba (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id r3JEanUS029979 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Fri, 19 Apr 2013 10:36:49 -0400 From: Tom Tromey To: gdb-patches@sourceware.org Subject: [PATCH 16/28] reference count in bpfinishpy_out_of_scope References: <87ehe638ww.fsf@fleche.redhat.com> Date: Fri, 19 Apr 2013 14:44:00 -0000 In-Reply-To: <87ehe638ww.fsf@fleche.redhat.com> (Tom Tromey's message of "Fri, 19 Apr 2013 08:13:51 -0600") Message-ID: <874nf2ziwu.fsf@fleche.redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SW-Source: 2013-04/txt/msg00599.txt.bz2 The checker noticed a missing decref in bpfinishpy_out_of_scope. * python/py-finishbreakpoint.c (bpfinishpy_out_of_scope): Decref the reslut of PyObject_CallMethod. --- gdb/python/py-finishbreakpoint.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gdb/python/py-finishbreakpoint.c b/gdb/python/py-finishbreakpoint.c index b52bd7e..f65e026 100644 --- a/gdb/python/py-finishbreakpoint.c +++ b/gdb/python/py-finishbreakpoint.c @@ -326,8 +326,12 @@ bpfinishpy_out_of_scope (struct finish_breakpoint_object *bpfinish_obj) if (bpfinish_obj->py_bp.bp->enable_state == bp_enabled && PyObject_HasAttrString (py_obj, outofscope_func)) { - if (!PyObject_CallMethod (py_obj, outofscope_func, NULL)) - gdbpy_print_stack (); + PyObject *meth_result; + + meth_result = PyObject_CallMethod (py_obj, outofscope_func, NULL); + if (meth_result == NULL) + gdbpy_print_stack (); + Py_XDECREF (meth_result); } delete_breakpoint (bpfinish_obj->py_bp.bp); -- 1.8.1.4