tree-wide: introduce empty_or_dash() helper

At quite a few places we check isempty() || streq(…, "-"), let's add a
helper to simplify that, and replace that by a single function call.
This commit is contained in:
Lennart Poettering 2019-04-08 12:03:33 +02:00
parent ea505047c5
commit e7b88b7bc1
9 changed files with 32 additions and 32 deletions

View file

@ -57,6 +57,12 @@ static inline const char *empty_to_dash(const char *str) {
return isempty(str) ? "-" : str; return isempty(str) ? "-" : str;
} }
static inline bool empty_or_dash(const char *str) {
return !str ||
str[0] == 0 ||
(str[0] == '-' && str[1] == 0);
}
static inline char *startswith(const char *s, const char *prefix) { static inline char *startswith(const char *s, const char *prefix) {
size_t l; size_t l;

View file

@ -78,7 +78,7 @@ static int export_tar(int argc, char *argv[], void *userdata) {
if (argc >= 3) if (argc >= 3)
path = argv[2]; path = argv[2];
if (isempty(path) || streq(path, "-")) if (empty_or_dash(path))
path = NULL; path = NULL;
determine_compression_from_filename(path); determine_compression_from_filename(path);
@ -155,7 +155,7 @@ static int export_raw(int argc, char *argv[], void *userdata) {
if (argc >= 3) if (argc >= 3)
path = argv[2]; path = argv[2];
if (isempty(path) || streq(path, "-")) if (empty_or_dash(path))
path = NULL; path = NULL;
determine_compression_from_filename(path); determine_compression_from_filename(path);

View file

@ -117,14 +117,14 @@ static int import_fs(int argc, char *argv[], void *userdata) {
if (argc >= 2) if (argc >= 2)
path = argv[1]; path = argv[1];
if (isempty(path) || streq(path, "-")) if (empty_or_dash(path))
path = NULL; path = NULL;
if (argc >= 3) if (argc >= 3)
local = argv[2]; local = argv[2];
else if (path) else if (path)
local = basename(path); local = basename(path);
if (isempty(local) || streq(local, "-")) if (empty_or_dash(local))
local = NULL; local = NULL;
if (local) { if (local) {

View file

@ -49,14 +49,14 @@ static int import_tar(int argc, char *argv[], void *userdata) {
if (argc >= 2) if (argc >= 2)
path = argv[1]; path = argv[1];
if (isempty(path) || streq(path, "-")) if (empty_or_dash(path))
path = NULL; path = NULL;
if (argc >= 3) if (argc >= 3)
local = argv[2]; local = argv[2];
else if (path) else if (path)
local = basename(path); local = basename(path);
if (isempty(local) || streq(local, "-")) if (empty_or_dash(local))
local = NULL; local = NULL;
if (local) { if (local) {
@ -145,14 +145,14 @@ static int import_raw(int argc, char *argv[], void *userdata) {
if (argc >= 2) if (argc >= 2)
path = argv[1]; path = argv[1];
if (isempty(path) || streq(path, "-")) if (empty_or_dash(path))
path = NULL; path = NULL;
if (argc >= 3) if (argc >= 3)
local = argv[2]; local = argv[2];
else if (path) else if (path)
local = basename(path); local = basename(path);
if (isempty(local) || streq(local, "-")) if (empty_or_dash(local))
local = NULL; local = NULL;
if (local) { if (local) {

View file

@ -64,7 +64,7 @@ static int pull_tar(int argc, char *argv[], void *userdata) {
local = l; local = l;
} }
if (isempty(local) || streq(local, "-")) if (empty_or_dash(local))
local = NULL; local = NULL;
if (local) { if (local) {
@ -151,7 +151,7 @@ static int pull_raw(int argc, char *argv[], void *userdata) {
local = l; local = l;
} }
if (isempty(local) || streq(local, "-")) if (empty_or_dash(local))
local = NULL; local = NULL;
if (local) { if (local) {

View file

@ -33,7 +33,7 @@ static bool startswith_comma(const char *s, const char *prefix) {
} }
static const char* strnulldash(const char *s) { static const char* strnulldash(const char *s) {
return isempty(s) || streq(s, "-") ? NULL : s; return empty_or_dash(s) ? NULL : s;
} }
static const char* systemd_kbd_model_map(void) { static const char* systemd_kbd_model_map(void) {

View file

@ -1994,13 +1994,7 @@ static int transfer_image_common(sd_bus *bus, sd_bus_message *m) {
} }
static const char *nullify_dash(const char *p) { static const char *nullify_dash(const char *p) {
if (isempty(p)) return empty_or_dash(p) ? NULL : p;
return NULL;
if (streq(p, "-"))
return NULL;
return p;
} }
static int import_tar(int argc, char *argv[], void *userdata) { static int import_tar(int argc, char *argv[], void *userdata) {
@ -2230,7 +2224,7 @@ static int export_tar(int argc, char *argv[], void *userdata) {
if (argc >= 3) if (argc >= 3)
path = argv[2]; path = argv[2];
if (isempty(path) || streq(path, "-")) if (empty_or_dash(path))
path = NULL; path = NULL;
if (path) { if (path) {
@ -2280,7 +2274,7 @@ static int export_raw(int argc, char *argv[], void *userdata) {
if (argc >= 3) if (argc >= 3)
path = argv[2]; path = argv[2];
if (isempty(path) || streq(path, "-")) if (empty_or_dash(path))
path = NULL; path = NULL;
if (path) { if (path) {
@ -2338,7 +2332,7 @@ static int pull_tar(int argc, char *argv[], void *userdata) {
local = l; local = l;
} }
if (isempty(local) || streq(local, "-")) if (empty_or_dash(local))
local = NULL; local = NULL;
if (local) { if (local) {
@ -2402,7 +2396,7 @@ static int pull_raw(int argc, char *argv[], void *userdata) {
local = l; local = l;
} }
if (isempty(local) || streq(local, "-")) if (empty_or_dash(local))
local = NULL; local = NULL;
if (local) { if (local) {

View file

@ -1411,7 +1411,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
"[%s:%u] Unknown command type '%c'.", fname, line, action[0]); "[%s:%u] Unknown command type '%c'.", fname, line, action[0]);
/* Verify name */ /* Verify name */
if (isempty(name) || streq(name, "-")) if (empty_or_dash(name))
name = mfree(name); name = mfree(name);
if (name) { if (name) {
@ -1426,7 +1426,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
} }
/* Verify id */ /* Verify id */
if (isempty(id) || streq(id, "-")) if (empty_or_dash(id))
id = mfree(id); id = mfree(id);
if (id) { if (id) {
@ -1437,7 +1437,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
} }
/* Verify description */ /* Verify description */
if (isempty(description) || streq(description, "-")) if (empty_or_dash(description))
description = mfree(description); description = mfree(description);
if (description) { if (description) {
@ -1453,7 +1453,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
} }
/* Verify home */ /* Verify home */
if (isempty(home) || streq(home, "-")) if (empty_or_dash(home))
home = mfree(home); home = mfree(home);
if (home) { if (home) {
@ -1469,7 +1469,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
} }
/* Verify shell */ /* Verify shell */
if (isempty(shell) || streq(shell, "-")) if (empty_or_dash(shell))
shell = mfree(shell); shell = mfree(shell);
if (shell) { if (shell) {

View file

@ -2507,7 +2507,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer, bool
return -EIO; return -EIO;
} }
if (!isempty(buffer) && !streq(buffer, "-")) { if (!empty_or_dash(buffer)) {
i.argument = strdup(buffer); i.argument = strdup(buffer);
if (!i.argument) if (!i.argument)
return log_oom(); return log_oom();
@ -2704,7 +2704,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer, bool
free_and_replace(i.path, p); free_and_replace(i.path, p);
} }
if (!isempty(user) && !streq(user, "-")) { if (!empty_or_dash(user)) {
const char *u = user; const char *u = user;
r = get_user_creds(&u, &i.uid, NULL, NULL, NULL, USER_CREDS_ALLOW_MISSING); r = get_user_creds(&u, &i.uid, NULL, NULL, NULL, USER_CREDS_ALLOW_MISSING);
@ -2716,7 +2716,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer, bool
i.uid_set = true; i.uid_set = true;
} }
if (!isempty(group) && !streq(group, "-")) { if (!empty_or_dash(group)) {
const char *g = group; const char *g = group;
r = get_group_creds(&g, &i.gid, USER_CREDS_ALLOW_MISSING); r = get_group_creds(&g, &i.gid, USER_CREDS_ALLOW_MISSING);
@ -2729,7 +2729,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer, bool
i.gid_set = true; i.gid_set = true;
} }
if (!isempty(mode) && !streq(mode, "-")) { if (!empty_or_dash(mode)) {
const char *mm = mode; const char *mm = mode;
unsigned m; unsigned m;
@ -2749,7 +2749,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer, bool
} else } else
i.mode = IN_SET(i.type, CREATE_DIRECTORY, TRUNCATE_DIRECTORY, CREATE_SUBVOLUME, CREATE_SUBVOLUME_INHERIT_QUOTA, CREATE_SUBVOLUME_NEW_QUOTA) ? 0755 : 0644; i.mode = IN_SET(i.type, CREATE_DIRECTORY, TRUNCATE_DIRECTORY, CREATE_SUBVOLUME, CREATE_SUBVOLUME_INHERIT_QUOTA, CREATE_SUBVOLUME_NEW_QUOTA) ? 0755 : 0644;
if (!isempty(age) && !streq(age, "-")) { if (!empty_or_dash(age)) {
const char *a = age; const char *a = age;
if (*a == '~') { if (*a == '~') {