Added TRUE_CURRENT_TIME() macro
Because CURRENT_TIME() can now be a past date if --now is used.
This commit is contained in:
parent
559566751d
commit
cc532c31aa
3 changed files with 12 additions and 11 deletions
|
|
@ -393,7 +393,7 @@ commodity_t::check_for_updated_price(const optional<price_point_t>& point,
|
|||
DEBUG("commodity.download", "moment = " << *moment);
|
||||
DEBUG("commodity.download", "slip.moment = " << seconds_diff);
|
||||
} else {
|
||||
seconds_diff = (CURRENT_TIME() - point->when).total_seconds();
|
||||
seconds_diff = (TRUE_CURRENT_TIME() - point->when).total_seconds();
|
||||
DEBUG("commodity.download", "slip.now = " << seconds_diff);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -69,11 +69,11 @@ inline bool is_valid(const date_t& moment) {
|
|||
extern optional<datetime_t> epoch;
|
||||
|
||||
#ifdef BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK
|
||||
#define CURRENT_TIME() \
|
||||
(epoch ? *epoch : boost::posix_time::microsec_clock::universal_time())
|
||||
#define TRUE_CURRENT_TIME() (boost::posix_time::microsec_clock::universal_time())
|
||||
#define CURRENT_TIME() (epoch ? *epoch : TRUE_CURRENT_TIME())
|
||||
#else
|
||||
#define CURRENT_TIME() \
|
||||
(epoch ? *epoch : boost::posix_time::second_clock::universal_time())
|
||||
#define TRUE_CURRENT_TIME() (boost::posix_time::second_clock::universal_time())
|
||||
#define CURRENT_TIME() (epoch ? *epoch : TRUE_CURRENT_TIME())
|
||||
#endif
|
||||
#define CURRENT_DATE() \
|
||||
(epoch ? epoch->date() : boost::gregorian::day_clock::universal_day())
|
||||
|
|
|
|||
13
src/utils.cc
13
src/utils.cc
|
|
@ -531,14 +531,15 @@ bool logger_func(log_level_t level)
|
|||
{
|
||||
if (! logger_has_run) {
|
||||
logger_has_run = true;
|
||||
logger_start = CURRENT_TIME();
|
||||
logger_start = TRUE_CURRENT_TIME();
|
||||
|
||||
IF_VERIFY()
|
||||
*_log_stream << " TIME OBJSZ MEMSZ" << std::endl;
|
||||
}
|
||||
|
||||
*_log_stream << std::right << std::setw(5)
|
||||
<< (CURRENT_TIME() - logger_start).total_milliseconds() << "ms";
|
||||
<< (TRUE_CURRENT_TIME() -
|
||||
logger_start).total_milliseconds() << "ms";
|
||||
|
||||
#if defined(VERIFY_ON)
|
||||
IF_VERIFY() {
|
||||
|
|
@ -616,7 +617,7 @@ struct timer_t
|
|||
bool active;
|
||||
|
||||
timer_t(log_level_t _level, std::string _description)
|
||||
: level(_level), begin(CURRENT_TIME()),
|
||||
: level(_level), begin(TRUE_CURRENT_TIME()),
|
||||
spent(time_duration(0, 0, 0, 0)),
|
||||
description(_description), active(true) {}
|
||||
};
|
||||
|
|
@ -637,7 +638,7 @@ void start_timer(const char * name, log_level_t lvl)
|
|||
timers.insert(timer_map::value_type(name, timer_t(lvl, _log_buffer.str())));
|
||||
} else {
|
||||
assert((*i).second.description == _log_buffer.str());
|
||||
(*i).second.begin = CURRENT_TIME();
|
||||
(*i).second.begin = TRUE_CURRENT_TIME();
|
||||
(*i).second.active = true;
|
||||
}
|
||||
_log_buffer.str("");
|
||||
|
|
@ -657,7 +658,7 @@ void stop_timer(const char * name)
|
|||
timer_map::iterator i = timers.find(name);
|
||||
assert(i != timers.end());
|
||||
|
||||
(*i).second.spent += CURRENT_TIME() - (*i).second.begin;
|
||||
(*i).second.spent += TRUE_CURRENT_TIME() - (*i).second.begin;
|
||||
(*i).second.active = false;
|
||||
|
||||
#if defined(VERIFY_ON)
|
||||
|
|
@ -682,7 +683,7 @@ void finish_timer(const char * name)
|
|||
|
||||
time_duration spent = (*i).second.spent;
|
||||
if ((*i).second.active) {
|
||||
spent = CURRENT_TIME() - (*i).second.begin;
|
||||
spent = TRUE_CURRENT_TIME() - (*i).second.begin;
|
||||
(*i).second.active = false;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue