diff options
author | Nick Clifton <nickc@redhat.com> | 2002-04-09 15:36:43 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2002-04-09 15:36:43 +0000 |
commit | 4c30641a0f5551dff885ff61a7b7368a81a77421 (patch) | |
tree | eff43f00afa2ebf3beb9b0d4854cff57c355096c /binutils/rclex.l | |
parent | 2ed5f585e4f1b7f0c719d704807f994938613a4c (diff) | |
download | gdb-4c30641a0f5551dff885ff61a7b7368a81a77421.zip gdb-4c30641a0f5551dff885ff61a7b7368a81a77421.tar.gz gdb-4c30641a0f5551dff885ff61a7b7368a81a77421.tar.bz2 |
Fix parsing hex constants in strings. Add test for the fix.
Diffstat (limited to 'binutils/rclex.l')
-rw-r--r-- | binutils/rclex.l | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/binutils/rclex.l b/binutils/rclex.l index c9073e2..f20c82f 100644 --- a/binutils/rclex.l +++ b/binutils/rclex.l @@ -1,5 +1,5 @@ %{ /* rclex.l -- lexer for Windows rc files parser */ -/* Copyright 1997, 1998, 1999, 2001 Free Software Foundation, Inc. +/* Copyright 1997, 1998, 1999, 2001, 2002 Free Software Foundation, Inc. Written by Ian Lance Taylor, Cygnus Support. This file is part of GNU Binutils. @@ -284,11 +284,11 @@ cpp_line (s) if (!initial_fn) { initial_fn = xmalloc (strlen (fn) + 1); - strcpy(initial_fn, fn); + strcpy (initial_fn, fn); } /* Allow the initial file, regardless of name. Suppress all other - files if they end in ".h" (this allows included "*.rc") */ + files if they end in ".h" (this allows included "*.rc"). */ if (strcmp (initial_fn, fn) == 0 || strcmp (fn + strlen (fn) - 2, ".h") != 0) suppress_cpp_data = 0; @@ -394,9 +394,9 @@ handle_quotes (input, len) if (*t >= '0' && *t <= '9') ch = (ch << 4) | (*t - '0'); else if (*t >= 'a' && *t <= 'f') - ch = (ch << 4) | (*t - 'a'); + ch = (ch << 4) | (*t - 'a' + 10); else if (*t >= 'A' && *t <= 'F') - ch = (ch << 4) | (*t - 'A'); + ch = (ch << 4) | (*t - 'A' + 10); else break; ++t; |