Fixed missing iterator initialization.
Fixed get_last_update_time().
*/
time_t Service::get_last_update_time( )
{
- std::map<time_t,std::string>::reverse_iterator r_iter = LastUpdates.rbegin();
- return r_iter->first;
+ time_t last_update = 0;
+ if ( !LastUpdates.empty() )
+ {
+ std::map<time_t,std::string>::reverse_iterator r_iter = LastUpdates.rbegin();
+ if ( r_iter != LastUpdates.rend() )
+ last_update = r_iter->first;
+ }
+ return last_update;
}
if ( last_updates.size() > 0 )
{
bool ip_burnt = true;
- string ip_next_to_last_update;
int max_equal_updates_in_succession = service->get_max_equal_updates_in_succession();
int i = 0;
- for ( std::map<time_t,std::string>::reverse_iterator r_iter; (r_iter != last_updates.rend()) && (i < max_equal_updates_in_succession); r_iter++ )
+ for ( std::map<time_t,std::string>::reverse_iterator r_iter = last_updates.rbegin(); (r_iter != last_updates.rend()) && (i < max_equal_updates_in_succession); r_iter++ )
{
if ( i == 0 )
lastupdated = r_iter->first;