Subject: bug#4578: [PATCH] Emacs CVS: ispell.el (ispell-get-decoded-string): signal an error if no slot found

From: Jari Aalto <[email-masked]>
Date: Mon, 28 Sep 2009 14:39:07 +0300

Tags: patch

If the empty slot is not checked, the spell checking breaks in myterious
errors. E.g. flyspell-get-casechars returns nil, which breaks all of
flyspell.

2009-09-28  Jari Aalto  <[email-masked]>

        * textmodes/ispell.el (ispell-get-decoded-string): signal an error
        if no matching slot is found from `ispell-current-dictionary'

>From b301e76fdf3e83de88101891a3cd7ea13f5fba14 Mon Sep 17 00:00:00 2001
From: Jari Aalto <[email-masked]>
Date: Mon, 28 Sep 2009 14:35:21 +0300
Subject: [PATCH] lisp/textmodes/ispell.el: (ispell-get-decoded-string): signal an error if no slot found

Signed-off-by: Jari Aalto <[email-masked]>
---
 lisp/textmodes/ispell.el |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index 6d02cf9..729122b 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -1289,7 +1289,8 @@ Protects against bogus binding of `enable-multibyte-characters' in XEmacs."
 (defun ispell-get-decoded-string (n)
   (let* ((slot (or
 		(assoc ispell-current-dictionary ispell-local-dictionary-alist)
-		(assoc ispell-current-dictionary ispell-dictionary-alist)))
+		(assoc ispell-current-dictionary ispell-dictionary-alist)
+		(error "No slot match in ispell-current-dictionary")))
 	 (str (nth n slot)))
     (when (and (> (length str) 0)
 	       (not (multibyte-string-p str)))
-- 
1.6.3.3