From: Lennart Poettering Date: Fri, 22 Mar 2019 11:12:29 +0000 (+0100) Subject: string-table: use string_table_lookup() in our own macros everywhere X-Git-Tag: v242-rc1~82^2~3 X-Git-Url: http://git-history.diyao.me/?a=commitdiff_plain;h=63c691c6481e7cdcac87eee5c88608240ede5351;p=systemd%2F.git string-table: use string_table_lookup() in our own macros everywhere --- diff --git a/src/basic/string-table.h b/src/basic/string-table.h index 228c12ad00..42fe4f4315 100644 --- a/src/basic/string-table.h +++ b/src/basic/string-table.h @@ -59,13 +59,13 @@ ssize_t string_table_lookup(const char * const *table, size_t len, const char *k #define _DEFINE_STRING_TABLE_LOOKUP_FROM_STRING_FALLBACK(name,type,max,scope) \ scope type name##_from_string(const char *s) { \ - type i; \ unsigned u = 0; \ + type i; \ if (!s) \ return (type) -1; \ - for (i = 0; i < (type) ELEMENTSOF(name##_table); i++) \ - if (streq_ptr(name##_table[i], s)) \ - return i; \ + i = (type) string_table_lookup(name##_table, ELEMENTSOF(name##_table), s); \ + if (i >= 0) \ + return i; \ if (safe_atou(s, &u) >= 0 && u <= max) \ return (type) u; \ return (type) -1; \