← Commit list

307d27df4

Bernhard Reutner-Fischer
Bernhard Reutner-Fischer
2007-03-29
FAILED Duration: 10s

Subject

- remove bloated switch statement. text data bss dec hex filename 2706 1 12 2719 a9f find.o.r18273 2605 1 12 2618 a3a find.o.r18274

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

findutils/find.c+8 -17
@@ -295,31 +295,22 @@ static int find_type(const char *type)
{
int mask = 0;
- switch (type[0]) {
- case 'b':
+ if (*type == 'b')
mask = S_IFBLK;
- break;
- case 'c':
+ else if (*type == 'c')
mask = S_IFCHR;
- break;
- case 'd':
+ else if (*type == 'd')
mask = S_IFDIR;
- break;
- case 'p':
+ else if (*type == 'p')
mask = S_IFIFO;
- break;
- case 'f':
+ else if (*type == 'f')
mask = S_IFREG;
- break;
- case 'l':
+ else if (*type == 'l')
mask = S_IFLNK;
- break;
- case 's':
+ else if (*type == 's')
mask = S_IFSOCK;
- break;
- }
- if (mask == 0 || type[1] != '\0')
+ if (mask == 0 || *(type + 1) != '\0')
bb_error_msg_and_die(bb_msg_invalid_arg, type, "-type");
return mask;