X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=src_test%2Ftest_w1_datalog_write.cc;h=f36d8dc7c310c624b3c48ebd6adf3bcc4b09c99a;hb=f1b546356a6ca332eca76716cb7299d502f284eb;hp=45e803683d8627cb796fa77280537ddfe8fc574a;hpb=a7002b0a87c5f17b542dfbd44f482014a191df97;p=lib1wire.git diff --git a/src_test/test_w1_datalog_write.cc b/src_test/test_w1_datalog_write.cc index 45e8036..f36d8dc 100644 --- a/src_test/test_w1_datalog_write.cc +++ b/src_test/test_w1_datalog_write.cc @@ -10,12 +10,15 @@ #include #include +#include #include #include #include +#include + #include "Factory.hh" using namespace w1; @@ -25,36 +28,13 @@ using namespace plp; #define DEFAULT_READ_INTERVAL_SECONDS 600 #define DEFAULT_MAX_READ_COUNT -1 -bool try_parse_long(const char *str, long *result) { - int new_result; - char *endptr; - bool ret_val; - - ret_val = false; - errno = 0; - new_result = strtol(str, &endptr, 10); - if (errno != 0) { - log_error("invalid input %s, could not convert to integer.\n", str); - } - else { - if (endptr == str) { - log_error("invalid input %s, could not convert to integer.\n", str); - } - else { - *result = new_result; - ret_val = true; - } - } - return ret_val; -} - int main(int argc, char** argv) { - list device_list; int read_count_total; long cnt_max_scans; long read_interval_seconds; string loc; Device *device; + list device_list; list::iterator iter; // default values than can be overwritten with parameters @@ -71,10 +51,10 @@ int main(int argc, char** argv) { log_info("\tmax_read_count == -1: read devices until application is terminated\n\n"); } if (argc > 2) { - try_parse_long(argv[2], &read_interval_seconds); + parse_long(argv[2], &read_interval_seconds); } if (argc > 3) { - try_parse_long(argv[3], &cnt_max_scans); + parse_long(argv[3], &cnt_max_scans); } log_info("searching 1-wire devices\n"); if (read_interval_seconds == DEFAULT_READ_INTERVAL_SECONDS) { @@ -101,7 +81,7 @@ int main(int argc, char** argv) { log_info("closing the application, max read count reached. (%ld)\n", cnt_max_scans); break; } - for(iter = device_list.begin(); iter != device_list.end(); iter++) { + for (iter = device_list.begin(); iter != device_list.end(); iter++) { device = (Device *)*iter; if (device->get_lifecycle_state() == LIFECYCLE_STATUS__AVAILABLE) { device->printout(); @@ -115,11 +95,13 @@ int main(int argc, char** argv) { } } else { - log_debug("could not find 1-wire devices.\n"); + log_debug("could not find devices.\n"); } + log_debug("trying to empty device list\n"); while (device_list.empty() == false) { device = device_list.back(); device_list.pop_back(); + log_debug("calling delete\n"); delete(device); } return 0;