From: Jean-Philippe Orsini Date: Sun, 31 Mar 2013 17:01:20 +0000 (+0000) Subject: added psensor list copy fct X-Git-Tag: v0.8.0.5~128 X-Git-Url: https://git.wpitchoune.net/gitweb/?p=psensor.git;a=commitdiff_plain;h=c4b37e0535dfb2caa60fc49c2bb4b01124d91109 added psensor list copy fct --- diff --git a/src/lib/psensor.c b/src/lib/psensor.c index 68a1438..2ae6011 100644 --- a/src/lib/psensor.c +++ b/src/lib/psensor.c @@ -526,3 +526,18 @@ void psensor_cleanup() { lmsensor_cleanup(); } + +struct psensor **psensor_list_copy(struct psensor **sensors) +{ + struct psensor **result; + int n, i; + + n = psensor_list_size(sensors); + result = malloc((n+1) * sizeof(struct psensor *)); + for (i = 0; i < n; i++) + result[i] = sensors[i]; + result[n] = NULL; + + return result; +} + diff --git a/src/lib/psensor.h b/src/lib/psensor.h index 90ea41d..fb06814 100644 --- a/src/lib/psensor.h +++ b/src/lib/psensor.h @@ -178,6 +178,8 @@ struct psensor **get_all_sensors(int use_libatasmart, int values_max_length); struct psensor **psensor_list_add(struct psensor **sensors, struct psensor *sensor); +struct psensor **psensor_list_copy(struct psensor **); + void psensor_set_current_value(struct psensor *sensor, double value); void psensor_set_current_measure(struct psensor *sensor, double value, struct timeval tv);