diff options
author | Manuel Novoa III <mjn3@codepoet.org> | 2003-08-14 02:28:49 +0000 |
---|---|---|
committer | Manuel Novoa III <mjn3@codepoet.org> | 2003-08-14 02:28:49 +0000 |
commit | 062913f66288b93aaefe052cb15b4115f4b1a839 (patch) | |
tree | 617233bd75fd9211892e0ed5d9c2720b302adb5c | |
parent | bf83355dda609db2d028ecb740e1daa5cfbe15aa (diff) | |
download | busybox-w32-062913f66288b93aaefe052cb15b4115f4b1a839.tar.gz busybox-w32-062913f66288b93aaefe052cb15b4115f4b1a839.tar.bz2 busybox-w32-062913f66288b93aaefe052cb15b4115f4b1a839.zip |
Fix a bug reported by junkio@cox.net involving the mode_chars index.
-rw-r--r-- | libbb/mode_string.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libbb/mode_string.c b/libbb/mode_string.c index 8d4d736ef..83142ba8a 100644 --- a/libbb/mode_string.c +++ b/libbb/mode_string.c | |||
@@ -20,6 +20,11 @@ | |||
20 | * | 20 | * |
21 | */ | 21 | */ |
22 | 22 | ||
23 | /* Aug 13, 2003 | ||
24 | * Fix a bug reported by junkio@cox.net involving the mode_chars index. | ||
25 | */ | ||
26 | |||
27 | |||
23 | #include <assert.h> | 28 | #include <assert.h> |
24 | #include <sys/stat.h> | 29 | #include <sys/stat.h> |
25 | 30 | ||
@@ -119,7 +124,7 @@ const char *bb_mode_string(int mode) | |||
119 | } while (++j < 3); | 124 | } while (++j < 3); |
120 | ++i; | 125 | ++i; |
121 | if (mode & (010000 >> i)) { | 126 | if (mode & (010000 >> i)) { |
122 | *p = mode_chars[3 + k + (i >> 1)]; | 127 | *p = mode_chars[3 + (k & 2) + (i == 3)]; |
123 | } | 128 | } |
124 | } while (i < 3); | 129 | } while (i < 3); |
125 | 130 | ||