aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2007-07-20 08:20:27 +0000
committerNick Clifton <nickc@redhat.com>2007-07-20 08:20:27 +0000
commitfc5910c0bb75c4d2f825cbeb2ce77d1baa136b60 (patch)
tree9d6137c41b8ea1b706c1fa3c61dc156f970fe3c1 /gas
parent3185aeeca7505e1176e023327af4a73ede3d60d2 (diff)
downloadgdb-fc5910c0bb75c4d2f825cbeb2ce77d1baa136b60.zip
gdb-fc5910c0bb75c4d2f825cbeb2ce77d1baa136b60.tar.gz
gdb-fc5910c0bb75c4d2f825cbeb2ce77d1baa136b60.tar.bz2
* app.c (do_scrub_chars): Provide a one character buffer to hold a
pushed back newline at the end of an unterminated quoted string.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/app.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 602c58c..f381533 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2007-07-20 Nick Clifton <nickc@redhat.com>
+
+ * app.c (do_scrub_chars): Provide a one character buffer to hold a
+ pushed back newline at the end of an unterminated quoted string.
+
2007-07-14 Nick Clifton <nickc@redhat.com>
* config/tc-arm.c (create_register_alias): Return a boolean rather
diff --git a/gas/app.c b/gas/app.c
index 637662f..d8d0cc5 100644
--- a/gas/app.c
+++ b/gas/app.c
@@ -558,8 +558,14 @@ do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
ch = GET ();
if (ch == EOF)
{
+ /* This buffer is here specifically so
+ that the UNGET below will work. */
+ static char one_char_buf[1];
+
as_warn (_("end of file in string; '%c' inserted"), quotechar);
state = old_state;
+ from = fromend = one_char_buf + 1;
+ fromlen = 1;
UNGET ('\n');
PUT (quotechar);
}