From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18990 invoked by alias); 20 Jan 2010 16:16:05 -0000 Received: (qmail 18981 invoked by uid 22791); 20 Jan 2010 16:16:04 -0000 X-Spam-Check-By: sourceware.org Received: from pool-173-76-48-109.bstnma.east.verizon.net (HELO cgf.cx) (173.76.48.109) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 20 Jan 2010 16:15:59 +0000 Received: from ednor.cgf.cx (ednor.casa.cgf.cx [192.168.187.5]) by cgf.cx (Postfix) with ESMTP id C331613C0C7; Wed, 20 Jan 2010 11:15:49 -0500 (EST) Received: by ednor.cgf.cx (Postfix, from userid 201) id BE2482B35A; Wed, 20 Jan 2010 11:15:49 -0500 (EST) Date: Wed, 20 Jan 2010 16:16:00 -0000 From: Christopher Faylor To: gdb-patches ml , Tristan Gingold , Joel Brobecker Subject: Re: [RFA] windows: do not crash if inferior Message-ID: <20100120161549.GA24063@ednor.casa.cgf.cx> Mail-Followup-To: gdb-patches ml , Tristan Gingold , Joel Brobecker References: <1C9A707A-AE7C-4947-A9DA-F105674F81AE@adacore.com> <20100119092227.GN17397@adacore.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100119092227.GN17397@adacore.com> User-Agent: Mutt/1.5.20 (2009-06-14) 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: 2010-01/txt/msg00501.txt.bz2 On Tue, Jan 19, 2010 at 01:22:27PM +0400, Joel Brobecker wrote: >> 2010-01-13 gingold >> >> * windows-nat.c (do_initial_windows_stuff): Call error() if the >> inferior doesn't exist anymore. > >Just some thoughts, as Chris usually reviews Windows patches... > >I don't see a "generic" way of dealing with this situation. So the type >of approach you took (returning early from do_initial_windows_stuff) >seems to be the only approach I can see. I was initially a little >reluctant about throwing an error: As far as I can tell from the code, >the debugger should have already printed an error message such as >"Inferior exited with code ..." (is that correct?) - and so an extra >"inferior exited early" message could be considered superfluous. However, >if you do not error-out now, core GDB will assume that target_create_inferior >succeeded and thus possibly do something unexpected as well. > >Bottom line - I cannot propose a better approach short of revamping >a bit the target_create_inferior routine to add error-handling, >I think the patch is fine. > >I would suggest a different wording, to explain that we were trying >to run the program when the error occured. > > error (_("cannot run program, inferior exited prematurely during startup")); Does inferior_thread really need the assert()? If not, we could jsut test tp for NULL. Otherwise, I agree with Joel's assessment. cgf