diff --cc m/search.go
index 5b67346,e5b580f..0000000
--- m/search.go
+++ m/search.go
@@@ -10,45 -6,9 +10,79 @@@ import 
  	"github.com/walles/moar/m/linenumbers"
  )
  
++<<<<<<< HEAD
 +func (p *Pager) scrollToSearchHits() {
 +	if p.searchPattern == nil {
 +		// This is not a search
 +		return
 +	}
 +
 +	lineNumber := p.scrollPosition.lineNumber(p)
 +	if lineNumber == nil {
 +		// No lines to search
 +		return
 +	}
 +
 +	firstHitPosition := p.findFirstHit(*lineNumber, nil, false)
 +	if firstHitPosition == nil && (*lineNumber != linenumbers.LineNumber{}) {
 +		// Try again from the top
 +		firstHitPosition = p.findFirstHit(linenumbers.LineNumber{}, lineNumber, false)
 +	}
 +	if firstHitPosition == nil {
 +		// No match, give up
 +		return
 +	}
 +
 +	if firstHitPosition.isVisible(p) {
 +		// Already on-screen, never mind
 +		return
 +	}
 +
 +	p.scrollPosition = *firstHitPosition
 +}
 +
 +// NOTE: When we search, we do that by looping over the *input lines*, not the
 +// screen lines. That's why startPosition is a LineNumber rather than a
 +// scrollPosition.
 +//
 +// The `beforePosition` parameter is exclusive, meaning that line will not be
 +// searched.
 +//
 +// For the actual searching, this method will call _findFirstHit() in parallel
 +// on multiple cores, to help large file search performance.
++||||||| parent of b835e9a (Fix the warnings)
++func (p *Pager) scrollToSearchHits() {
++	if p.searchPattern == nil {
++		// This is not a search
++		return
++	}
++
++	firstHitPosition := p.findFirstHit(*p.scrollPosition.lineNumber(p), nil, false)
++	if firstHitPosition == nil {
++		// Try again from the top
++		firstHitPosition = p.findFirstHit(linenumbers.LineNumber{}, p.scrollPosition.lineNumber(p), false)
++	}
++	if firstHitPosition == nil {
++		// No match, give up
++		return
++	}
++
++	if firstHitPosition.isVisible(p) {
++		// Already on-screen, never mind
++		return
++	}
++
++	p.scrollPosition = *firstHitPosition
++}
++
+ // NOTE: When we search, we do that by looping over the *input lines*, not
+ // the screen lines. That's why we're using a line number rather than a
+ // scrollPosition for searching.
++=======
++// NOTE: When we search, we do that by looping over the *input lines*, not
++// the screen lines. That's why we're using a line number rather than a
++// scrollPosition for searching.
++>>>>>>> b835e9a (Fix the warnings)
  //
  // FIXME: We should take startPosition.deltaScreenLines into account as well!
  func (p *Pager) findFirstHit(startPosition linenumbers.LineNumber, beforePosition *linenumbers.LineNumber, backwards bool) *scrollPosition {
