From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32124 invoked by alias); 6 Feb 2002 23:48:17 -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 31596 invoked from network); 6 Feb 2002 23:48:09 -0000 Received: from unknown (HELO mail-out1.apple.com) (17.254.0.52) by sources.redhat.com with SMTP; 6 Feb 2002 23:48:09 -0000 Received: from mailgate1.apple.com (A17-128-100-225.apple.com [17.128.100.225]) by mail-out1.apple.com (8.11.3/8.11.3) with ESMTP id g16Nm8Q11477 for ; Wed, 6 Feb 2002 15:48:08 -0800 (PST) Received: from scv1.apple.com (scv1.apple.com) by mailgate1.apple.com (Content Technologies SMTPRS 4.2.1) with ESMTP id for ; Wed, 6 Feb 2002 15:47:48 -0800 Received: from localhost (vpn-scv-x1-56.apple.com [17.219.193.56]) by scv1.apple.com (8.11.3/8.11.3) with ESMTP id g16Nm7G15562 for ; Wed, 6 Feb 2002 15:48:07 -0800 (PST) Date: Wed, 06 Feb 2002 15:48:00 -0000 Mime-Version: 1.0 (Apple Message framework v480) Content-Type: text/plain; charset=US-ASCII; format=flowed Subject: [RFC] Allow '!' in program paths From: Klee Dienes To: gdb-patches@sources.redhat.com Content-Transfer-Encoding: 7bit Message-Id: X-Mailer: Apple Mail (2.480) X-SW-Source: 2002-02/txt/msg00184.txt.bz2 2002-02-06 Klee Dienes * fork-inferior.c (fork_inferior): Add '!' to the list of characters that need to be quoted when building a string for the shell. Quote '!' specifically with a backslash, since CSH chokes when trying to evaluate "str!str". Index: fork-child.c =================================================================== RCS file: /cvs/Darwin/Commands/GNU/cygnus/src/gdb/fork-child.c,v retrieving revision 1.9 diff -u -r1.9 fork-child.c --- fork-child.c 2001/11/29 00:18:44 1.9 +++ fork-child.c 2002/02/06 22:53:11 @@ -204,6 +204,7 @@ switch (*p) { case '\'': + case '!': case '"': case '(': case ')': @@ -235,6 +236,8 @@ { if (*p == '\'') strcat (shell_command, "'\\''"); + else if (*p == '!') + strcat (shell_command, "\\!"); else strncat (shell_command, p, 1); }