From: Lennart Poettering Date: Tue, 6 May 2014 10:34:03 +0000 (+0200) Subject: timesyncd: keep order of NTP servers X-Git-Tag: v213~249 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=600809211ecf1b1c3f2b701f30e5f77e33f0348b timesyncd: keep order of NTP servers --- diff --git a/src/timesync/timesyncd.c b/src/timesync/timesyncd.c index 1237abb54..1c0f11377 100644 --- a/src/timesync/timesyncd.c +++ b/src/timesync/timesyncd.c @@ -935,7 +935,7 @@ static int manager_connect(Manager *m) { } static int manager_add_server(Manager *m, const char *server) { - ServerName *n; + ServerName *n, *tail; assert(m); assert(server); @@ -950,7 +950,12 @@ static int manager_add_server(Manager *m, const char *server) { return -ENOMEM; } - LIST_PREPEND(names, m->servers, n); + if (m->servers) { + LIST_FIND_TAIL(names, m->servers, tail); + LIST_INSERT_AFTER(names, m->servers, tail, n); + } else + LIST_PREPEND(names, m->servers, n); + return 0; }