From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4606 invoked by alias); 20 Mar 2013 15:25: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 4586 invoked by uid 89); 20 Mar 2013 15:25:16 -0000 X-Spam-SWARE-Status: No, score=-8.2 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,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; Wed, 20 Mar 2013 15:25:14 +0000 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r2KFPCMS009868 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Wed, 20 Mar 2013 11:25:13 -0400 Received: from barimba (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx11.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r2KFPBj6030728 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Wed, 20 Mar 2013 11:25:12 -0400 From: Tom Tromey To: Phil Muldoon Cc: gdb-patches@sourceware.org Subject: Re: [patch][python] Fix some unguarded GDB calls. References: <5149BAA9.8020902@redhat.com> Date: Wed, 20 Mar 2013 15:32:00 -0000 In-Reply-To: <5149BAA9.8020902@redhat.com> (Phil Muldoon's message of "Wed, 20 Mar 2013 13:33:29 +0000") Message-ID: <87hak69jqg.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-03/txt/msg00740.txt.bz2 >>>>> "Phil" == Phil Muldoon writes: Phil> 2013-03-20 Phil Muldoon Phil> * python/py-utils.c (get_addr_from_python): Use exception handler Phil> for value_as_address. Phil> * python/py-cmd.c (gdbpy_parse_command_name): Use exception Phil> handler for lookup_cmd_1.. Phil> * python/python.c (execute_gdb_command): Move bpstat_do_actions Phil> into exception handler. Phil> + if (except.reason < 0) Phil> + { Phil> + gdbpy_convert_exception (except); Phil> + return NULL; Phil> + } Use GDB_PY_HANDLE_EXCEPTION instead. Phil> get_addr_from_python (PyObject *obj, CORE_ADDR *addr) This is documented as being able to throw gdb exceptions. It is fine by me if you want to fix that (it certainly looks simpler than fixing the one caller in infpy_search_memory), but then the intro comment for the function needs an update. Tom