chiark / gitweb /
timedated: flip internal status after executing operation
[elogind.git] / src / timedate / timedated.c
index ca771d5b33241215e4987fb06e53f33e171b73f2..db9a149ae5dcd9294a88d78be60a2f9e2d1b14c4 100644 (file)
@@ -646,8 +646,6 @@ static int method_set_ntp(sd_bus *bus, sd_bus_message *m, void *userdata, sd_bus
         if (r == 0)
                 return 1;
 
-        c->use_ntp = ntp;
-
         r = context_enable_ntp(c, bus, error);
         if (r < 0)
                 return r;
@@ -656,6 +654,8 @@ static int method_set_ntp(sd_bus *bus, sd_bus_message *m, void *userdata, sd_bus
         if (r < 0)
                 return r;
 
+        c->use_ntp = ntp;
+
         log_info("Set NTP to %s", c->use_ntp ? "enabled" : "disabled");
 
         sd_bus_emit_properties_changed(bus, "/org/freedesktop/timedate1", "org.freedesktop.timedate1", "NTP", NULL);