From c4b37e0535dfb2caa60fc49c2bb4b01124d91109 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Orsini Date: Sun, 31 Mar 2013 17:01:20 +0000 Subject: [PATCH] added psensor list copy fct --- src/lib/psensor.c | 15 +++++++++++++++ src/lib/psensor.h | 2 ++ 2 files changed, 17 insertions(+) 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); -- 2.7.4