aboutsummaryrefslogtreecommitdiff
path: root/libbb/process_escape_sequence.c
diff options
context:
space:
mode:
Diffstat (limited to 'libbb/process_escape_sequence.c')
-rw-r--r--libbb/process_escape_sequence.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/libbb/process_escape_sequence.c b/libbb/process_escape_sequence.c
index 138e751f5..3178ad34a 100644
--- a/libbb/process_escape_sequence.c
+++ b/libbb/process_escape_sequence.c
@@ -8,9 +8,6 @@
8 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. 8 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
9 */ 9 */
10 10
11#include <stdio.h>
12#include <limits.h>
13#include <ctype.h>
14#include "libbb.h" 11#include "libbb.h"
15 12
16#define WANT_HEX_ESCAPES 1 13#define WANT_HEX_ESCAPES 1
@@ -46,10 +43,10 @@ char bb_process_escape_sequence(const char **ptr)
46#endif 43#endif
47 44
48 do { 45 do {
49 d = (unsigned int)(*q - '0'); 46 d = (unsigned char)(*q) - '0';
50#ifdef WANT_HEX_ESCAPES 47#ifdef WANT_HEX_ESCAPES
51 if (d >= 10) { 48 if (d >= 10) {
52 d = ((unsigned int)(_tolower(*q) - 'a')) + 10; 49 d = (unsigned char)(_tolower(*q)) - 'a' + 10;
53 } 50 }
54#endif 51#endif
55 52
@@ -80,7 +77,7 @@ char bb_process_escape_sequence(const char **ptr)
80 break; 77 break;
81 } 78 }
82 } while (*++p); 79 } while (*++p);
83 n = *(p+(sizeof(charmap)/2)); 80 n = *(p + (sizeof(charmap)/2));
84 } 81 }
85 82
86 *ptr = q; 83 *ptr = q;