Index: BaseView.cpp =================================================================== --- BaseView.cpp (revisjon 20093) +++ BaseView.cpp (arbeidskopi) @@ -2292,11 +2292,11 @@ RecalcAllVertScrollBars(TRUE); m_ptCaretPos.x = 0; m_nCaretGoalPos = 0; + EnsureCaretVisible(); OnNavigateNextinlinediff(); UpdateViewsCaretPosition(); UpdateCaret(); - EnsureCaretVisible(); ShowDiffLines(nCenterPos); return true; } @@ -3084,9 +3084,9 @@ if (m_ptCaretPos.y >= (m_nTopLine+screnLines)) ScrollAllToLine(m_ptCaretPos.y-screnLines+1); if (nCaretOffset < m_nOffsetChar) - ScrollToChar(nCaretOffset); + ScrollAllToChar(nCaretOffset); if (nCaretOffset > (m_nOffsetChar+GetScreenChars()-1)) - ScrollToChar(nCaretOffset-GetScreenChars()+1); + ScrollAllToChar(nCaretOffset-GetScreenChars()+1); } int CBaseView::CalculateActualOffset(int nLineIndex, int nCharIndex) @@ -3706,6 +3706,8 @@ if (line[0] == 0) return false; + CheckOtherView(); + LPCTSTR pszDiffChars = NULL; int nDiffLength = 0; if (m_pOtherViewData)