Subject: Re: bug#4147: 23.1.50: Info-search command strange behaviour

From: martin rudalics <[email-masked]>
Date: Sat, 15 Aug 2009 12:10:23 +0200

>     s blahblah RET
 >     => Says it can't find it, but moves point forward a few characters.

I suppose something like the attached patch should cure that.

 > Go back to the Info directory:
 >     d
 >
 > Search:
 >     s blahblah RET
 >     => Says "Wrong type argument: stringp, nil"

FWIW this happens because in the

	      (with-current-buffer (marker-buffer Info-tag-table-marker)

form `Info-tag-table-marker' is nil and `with-current-buffer' expects
either a valid buffer or a string naming a buffer.  I don't know how
Info tags are handled so I leave this to someone more knowledgeable.

 > That's all.  It was the point moving that I found particularly odd,
 > when searching repeatedly for a term.  First point moved as expected
 > with each "s RET" sequence, but then it carried on moving after there
 > were no more occurrences which was confusing.  I noticed the error
 > after returning to the Info directory following that.

martin

*** info.el.~1.562.~	2009-07-27 08:09:32.407806900 +0200
--- info.el	2009-08-15 11:18:33.578125000 +0200
***************
*** 1818,1825 ****
  		(signal 'search-failed (list regexp))))
  	  (if (not found)
  	      (progn (Info-read-subfile osubfile)
- 		     (goto-char opoint)
  		     (Info-select-node)
  		     (set-window-start (selected-window) ostart)))))
  
        (if (and (string= osubfile Info-current-subfile)
--- 1818,1825 ----
  		(signal 'search-failed (list regexp))))
  	  (if (not found)
  	      (progn (Info-read-subfile osubfile)
  		     (Info-select-node)
+ 		     (goto-char opoint)
  		     (set-window-start (selected-window) ostart)))))
  
        (if (and (string= osubfile Info-current-subfile)