From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16543 invoked by alias); 26 Sep 2005 01:52:31 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 16485 invoked by uid 22791); 26 Sep 2005 01:52:24 -0000 Received: from nevyn.them.org (HELO nevyn.them.org) (66.93.172.17) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Mon, 26 Sep 2005 01:52:24 +0000 Received: from drow by nevyn.them.org with local (Exim 4.52) id 1EJiAF-000601-0G; Sun, 25 Sep 2005 21:52:19 -0400 Date: Mon, 26 Sep 2005 01:52:00 -0000 From: Daniel Jacobowitz To: Mark Kettenis , qpan@mvista.com, gdb-patches@sources.redhat.com, qunyingpan@gmail.com Subject: Re: Patch: fix gdb_gcore.sh failure in ash/dash Message-ID: <20050926015218.GH22284@nevyn.them.org> Mail-Followup-To: Mark Kettenis , qpan@mvista.com, gdb-patches@sources.redhat.com, qunyingpan@gmail.com References: <432240C1.9000308@mvista.com> <20050917215830.GG8777@nevyn.them.org> <200509172217.j8HMHh3R005674@elgar.sibelius.xs4all.nl> <20050917222649.GK8777@nevyn.them.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20050917222649.GK8777@nevyn.them.org> User-Agent: Mutt/1.5.8i X-SW-Source: 2005-09/txt/msg00213.txt.bz2 On Sat, Sep 17, 2005 at 06:26:49PM -0400, Daniel Jacobowitz wrote: > 2005-09-17 Daniel Jacobowitz > > * gdb_gcore.sh: Use a temporary file. Use gdb from $PATH. Did you have any comments on the revised patch, Mark? Otherwise I'll check this in. > Index: gdb_gcore.sh > =================================================================== > RCS file: /big/fsf/rsync/src/src/gdb/gdb_gcore.sh,v > retrieving revision 1.1 > diff -u -p -r1.1 gdb_gcore.sh > --- gdb_gcore.sh 17 Apr 2003 20:33:09 -0000 1.1 > +++ gdb_gcore.sh 17 Sep 2005 22:26:10 -0000 > @@ -1,6 +1,6 @@ > #!/bin/sh > > -# Copyright 2003 Free Software Foundation, Inc. > +# Copyright 2003, 2005 Free Software Foundation, Inc. > > # This program is free software; you can redistribute it and/or modify > # it under the terms of the GNU General Public License as published by > @@ -16,9 +16,6 @@ > # along with this program; if not, write to the Free Software > # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. > > -# Please email any bugs, comments, and/or additions to this file to: > -# bug-gdb@prep.ai.mit.edu > - > # > # gcore.sh > # Script to generate a core file of a running program. > @@ -48,6 +45,17 @@ then > shift; shift > fi > > +# Create a temporary file. Use mktemp if available, but cope if it is not. > +tmpfile=`mktemp ${name}.XXXXXX 2>/dev/null` || { > + tmpfile=${name}.$$ > + if test -e $tmpfile; then > + echo "Could not create temporary file $tmpfile" > + exit 1 > + fi > + touch $tmpfile > +} > +trap "rm -f $tmpfile" EXIT > + > # Initialise return code. > rc=0 > > @@ -55,17 +63,15 @@ rc=0 > for pid in $* > do > # Write gdb script for pid $pid. > - > - # Avoid need for temporary files by using funky "here > - # document" feature of sh. > - > - /usr/bin/gdb > /dev/null << EOF > - attach $pid > - gcore $name.$pid > - detach > - quit > + cat >>$tmpfile < +attach $pid > +gcore $name.$pid > +detach > +quit > EOF > > + gdb -x $tmpfile -batch > + > if [ -r $name.$pid ] ; then > rc=0 > else > @@ -78,4 +84,3 @@ EOF > done > > exit $rc > - > -- Daniel Jacobowitz CodeSourcery, LLC