Here's the actual patch for reference. Applying this would close the
bug.
-r
diff -ur bluefish-1.0.7/src/bfspell.c bluefish-1.0.7-g1/src/bfspell.c
--- bluefish-1.0.7/src/bfspell.c 2005-11-24 10:18:01.000000000 -0800
+++ bluefish-1.0.7-g1/src/bfspell.c 2007-06-06 22:07:36.000000000 -0700
@@ -82,6 +82,8 @@
gchar *doc_get_next_word(Tbfspell *bfspell, GtkTextIter *itstart, GtkTextIter *itend) {
gboolean havestart=FALSE;
gchar *retval;
+
+ if (!bfspell->doc) return NULL;
if (bfspell->eo && bfspell->offset ==-1) {
gtk_text_buffer_get_iter_at_mark(bfspell->doc->buffer,itstart,bfspell->eo);
@@ -127,7 +129,7 @@
}
gboolean spell_check_word(Tbfspell *bfspell, gchar * tocheck, GtkTextIter *itstart, GtkTextIter *itend) {
- if (tocheck && !isdigit(tocheck[0])) {
+ if (tocheck && !isdigit(tocheck[0]) && bfspell->spell_checker) {
int correct = aspell_speller_check(bfspell->spell_checker, tocheck, -1);
DEBUG_MSG("word '%s' has correct=%d\n",tocheck,correct);
if (!correct) {
@@ -175,9 +177,11 @@
gtk_combo_set_popdown_strings(GTK_COMBO(bfspell->suggestions), poplist);
g_list_free(poplist);
bfspell->offset = 0;
- aspell_speller_save_all_word_lists(bfspell->spell_checker);
- delete_aspell_speller(bfspell->spell_checker);
- bfspell->spell_checker = NULL;
+ if (bfspell->spell_checker) {
+ aspell_speller_save_all_word_lists(bfspell->spell_checker);
+ delete_aspell_speller(bfspell->spell_checker);
+ bfspell->spell_checker = NULL;
+ }
spell_gui_set_button_status(bfspell, FALSE);
}