Merge pull request #21355 from bluca/coverity

Coverity and CodeQL fixes
This commit is contained in:
Yu Watanabe
2021-11-14 14:18:08 +09:00
committed by GitHub
3 changed files with 21 additions and 8 deletions
+14 -4
View File
@@ -429,9 +429,14 @@ static int dispatch_raw_source_until_block(sd_event_source *event,
sd_event_source_ref(event);
r = journal_remote_handle_raw_source(event, source->importer.fd, EPOLLIN, journal_remote_server_global);
if (r != 1)
if (r != 1) {
int k;
/* No more data for now */
sd_event_source_set_enabled(event, SD_EVENT_OFF);
k = sd_event_source_set_enabled(event, SD_EVENT_OFF);
if (k < 0)
r = k;
}
sd_event_source_unref(event);
@@ -449,10 +454,15 @@ static int dispatch_raw_source_event(sd_event_source *event,
assert(source->buffer_event);
r = journal_remote_handle_raw_source(event, fd, EPOLLIN, journal_remote_server_global);
if (r == 1)
if (r == 1) {
int k;
/* Might have more data. We need to rerun the handler
* until we are sure the buffer is exhausted. */
sd_event_source_set_enabled(source->buffer_event, SD_EVENT_ON);
k = sd_event_source_set_enabled(source->buffer_event, SD_EVENT_ON);
if (k < 0)
r = k;
}
return r;
}
+1 -1
View File
@@ -2959,7 +2959,7 @@ static int event_source_leave_ratelimit(sd_event_source *s, bool run_callback) {
if (s->n_ref == 0)
source_free(s);
else if (r < 0)
sd_event_source_set_enabled(s, SD_EVENT_OFF);
assert_se(sd_event_source_set_enabled(s, SD_EVENT_OFF) >= 0);
return 1;
}
+6 -3
View File
@@ -83,10 +83,13 @@ static void test_sd_event_code_migration(void) {
char c[100 * DECIMAL_STR_MAX(unsigned) + 1], *p;
unsigned i;
size_t l;
int o;
int o, r;
for (i = o = 0; i < 100; i++)
o += snprintf(&b[o], sizeof(b) - o, "%u ", i);
for (i = o = 0; i < 100; i++) {
r = snprintf(&b[o], sizeof(b) - o, "%u ", i);
assert_se(r >= 0 && r < (int) sizeof(b) - o);
o += r;
}
p = c;
l = sizeof(c);