From 69ace2200106348a1b00d509a6a234337c104c17 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Thu, 1 Dec 2016 15:20:19 +0000
Subject: [PATCH] Fix seg fault attempting to unget an EOF character.

	PR gas/20898
	* app.c (do_scrub_chars): Do not attempt to unget EOF.

Affects: <= 2.28
Upstream-Status: Backport
CVE: CVE-2017-7223
Signed-off-by: Armin Kuster <akuster@mvista.com>

---
 gas/ChangeLog | 3 +++
 gas/app.c     | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

Index: git/gas/ChangeLog
===================================================================
--- git.orig/gas/ChangeLog
+++ git/gas/ChangeLog
@@ -1,3 +1,8 @@
+2016-12-01  Nick Clifton  <nickc@redhat.com>
+ 
+       PR gas/20898
+       * app.c (do_scrub_chars): Do not attempt to unget EOF.
+
 2017-03-02  Tristan Gingold  <gingold@adacore.com>
 
 	* configure: Regenerate.
@@ -198,7 +203,6 @@
 	* config/tc-pru.c (md_number_to_chars): Fix parameter to be
 	valueT, as declared in tc.h.
 	(md_apply_fix): Fix to work on 32-bit hosts.
->>>>>>> 0115611... RISC-V/GAS: Correct branch relaxation for weak symbols.
 
 2017-01-02  Alan Modra  <amodra@gmail.com>
 
Index: git/gas/app.c
===================================================================
--- git.orig/gas/app.c
+++ git/gas/app.c
@@ -1350,7 +1350,7 @@ do_scrub_chars (size_t (*get) (char *, s
 		  PUT (ch);
 		  break;
 		}
-	      else
+	      else if (ch2 != EOF)
 		{
 		  state = 9;
 		  if (ch == EOF || !IS_SYMBOL_COMPONENT (ch))
