From 307d27df4fae76445708378561fb6f91ed70d76b Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Thu, 29 Mar 2007 13:56:02 +0000 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 --- findutils/find.c | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) (limited to 'findutils') diff --git a/findutils/find.c b/findutils/find.c index 453ed4b..f94bd23 100644 --- a/findutils/find.c +++ b/findutils/find.c @@ -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; -- cgit v1.1