X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fbus-driverd%2Fbus-driverd.c;fp=src%2Fbus-driverd%2Fbus-driverd.c;h=44172c4ed6a211c38eab21a7b32ed281151b0227;hp=f8a123d4f118d290ae73005648c435f503d5ac35;hb=4bf7665c760bdd011cee3c5a9b03c8e109991241;hpb=af13a6b0606f166c93cafc9892343f167f880281 diff --git a/src/bus-driverd/bus-driverd.c b/src/bus-driverd/bus-driverd.c index f8a123d4f..44172c4ed 100644 --- a/src/bus-driverd/bus-driverd.c +++ b/src/bus-driverd/bus-driverd.c @@ -90,10 +90,10 @@ static void match_free(Match *m) { Match *first; first = hashmap_get(m->client->matches, m->match); - if (first) { - LIST_REMOVE(matches, first, m); + LIST_REMOVE(matches, first, m); + if (first) assert_se(hashmap_replace(m->client->matches, m->match, first) >= 0); - } else + else hashmap_remove(m->client->matches, m->match); m->client->n_matches--;