- enchant::Broker * instance = enchant::Broker::instance();
- enchant::Dict * dict = instance->request_dict(lang);
-
- if (dict) {
- Speller m;
- m.speller = dict;
- spellers_[lang] = m;
- return m.speller;
+ Speller m;
+
+ try {
+ LYXERR(Debug::FILES, "request enchant speller for language " << lang);
+ m.speller = broker().request_dict(lang);
+ }
+ catch (enchant::Exception & e) {
+ // FIXME error handling?
+ const char * what = e.what();
+ LYXERR(Debug::FILES, "cannot add enchant speller: " <<
+ ((what && *what) ? what : "unspecified enchant exception in request_dict()"));
+ m.speller = 0;