Always use errno > 0 to help gcc

gcc thinks that errno might be negative, and functions could return
something positive on error (-errno). Should not matter in practice,
but makes an -O4 build much quieter.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2013-03-28 09:24:15 -04:00
parent 0db809489f
commit 8333c77edf
12 changed files with 18 additions and 18 deletions

View File

@ -69,7 +69,7 @@ static int mount_find_pri(struct mntent *me, int *ret) {
errno = 0;
r = strtoul(pri, &end, 10);
if (errno != 0)
if (errno > 0)
return -errno;
if (end == pri || (*end != ',' && *end != 0))

View File

@ -507,7 +507,7 @@ static int parse_exec_address(sd_bus *b, const char **p, char **guid) {
errno = 0;
ul = strtoul(*p + 4, (char**) p, 10);
if (errno != 0 || **p != '=' || ul > 256) {
if (errno > 0 || **p != '=' || ul > 256) {
r = -EINVAL;
goto fail;
}

View File

@ -84,7 +84,7 @@ _sd_export_ int sd_listen_fds(int unset_environment) {
errno = 0;
l = strtoul(e, &p, 10);
if (errno != 0) {
if (errno > 0) {
r = -errno;
goto finish;
}
@ -109,7 +109,7 @@ _sd_export_ int sd_listen_fds(int unset_environment) {
errno = 0;
l = strtoul(e, &p, 10);
if (errno != 0) {
if (errno > 0) {
r = -errno;
goto finish;
}

View File

@ -421,7 +421,7 @@ static int add_locales_from_libdir (Set *locales) {
errno = 0;
}
if (errno != 0) {
if (errno > 0) {
log_error("Failed to read locale directory: %m");
return -errno;
}

View File

@ -391,7 +391,7 @@ static int prepend_component(const char **p, CalendarComponent **c) {
errno = 0;
value = strtoul(*p, &e, 10);
if (errno != 0)
if (errno > 0)
return -errno;
if (e == *p)
return -EINVAL;
@ -400,7 +400,7 @@ static int prepend_component(const char **p, CalendarComponent **c) {
if (*e == '/') {
repeat = strtoul(e+1, &ee, 10);
if (errno != 0)
if (errno > 0)
return -errno;
if (ee == e+1)
return -EINVAL;

View File

@ -364,7 +364,7 @@ int write_env_file(const char *fname, char **l) {
fflush(f);
if (ferror(f)) {
if (errno != 0)
if (errno > 0)
r = -errno;
else
r = -EIO;

View File

@ -68,7 +68,7 @@ int socket_address_parse(SocketAddress *a, const char *s) {
errno = 0;
if (inet_pton(AF_INET6, n, &a->sockaddr.in6.sin6_addr) <= 0) {
free(n);
return errno != 0 ? -errno : -EINVAL;
return errno > 0 ? -errno : -EINVAL;
}
free(n);

View File

@ -547,7 +547,7 @@ int parse_usec(const char *t, usec_t *usec) {
errno = 0;
l = strtoll(p, &e, 10);
if (errno != 0)
if (errno > 0)
return -errno;
if (l < 0)
@ -627,7 +627,7 @@ int parse_nsec(const char *t, nsec_t *nsec) {
errno = 0;
l = strtoll(p, &e, 10);
if (errno != 0)
if (errno > 0)
return -errno;
if (l < 0)

View File

@ -2265,7 +2265,7 @@ int parse_bytes(const char *t, off_t *bytes) {
errno = 0;
l = strtoll(p, &e, 10);
if (errno != 0)
if (errno > 0)
return -errno;
if (l < 0)
@ -4191,7 +4191,7 @@ int get_user_creds(
}
if (!p)
return errno != 0 ? -errno : -ESRCH;
return errno > 0 ? -errno : -ESRCH;
if (uid)
*uid = p->pw_uid;
@ -4272,7 +4272,7 @@ int get_group_creds(const char **groupname, gid_t *gid) {
}
if (!g)
return errno != 0 ? -errno : -ESRCH;
return errno > 0 ? -errno : -ESRCH;
if (gid)
*gid = g->gr_gid;

View File

@ -595,7 +595,7 @@ int create_tmp_dir(char template[], char** dir_name);
#define FOREACH_DIRENT(de, d, on_error) \
for (errno = 0, de = readdir(d);; errno = 0, de = readdir(d)) \
if (!de) { \
if (errno != 0) { \
if (errno > 0) { \
on_error; \
} \
break; \

View File

@ -4629,11 +4629,11 @@ static int parse_time_spec(const char *t, usec_t *_u) {
errno = 0;
hour = strtol(t, &e, 10);
if (errno != 0 || *e != ':' || hour < 0 || hour > 23)
if (errno > 0 || *e != ':' || hour < 0 || hour > 23)
return -EINVAL;
minute = strtol(e+1, &e, 10);
if (errno != 0 || *e != 0 || minute < 0 || minute > 59)
if (errno > 0 || *e != 0 || minute < 0 || minute > 59)
return -EINVAL;
n = now(CLOCK_REALTIME);

View File

@ -611,7 +611,7 @@ static int glob_item(Item *i, int (*action)(Item *, const char *)) {
if ((k = glob(i->path, GLOB_NOSORT|GLOB_BRACE, NULL, &g)) != 0) {
if (k != GLOB_NOMATCH) {
if (errno != 0)
if (errno > 0)
errno = EIO;
log_error("glob(%s) failed: %m", i->path);