summaryrefslogtreecommitdiff
path: root/amount.cc
diff options
context:
space:
mode:
Diffstat (limited to 'amount.cc')
-rw-r--r--amount.cc22
1 files changed, 10 insertions, 12 deletions
diff --git a/amount.cc b/amount.cc
index d0c9f6a8..4d95b3bd 100644
--- a/amount.cc
+++ b/amount.cc
@@ -1141,21 +1141,19 @@ amount_t commodity_t::value(const std::time_t moment)
std::time_t age = 0;
amount_t price;
- if (! history)
- return price;
-
- for (history_map::reverse_iterator i = history->prices.rbegin();
- i != history->prices.rend();
- i++)
- if (moment == 0 || std::difftime(moment, (*i).first) >= 0) {
- age = (*i).first;
- price = (*i).second;
- break;
- }
+ if (history)
+ for (history_map::reverse_iterator i = history->prices.rbegin();
+ i != history->prices.rend();
+ i++)
+ if (moment == 0 || std::difftime(moment, (*i).first) >= 0) {
+ age = (*i).first;
+ price = (*i).second;
+ break;
+ }
if (updater)
(*updater)(*this, moment, age,
- (history->prices.size() > 0 ?
+ (history && history->prices.size() > 0 ?
(*history->prices.rbegin()).first : 0), price);
return price;