X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FEnchantChecker.cpp;h=47eb35e52ec208eaa331a5ecaba3786c65e20212;hb=0885098bd3c07ca71024c4fe1bc7d6a1879918f6;hp=5ef399a24ad14ea8769d387223fd36a2a5e69793;hpb=e30f3d76d2bee0011ceaeb5f0cc221156458cbad;p=lyx.git diff --git a/src/EnchantChecker.cpp b/src/EnchantChecker.cpp index 5ef399a24a..47eb35e52e 100644 --- a/src/EnchantChecker.cpp +++ b/src/EnchantChecker.cpp @@ -30,6 +30,17 @@ namespace lyx { namespace { +enchant::Broker & broker() +{ +#ifdef HAVE_ENCHANT2 + static enchant::Broker thebroker; + return thebroker; +#else + return *enchant::Broker::instance(); +#endif +} + + struct Speller { enchant::Dict * speller; }; @@ -68,12 +79,11 @@ EnchantChecker::Private::~Private() enchant::Dict * EnchantChecker::Private::addSpeller(string const & lang) { - enchant::Broker * instance = enchant::Broker::instance(); Speller m; try { LYXERR(Debug::FILES, "request enchant speller for language " << lang); - m.speller = instance->request_dict(lang); + m.speller = broker().request_dict(lang); } catch (enchant::Exception & e) { // FIXME error handling? @@ -186,8 +196,7 @@ bool EnchantChecker::hasDictionary(Language const * lang) const { if (!lang) return false; - enchant::Broker * instance = enchant::Broker::instance(); - return (instance->dict_exists(lang->code())); + return broker().dict_exists(lang->code()); }