diff options
author | vodz <vodz@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2006-02-20 12:15:10 +0000 |
---|---|---|
committer | vodz <vodz@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2006-02-20 12:15:10 +0000 |
commit | 075f47fb382a3793694ad223bc57ccbdd54b91e1 (patch) | |
tree | ca8593fa25b77f98472bdcdee3781623917cd531 | |
parent | 91d1740bee4ea0f6658a1e4215af59638190a820 (diff) | |
download | busybox-w32-075f47fb382a3793694ad223bc57ccbdd54b91e1.tar.gz busybox-w32-075f47fb382a3793694ad223bc57ccbdd54b91e1.tar.bz2 busybox-w32-075f47fb382a3793694ad223bc57ccbdd54b91e1.zip |
remove #undef strlen, use #define strlen always but without xfunc/BB_STRLEN_IMPLEMENTATION
git-svn-id: svn://busybox.net/trunk/busybox@14145 69ca8d6d-28ef-0310-b511-8ec308f3f277
-rw-r--r-- | include/libbb.h | 2 | ||||
-rw-r--r-- | libbb/xfuncs.c | 10 |
2 files changed, 9 insertions, 3 deletions
diff --git a/include/libbb.h b/include/libbb.h index 8ec1a24c0..9f0c85b03 100644 --- a/include/libbb.h +++ b/include/libbb.h | |||
@@ -387,7 +387,9 @@ void reset_ino_dev_hashtable(void); | |||
387 | 387 | ||
388 | /* Stupid gcc always includes its own builtin strlen()... */ | 388 | /* Stupid gcc always includes its own builtin strlen()... */ |
389 | extern size_t bb_strlen(const char *string); | 389 | extern size_t bb_strlen(const char *string); |
390 | #ifndef BB_STRLEN_IMPLEMENTATION | ||
390 | #define strlen(x) bb_strlen(x) | 391 | #define strlen(x) bb_strlen(x) |
392 | #endif | ||
391 | 393 | ||
392 | char *bb_xasprintf(const char *format, ...) __attribute__ ((format (printf, 1, 2))); | 394 | char *bb_xasprintf(const char *format, ...) __attribute__ ((format (printf, 1, 2))); |
393 | 395 | ||
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c index 69eaf79e0..6d54c1a79 100644 --- a/libbb/xfuncs.c +++ b/libbb/xfuncs.c | |||
@@ -14,6 +14,13 @@ | |||
14 | #include <stdlib.h> | 14 | #include <stdlib.h> |
15 | #include <unistd.h> | 15 | #include <unistd.h> |
16 | #include <fcntl.h> | 16 | #include <fcntl.h> |
17 | |||
18 | /* Since gcc always inlines strlen(), this saves a byte or two, but we need | ||
19 | * the #undef here to avoid endless loop from #define strlen bb_strlen */ | ||
20 | #ifdef L_strlen | ||
21 | #define BB_STRLEN_IMPLEMENTATION | ||
22 | #endif | ||
23 | |||
17 | #include "libbb.h" | 24 | #include "libbb.h" |
18 | 25 | ||
19 | 26 | ||
@@ -167,9 +174,6 @@ extern void bb_xfflush_stdout(void) | |||
167 | #endif | 174 | #endif |
168 | 175 | ||
169 | #ifdef L_strlen | 176 | #ifdef L_strlen |
170 | /* Since gcc always inlines strlen(), this saves a byte or two, but we need | ||
171 | * the #undef here to avoid endless loop from #define strlen bb_strlen */ | ||
172 | #undef strlen | ||
173 | size_t bb_strlen(const char *string) | 177 | size_t bb_strlen(const char *string) |
174 | { | 178 | { |
175 | return(strlen(string)); | 179 | return(strlen(string)); |