From 2654e6d432835d6402a57b64323d49cf699048b9 Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Fri, 10 May 2002 20:05:27 +0000 Subject: 2002-05-10 Daniel Jacobowitz * linespec.c (decode_line_1): Check for a double quote after a filename correctly. --- gdb/linespec.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) (limited to 'gdb/linespec.c') diff --git a/gdb/linespec.c b/gdb/linespec.c index b9a772c..f707234 100644 --- a/gdb/linespec.c +++ b/gdb/linespec.c @@ -931,20 +931,12 @@ decode_line_1 (char **argptr, int funfirstline, struct symtab *default_symtab, if ((*p == '"') && is_quote_enclosed) --p; copy = (char *) alloca (p - *argptr + 1); - if ((**argptr == '"') && is_quote_enclosed) - { - memcpy (copy, *argptr + 1, p - *argptr - 1); - /* It may have the ending quote right after the file name */ - if (copy[p - *argptr - 2] == '"') - copy[p - *argptr - 2] = 0; - else - copy[p - *argptr - 1] = 0; - } + memcpy (copy, *argptr, p - *argptr); + /* It may have the ending quote right after the file name */ + if (is_quote_enclosed && copy[p - *argptr - 1] == '"') + copy[p - *argptr - 1] = 0; else - { - memcpy (copy, *argptr, p - *argptr); - copy[p - *argptr] = 0; - } + copy[p - *argptr] = 0; /* Find that file's data. */ s = lookup_symtab (copy); -- cgit v1.1