sensors list can be modified in a future release, protect it from concurent modification
authorJean-Philippe Orsini <jeanfi@gmail.com>
Wed, 25 Apr 2012 09:49:12 +0000 (09:49 +0000)
committerJean-Philippe Orsini <jeanfi@gmail.com>
Wed, 25 Apr 2012 09:49:12 +0000 (09:49 +0000)
src/main.c

index fd1d44b..3c79195 100644 (file)
@@ -137,16 +137,19 @@ update_psensor_values_size(struct psensor **sensors, struct config *cfg)
 
 void update_psensor_measures(struct ui_psensor *ui)
 {
-       struct psensor **sensors = ui->sensors;
-       struct config *cfg = ui->config;
+       struct psensor **sensors;
+       struct config *cfg;
+
+       cfg = ui->config;
 
        while (1) {
                g_mutex_lock(ui->sensors_mutex);
 
+               sensors = ui->sensors;
                if (!sensors)
                        return;
 
-               update_psensor_values_size(sensors, ui->config);
+               update_psensor_values_size(sensors, cfg);
 
                psensor_list_update_measures(sensors);
 #ifdef HAVE_REMOTE_SUPPORT