;; Do exact matching.
(goto-char (point-min))
(while (and (not (eobp))
- (funcall search-func match nil t))
+ (condition-case err
+ (funcall search-func match nil t)
+ (error
+ (gnus-error 3.2 "Problem with score data: %s, remove this entry %s"
+ err (cadaar alist))
+ (gnus-score-set 'touched '(t) alist)
+ (setcdr entries (cddr entries))
+ nil)))
;; Is it really exact?
(and (eolp)
(= (gnus-point-at-bol) (match-beginning 0))
(when (string= match "")
(setq match "\n"))
(while (and (not (eobp))
- (funcall search-func match nil t))
+ (condition-case err
+ (funcall search-func match nil t)
+ (error
+ (gnus-error 3.2 "Problem with score data: %s, remove this entry %s"
+ err (cadaar alist))
+ (gnus-score-set 'touched '(t) alist)
+ (setcdr entries (cddr entries))
+ nil)))
(goto-char (match-beginning 0))
(end-of-line)
(setq found (setq arts (get-text-property (point) 'articles)))
found)
(goto-char (point-min))
(while (and (not (eobp))
- (search-forward match nil t))
+ (condition-case err
+ (search-forward match nil t)
+ (error
+ (gnus-error 3.2 "Problem with score data: %s, remove this entry %s"
+ err (cadaar fuzzies))
+ (gnus-score-set 'touched '(t) (cdar fuzzies))
+ (setcdr (caar fuzzies) (cddaar fuzzies))
+ nil)))
(when (and (= (gnus-point-at-bol) (match-beginning 0))
(eolp))
(setq found (setq arts (get-text-property (point) 'articles)))