diff options
Diffstat (limited to 'src/timer_state.cc')
| -rw-r--r-- | src/timer_state.cc | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/timer_state.cc b/src/timer_state.cc index 770bbad..c836ffd 100644 --- a/src/timer_state.cc +++ b/src/timer_state.cc @@ -281,9 +281,16 @@ private: << ": " << strerror(errno) << std::endl; return false; } - if (!parse_state(std::move(data))) { - std::cerr << "Invalid data in state " << state_file << "." << std::endl; - return false; + if (data.empty()) { + // Newly created file. + active_ = false; + total_ = std::chrono::minutes::zero(); + } else { + if (!parse_state(std::move(data))) { + std::cerr << "Invalid data in state " << state_file + << "." << std::endl; + return false; + } } return true; } |
