}
}
- updateMetrics(false);
+ if (buffer_)
+ updateMetrics(false);
if (buffer_ && graphics::Previews::status() != LyXRC::PREVIEW_OFF)
graphics::Previews::get().generateBufferPreviews(*buffer_);
if (it.pit() == pit) {
// restored pos may be bigger than it->size
setCursor(makeDocIterator(it, min(pos, it->size())));
- update(Update::FitCursor);
+ // No need to update the metrics if fitCursor returns false.
+ if (fitCursor())
+ updateMetrics(false);
break;
}
}