             (progn
               (message "Help for entry %s not found in module %s"
                        entry module)
-              (goto-char here)))))
+              (goto-char here)))
+          ))
     (ocaml-link-activate (cdr info-section))
     (if (window-live-p window) (select-window window))
     ))

                              (mapconcat 'car links "\\|")
                              "\\)[^A-Za-z0-9'_]"))
              (case-fold-search nil))
          (goto-char (point-min))
          (let ((buffer-read-only nil)
                ;; use of dynamic scoping, need not be restored!
                (modified-p (buffer-modified-p)))
            (unwind-protect
                (save-excursion
                  (goto-char (point-min))
                  (while (re-search-forward regexp (point-max) t)
                    (put-text-property (match-beginning 1) (match-end 1)
                                       'mouse-face 'highlight)
                    (put-text-property (match-beginning 1) (match-end 1)
                                       'local-map ocaml-link-map)
                    (if (x-display-color-p)
                        (put-text-property (match-beginning 1) (match-end 1)
                                           'face 'ocaml-link-face)))
                  )
              ;; need to restore flag if buffer was unmodified.
              (unless modified-p (set-buffer-modified-p nil))
              ))
          ))))




    (message "Scanning info files in %s" dir)
    (save-window-excursion
      (set-buffer (get-buffer-create "*caml-help*"))
      (or (shell-command command (current-buffer))
          (error "Could not run:%s" command))
      (goto-char (point-min))
      (while (re-search-forward module-regexp (point-max) t)
        (if (equal (char-after (match-end 1)) 127)
