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 | ||
