From e63c6e9ffa146949ab8fb27f7e65b87bbbaf241e Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Fri, 8 Sep 2023 04:42:48 +0900 Subject: [PATCH] conf-parser: introduce ordered_hashmap_by_section_find_unused_line() --- src/shared/conf-parser.c | 6 +++--- src/shared/conf-parser.h | 16 ++++++++++++++-- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/shared/conf-parser.c b/src/shared/conf-parser.c index 7d519278454..63030d4a2d0 100644 --- a/src/shared/conf-parser.c +++ b/src/shared/conf-parser.c @@ -766,8 +766,8 @@ int config_section_new(const char *filename, unsigned line, ConfigSection **ret) return 0; } -int hashmap_by_section_find_unused_line( - Hashmap *entries_by_section, +int _hashmap_by_section_find_unused_line( + HashmapBase *entries_by_section, const char *filename, unsigned *ret) { @@ -775,7 +775,7 @@ int hashmap_by_section_find_unused_line( unsigned n = 0; void *entry; - HASHMAP_FOREACH_KEY(entry, cs, entries_by_section) { + HASHMAP_BASE_FOREACH_KEY(entry, cs, entries_by_section) { if (filename && !streq(cs->filename, filename)) continue; n = MAX(n, cs->line); diff --git a/src/shared/conf-parser.h b/src/shared/conf-parser.h index 74943523b34..140883969cc 100644 --- a/src/shared/conf-parser.h +++ b/src/shared/conf-parser.h @@ -138,10 +138,22 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(ConfigSection*, config_section_free); int config_section_new(const char *filename, unsigned line, ConfigSection **ret); extern const struct hash_ops config_section_hash_ops; -int hashmap_by_section_find_unused_line( - Hashmap *entries_by_section, +int _hashmap_by_section_find_unused_line( + HashmapBase *entries_by_section, const char *filename, unsigned *ret); +static inline int hashmap_by_section_find_unused_line( + Hashmap *entries_by_section, + const char *filename, + unsigned *ret) { + return _hashmap_by_section_find_unused_line(HASHMAP_BASE(entries_by_section), filename, ret); +} +static inline int ordered_hashmap_by_section_find_unused_line( + OrderedHashmap *entries_by_section, + const char *filename, + unsigned *ret) { + return _hashmap_by_section_find_unused_line(HASHMAP_BASE(entries_by_section), filename, ret); +} static inline bool section_is_invalid(ConfigSection *section) { /* If this returns false, then it does _not_ mean the section is valid. */ -- 2.47.3