]> pilppa.com Git - libplp.git/commitdiff
Nullpointer bug fix if device's datastore was empty while reading data.
authorMika Laitio <lamikr@pilppa.org>
Thu, 10 Mar 2011 14:51:49 +0000 (16:51 +0200)
committerMika Laitio <lamikr@pilppa.org>
Thu, 10 Mar 2011 14:51:49 +0000 (16:51 +0200)
Signed-off-by: Mika Laitio <lamikr@pilppa.org>
src/DataReader.cc

index 9ba287284c9526792713029aed21490e49e6f937..72a44bd65a20ce6cbc0bbfd2592689e288ef2388 100644 (file)
@@ -74,7 +74,9 @@ Data *DataReader::get_latest_data() {
 
        ret_val = NULL;
        y_list  = FileUtil::get_subdirectories(device_dir);
-       ret_val = find_latest_data(y_list);
+       if (y_list.size() > 0) {
+               ret_val = find_latest_data(y_list);
+       }
        return ret_val;
 }
 
@@ -297,12 +299,17 @@ DataRange *DataReader::get_daily_summary() {
  * Get Daily summary specified by the calc_type from the latest date.
  */
 DataRange *DataReader::get_daily_summary(EnumSummaryCalculationType calc_type_param) {
-       Data    *data;
-       Date    date;
+       Data            *data;
+       Date            date;
+       DataRange       *ret_val;
 
+       ret_val = NULL;
        data    = get_latest_data();
-       date    = data->get_date();
-       return get_daily_summary(&date, calc_type_param);
+       if (data != NULL) {
+               date    = data->get_date();
+               ret_val = get_daily_summary(&date, calc_type_param);
+       }
+       return ret_val;
 }
 
 DataRange *DataReader::get_daily_summary(Date *date,