aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2007-05-28 19:32:58 +0000
committerNathan Sidwell <nathan@codesourcery.com>2007-05-28 19:32:58 +0000
commit1740b7b1d54cee1dd19851fc47efa18e6d21d40e (patch)
tree4ac4841866aa7418bb5233cd87471864b2a2f9e5
parent8905984da1fc92ba7d65022b5c878ae7de866542 (diff)
downloadgdb-1740b7b1d54cee1dd19851fc47efa18e6d21d40e.zip
gdb-1740b7b1d54cee1dd19851fc47efa18e6d21d40e.tar.gz
gdb-1740b7b1d54cee1dd19851fc47efa18e6d21d40e.tar.bz2
* app.c (do_scrub_chars): Cope with \ at end of buffer.x
-rw-r--r--gas/ChangeLog4
-rw-r--r--gas/app.c10
2 files changed, 13 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 95dfaa4..8d9483a 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,7 @@
+2007-05-28 Nathan Sidwell <nathan@codesourcery.com>
+
+ * app.c (do_scrub_chars): Cope with \ at end of buffer.
+
2007-05-26 Alan Modra <amodra@bigpond.net.au>
* config/tc-ppc.c (ppc_insert_operand): Truncate sign bits in
diff --git a/gas/app.c b/gas/app.c
index aa18004..d7eb509 100644
--- a/gas/app.c
+++ b/gas/app.c
@@ -1360,7 +1360,15 @@ do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
the space. We don't have enough information to
make the right choice, so here we are making the
choice which is more likely to be correct. */
- PUT (' ');
+ if (to + 1 >= toend)
+ {
+ /* If we're near the end of the buffer, save the
+ character for the next time round. Otherwise
+ we'll lose our state. */
+ UNGET (ch);
+ goto tofull;
+ }
+ *to++ = ' ';
}
state = 3;