summaryrefslogtreecommitdiff
path: root/external/hunspell
AgeCommit message (Collapse)Author
2024-05-11Update Hunspell URL in readmesIlmari Lauhakangas
Change-Id: Ic1a993029060a1260dffa126a930e29d4135fe61 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167506 Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2023-11-03speed up hunspell inner loopNoel Grandin
which calls into the kernel to get elapsed time, instead of using the VDSO-based CLOCK_MONOTONIC (or at least, the C++ equivalent of that) , which is much faster Change-Id: I99d958b0ab64b75360db4e0c8a951c37af2505bc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158809 Tested-by: Jenkins Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-08-04external/hunspell: Work around missing C++20 std::bit_castStephan Bergmann
...as witnessed with <https://ci.libreoffice.org/job/gerrit_android_x86/31690/> on top of patch set 4 of <https://gerrit.libreoffice.org/c/core/+/155121/4> "Bump baseline to C++20", > In file included from /home/tdf/lode/jenkins/workspace/android_x86/lingucomponent/source/spellcheck/spell/sspellimp.cxx:35: > In file included from /home/tdf/lode/jenkins/workspace/android_x86/workdir/UnpackedTarball/hunspell/src/hunspell/hunspell.hxx:74: > /home/tdf/lode/jenkins/workspace/android_x86/workdir/UnpackedTarball/hunspell/src/hunspell/w_char.hxx:62:17: error: no member named 'bit_cast' in namespace 'std' > return std::bit_cast<unsigned short>(*this); > ~~~~~^ Change-Id: Ic4a799a0918ff6bcc4dd414d5ae59e02181074bd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155346 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-05-17tdf#92824 spell checking: limit suggestions only for the best onesLászló Németh
Apply Hunspell fix to keep only the best suggestions, if they exist to avoid of overgenerating worse suggestions especially for short bad words. See Hunspell commit b88f9ea57bdb9b219f3c1d2c67f4f882f1f23194 "Keep only REP, ph: or 2-word dictionary phrase suggestions These are the best suggestions, no need to search other ones to avoid annoying redundant and long list. For example to suggest only "a lot" to the bad form "alot", add the 2-word phrase "a lot" to the dic file. Or for a very typical spelling mistake, enough to specify the bad form with a ph: in the dictionary file to remove the other suggestions." Change-Id: I0272bb9ed2dd493aa372feb68d1937e359910e0a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151868 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2023-01-27Remove support for AIXStephan Bergmann
As discussed in the mailing list thread starting at <https://lists.freedesktop.org/archives/libreoffice/2023-January/089808.html> "Plan to remove dead C++ UNO bridge implementations (bridges/source/cpp_uno/*)", the bridge implementation at bridges/source/cpp_uno/gcc3_aix_powerpc is apparently dead and should thus be removed. However, that was the only bridge implementation for AIX, which implies that support for the AIX platform as a whole is dead and should thus be removed. Change-Id: I96de3f7f97d4fd770ff78256f0ea435383688be9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146057 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-01-07Related: rhbz#2158548 allow longer words for hunspell-koCaolán McNamara
https://github.com/hunspell/hunspell/issues/903 A problem since the sanity check added in: commit 05e44e069e4cfaa9ce1264bf13f23fc9abd7ed05 Author: Caolán McNamara <caolanm@redhat.com> Date: Thu Sep 1 13:46:40 2022 +0100 Check word limit (#813) * check against hentry blen max Change-Id: Iab2c062584da076260c3262537690435eae7f396 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145154 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-12-30upgrade to hunspell 1.7.2László Németh
Change-Id: If969eccc73926911a4a09440623adf83b8e2c520 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144869 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2022-08-23backport some upstream hunspell commitsCaolán McNamara
Change-Id: I0c2b94a27af8c25c69579b367b944a4f77036487 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138735 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-08-22upgrade to hunspell 1.7.1Caolán McNamara
Change-Id: Ifff2f17d17ab2764f3703b008fcb096ff08c9315 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138690 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-01try to use also proper debug LDFLAGS for externals librariesLuboš Luňák
This is basically ea68de2968c0dbcd8e7549435e829db06795c16d but for LDFLAGS. A number of external libs cannot use this because their libtool mishandles -fuse-ld. Change-Id: Idee379eb0a3afb475b536519ee3de064b4e218f4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133639 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-04-12use gb_DEBUGINFO_FLAGS consistently in gbuild ExternalProject'sLuboš Luňák
A number of them didn't use it at all, others had it hand-written in various ways. Change-Id: Iaf86325f9cdc032926bac917dc3eef4e34661544 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132818 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-01-31externals: always provide platform configure flagsJan-Marek Glogowski
No idea why we just provided the platform flags when cross- compiling. In the curious case, where the host platform is detected as x86_64-pc-mingw32 per default and we actually want to override it with x86_64-pc-cygwin, we don't do a cross compile, but must override the host platform. But there is additional special handling needed for the omitted cross-platform build in the special case of --host=i686-pc-cygwin and --build=x86_64-pc-cygwin, where we deliberatly ignore cross building; Windows is already a slow build, so try to keep this optimization (AMD64 can execute x86 binaries). There is the theoretical case, where the externals config.guess would have detected something else and that "magically" even worked, while the LO detected triplet would fail, but this should be fixed in the external in any way. Change-Id: Ib7a9719e0e406fe90334b7611dc3f01b51692bfa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129153 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-20WASM --enable-wasm-strip now skips lots of LO codeArmin Le Grand (Allotropia)
... resulting in a stripped-down, Writer-only build to decrease the resulting WASM bytecode size. It removes the following code from the build: * All other major modules: Base, Calc, Chart, Draw, Impress and Math and related writerperfect filters * The premultiply tables * The (auto-)recovery functionality * All accessibility (but not the accessibility document checker) * The LanguageGuess component * EPUB support * The start center / BackingWindow * The TipOfTheDay functionality * The splash screen communication Currently crashs with anything different then soffice --writer. Closing the document also still crashes. FYI: many of these features are now behind ENABLE_WASM_STRIP_* defines, but they normally don't work on their own, globally! That's because we started with stripping the main components. Change-Id: Ib9c0f9452815910c0a2aceaf142ba1ad4a9cb0d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126182 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-11-04Consolidate -D_GLIBCXX_DEBUG for --enable-dbgutil builds against libstdc++Stephan Bergmann
(this was meant as a prerequisite for enabling its -D_LIBCPP_DEBUG=1 counterpart when building against libc++ on macOS, but which got stalled for now after running into the issue described at <https://lists.llvm.org/pipermail/libcxx-dev/2021-October/001222.html> "[libcxx-dev] Building a program with -D_LIBCPP_DEBUG=1 against a libc++ that is not itself built with that define") Change-Id: If466dce595a9311b2afbae41d5ddcaecc6f3c57b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124678 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-10-13use LTO to build hunspell if LTO is enabledLuboš Luňák
Without this, LTO gcc build may fail while linking libmerged because of an undefined reference to `std::string::append(char const*)', which looks like a gcc bug because std::string should be a template, but whatever, this makes it build. Change-Id: I173cc0c773d5957a0c4a9cecc74c1ab33afad7db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123541 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-05-05WASM: add initial support for Emscripten cross buildJan-Marek Glogowski
- configure with: - --host=wasm64-local-emscripten - had to make a few externals optional, so adding: - --disable-nss - --disable-cmis - --disable-curl Change-Id: I48d1c73d2675ad2e2beaf2c341578199efbd24ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111130 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2020-02-16GBUILD_TRACE, support for finding out where the build time is spentLuboš Luňák
See instructions in solenv/gbuild/Trace.mk . This generates a file than can be viewed e.g. in the Chromium tracing view. Change-Id: I5f90647c58ca729375525b6daed2d4918adc8188 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88754 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-11-13CVE-2019-16707Caolán McNamara
Change-Id: I69c4c31330fde135b6ff6c0c1c72f613f0cc4b1d Reviewed-on: https://gerrit.libreoffice.org/82551 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-05-24disable warnings in external libsLuboš Luňák
As in, really disable, so that they do not even show. This moreover avoids tons of D9025 warnings from MSVC about overriding -W4 with -w. Change-Id: Ia2e72fd72d883d91bdd89e467ee42f259e2ae033 Reviewed-on: https://gerrit.libreoffice.org/72899 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-01-24Drop unnecessary gb_DEBUG_CFLAGSStephan Bergmann
...which was at maximum set to GCC's -finline-limit=0 -fno-inline (solenv/gbuild/platform/com_GCC_defs.mk). Those options were set for debug builds "since forever", but that looks very much like cargo cult: -fno-inline "is the default when not optimizing" anyway (<https://gcc.gnu.org/onlinedocs/gcc-7.4.0/gcc/Optimize-Options.html>), and it is unclear to me how -finline-limit=0 should have any impact beyond -fno-inline (and maybe was present for ancient compilers that only supported -finline-limit but not -fno-inline?). Change-Id: Id6752d03b1b7ec8763defabc5720d4dd08790874 Reviewed-on: https://gerrit.libreoffice.org/66836 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-23Drop use of obsolete GCC -fno-default-inlineStephan Bergmann
...that is documented as: "Does nothing. Preserved for backward compatibility." ever since <https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=160384> from 2010. -fno-default-inline was the only value ever set in gb_DEBUG_CXXFLAGS, so the latter can be removed now. The use of gb_DEBUG_CXXFLAGS had accidentally already been removed from gb_LinkTarget__get_debugcxxflags with e751e24250fda31dde52b3c65ca79f86142dc789 "--enable-optimized should be orthogonal to --enable-debug/--enable-dbgutil", and that leaves gb_LinkTarget__get_debugcflags and gb_LinkTarget__get_debugcxxflags with identical definitions, so replace those two with a single gb_LinkTarget__get_debugflags. Some external modules had used only gb_DEBUG_CXXFLAGS, when this was apparently meant to be used in addition to gb_DEBUG_CFLAGS, so those uses have been changed to gb_DEBUG_CFLAGS now. Change-Id: I84ea0ab1233569b0b02ca057240a71f138352381 Reviewed-on: https://gerrit.libreoffice.org/66808 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-11-14We need gb_UnpackedTarball_update_autoconf_configs in order to recognize iOSTor Lillqvist
Change-Id: I0c8eafc15c3582f64989ed3eedc28e746713df01
2018-11-13hunspell: no need for autoreconf when not patching configureChristian Lohmaier
Also fix some bitrot... The LIBS statement was only active for the autoreconf call, while where it would have mattered is the configure call itself. Since it was built wihout those for all the time, delete it. also no need for explicit shell call, as it is by default executed in a shell. also fix missing comma in if statement for ENABLE_OPTIMIZED. Change-Id: I7ced587bcc3488f19100e89b5b02730b9dd86d5f Reviewed-on: https://gerrit.libreoffice.org/63329 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2018-11-12bump hunspell to 1.7libreoffice-6-2-branch-pointLászló Németh
Change-Id: Ia8d1f4831e651b3a8d5115f78e5a5239b56c71c4 Reviewed-on: https://gerrit.libreoffice.org/63015 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-11-01gbuild: rename value OS=IOS to OS=iOSMichael Stahl
This gets rid of the horrible hack in gbuild.mk to accomodate the case-incorrect iOS platform makefiles that cannot be renamed without upsetting git on file systems that sadly lack the case sensitivity feature. Keep the macro defined to IOS though. Change-Id: I1022bfef4900da00e75fc1ccce786b20f8673234 Reviewed-on: https://gerrit.libreoffice.org/62705 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2018-10-25Fix external/hunspell/0001-recent-Hunspell-fixes-for-suggestion-spelling-...Stephan Bergmann
...introduced with b691e5824a6346d2fe7f702b5280b56532a2f89e "tdf#118162 spell checking: fix freezing and add missing OCONV", leaving HunspellImpl::suggest_internal's newly introduced out-parameters uninitialized when the function returns early, causing HunspellImpl::suggest to use capwords uninitialized, as seen when invoking spell-checking in LO built with UBSan: > hunspell.cxx:907:7: runtime error: load of value 160, which is not a valid value for type 'bool' > #0 in HunspellImpl::suggest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/hunspell/src/hunspell/hunspell.cxx:907:7 (instdir/program/../program/libspelllo.so +0x288ccd) > #1 in Hunspell::suggest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/hunspell/src/hunspell/hunspell.cxx:888:18 (instdir/program/../program/libspelllo.so +0x288693) > #2 in SpellChecker::GetProposals(rtl::OUString const&, com::sun::star::lang::Locale const&) at lingucomponent/source/spellcheck/spell/sspellimp.cxx:467:56 (instdir/program/../program/libspelllo.so +0x202913) > #3 in SpellChecker::spell(rtl::OUString const&, com::sun::star::lang::Locale const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lingucomponent/source/spellcheck/spell/sspellimp.cxx:520:17 (instdir/program/../program/libspelllo.so +0x203b84) > #4 in non-virtual thunk to SpellChecker::spell(rtl::OUString const&, com::sun::star::lang::Locale const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lingucomponent/source/spellcheck/spell/sspellimp.cxx (instdir/program/../program/libspelllo.so +0x203e62) > #5 in SpellCheckerDispatcher::spell_Impl(rtl::OUString const&, o3tl::strong_int<unsigned short, LanguageTypeTag>, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at linguistic/source/spelldsp.cxx:484:44 (instdir/program/liblnglo.so +0x672505) > #6 in SpellCheckerDispatcher::spell(rtl::OUString const&, com::sun::star::lang::Locale const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at linguistic/source/spelldsp.cxx:227:12 (instdir/program/liblnglo.so +0x670040) > #7 in SpellCheckerDispatcher::spell(rtl::OUString const&, short, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at linguistic/source/spelldsp.cxx:768:12 (instdir/program/liblnglo.so +0x67b353) > #8 in non-virtual thunk to SpellCheckerDispatcher::spell(rtl::OUString const&, short, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at linguistic/source/spelldsp.cxx (instdir/program/liblnglo.so +0x67b538) > #9 in Thesaurus::queryMeanings(rtl::OUString const&, com::sun::star::lang::Locale const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lingucomponent/source/thesaurus/libnth/nthesimp.cxx:433:27 (instdir/program/../program/liblnthlo.so +0x88315) > #10 in non-virtual thunk to Thesaurus::queryMeanings(rtl::OUString const&, com::sun::star::lang::Locale const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lingucomponent/source/thesaurus/libnth/nthesimp.cxx (instdir/program/../program/liblnthlo.so +0x8a322) > #11 in ThesaurusDispatcher::queryMeanings(rtl::OUString const&, com::sun::star::lang::Locale const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at linguistic/source/thesdsp.cxx:181:40 (instdir/program/liblnglo.so +0x6b6fa5) > #12 in non-virtual thunk to ThesaurusDispatcher::queryMeanings(rtl::OUString const&, com::sun::star::lang::Locale const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at linguistic/source/thesdsp.cxx (instdir/program/liblnglo.so +0x6b7ca2) > #13 in ThesaurusMenuController::getMeanings(std::__debug::vector<rtl::OUString, std::allocator<rtl::OUString> >&, rtl::OUString const&, com::sun::star::lang::Locale const&, unsigned long) at framework/source/uielement/thesaurusmenucontroller.cxx:117:31 (instdir/program/../program/libfwklo.so +0x1be1a9a) > #14 in ThesaurusMenuController::fillPopupMenu() at framework/source/uielement/thesaurusmenucontroller.cxx:75:5 (instdir/program/../program/libfwklo.so +0x1bdf973) > #15 in ThesaurusMenuController::statusChanged(com::sun::star::frame::FeatureStateEvent const&) at framework/source/uielement/thesaurusmenucontroller.cxx:63:9 (instdir/program/../program/libfwklo.so +0x1bdf24d) > #16 in SfxDispatchController_Impl::addStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&, com::sun::star::util::URL const&) at sfx2/source/control/unoctitm.cxx:861:16 (instdir/program/libsfxlo.so +0x2b6851f) > #17 in SfxOfficeDispatch::addStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&, com::sun::star::util::URL const&) at sfx2/source/control/unoctitm.cxx:249:16 (instdir/program/libsfxlo.so +0x2b671d4) > #18 in svt::PopupMenuControllerBase::updateCommand(rtl::OUString const&) at svtools/source/uno/popupmenucontrollerbase.cxx:189:20 (instdir/program/libsvtlo.so +0x2b0ef9e) > #19 in svt::PopupMenuControllerBase::updatePopupMenu() at svtools/source/uno/popupmenucontrollerbase.cxx:173:5 (instdir/program/libsvtlo.so +0x2b0e66f) > #20 in svt::PopupMenuControllerBase::setPopupMenu(com::sun::star::uno::Reference<com::sun::star::awt::XPopupMenu> const&) at svtools/source/uno/popupmenucontrollerbase.cxx:357:5 (instdir/program/libsvtlo.so +0x2b13e92) > #21 in framework::MenuBarManager::CreatePopupMenuController(framework::MenuBarManager::MenuItemHandler*) at framework/source/uielement/menubarmanager.cxx:984:31 (instdir/program/../program/libfwklo.so +0x1a9ff7e) > #22 in framework::MenuBarManager::Activate(Menu*) at framework/source/uielement/menubarmanager.cxx:737:50 (instdir/program/../program/libfwklo.so +0x1a94daa) > #23 in framework::MenuBarManager::LinkStubActivate(void*, Menu*) at framework/source/uielement/menubarmanager.cxx:605:1 (instdir/program/../program/libfwklo.so +0x1a8f150) > #24 in Link<Menu*, bool>::Call(Menu*) const at include/tools/link.hxx:84:45 (instdir/program/libvcllo.so +0x3bda2ae) > #25 in Menu::Activate() at vcl/source/window/menu.cxx:269:28 (instdir/program/libvcllo.so +0x3b75b01) > #26 in PopupMenu::ImplExecute(VclPtr<vcl::Window> const&, tools::Rectangle const&, FloatWinPopupFlags, Menu*, bool) at vcl/source/window/menu.cxx:2849:5 (instdir/program/libvcllo.so +0x3bcc12e) > #27 in PopupMenu::Execute(vcl::Window*, tools::Rectangle const&, PopupMenuFlags) at vcl/source/window/menu.cxx:2788:12 (instdir/program/libvcllo.so +0x3bc95d6) > #28 in PopupMenu::Execute(vcl::Window*, Point const&) at vcl/source/window/menu.cxx:2763:12 (instdir/program/libvcllo.so +0x3bc8c20) > #29 in SfxDispatcher::ExecutePopup(rtl::OUString const&, vcl::Window*, Point const*) at sfx2/source/control/dispatch.cxx:1857:23 (instdir/program/libsfxlo.so +0x27980ec) > #30 in SfxDispatcher::ExecutePopup(vcl::Window*, Point const*) at sfx2/source/control/dispatch.cxx:1806:19 (instdir/program/libsfxlo.so +0x279500f) > #31 in SwEditWin::Command(CommandEvent const&) at sw/source/uibase/docvw/edtwin.cxx:5224:25 (instdir/program/../program/libswlo.so +0xd546dd0) > #32 in ImplCallCommand(VclPtr<vcl::Window> const&, CommandEventId, void const*, bool, Point const*) at vcl/source/window/winproc.cxx:228:17 (instdir/program/libvcllo.so +0x4283a3c) > #33 in ImplHandleMouseEvent(VclPtr<vcl::Window> const&, MouseNotifyEvent, bool, long, long, unsigned long, unsigned short, MouseEventModifiers) at vcl/source/window/winproc.cxx:792:34 (instdir/program/libvcllo.so +0x427e12e) > #34 in ImplHandleSalMouseButtonDown(vcl::Window*, SalMouseEvent const*) at vcl/source/window/winproc.cxx:1982:12 (instdir/program/libvcllo.so +0x429c206) > #35 in ImplWindowFrameProc(vcl::Window*, SalEvent, void const*) at vcl/source/window/winproc.cxx:2316:20 (instdir/program/libvcllo.so +0x4296785) > #36 in SalFrame::CallCallback(SalEvent, void const*) const at vcl/inc/salframe.hxx:280:29 (instdir/program/libvclplug_gtk3lo.so +0xb9badd) > #37 in GtkSalFrame::CallCallbackExc(SalEvent, void const*) const at vcl/unx/gtk3/gtk3gtkframe.cxx:4477:16 (instdir/program/libvclplug_gtk3lo.so +0xb139f3) > #38 in GtkSalFrame::signalButton(_GtkWidget*, _GdkEventButton*, void*) at vcl/unx/gtk3/gtk3gtkframe.cxx:2690:16 (instdir/program/libvclplug_gtk3lo.so +0xb2f96e) > #39 in _gtk_marshal_BOOLEAN__BOXED at /usr/src/debug/gtk3-3.24.1-1.fc29.x86_64/gtk/gtkmarshalers.c:83:14 (/lib64/libgtk-3.so.0 +0x3e16fa) [...] Change-Id: I613bf37ded8c525301297d96e0d33826c9a48215 Reviewed-on: https://gerrit.libreoffice.org/62345 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: Jenkins
2018-06-25fix hunspell build break for non-cxx11 caseChristian Lohmaier
Change-Id: I3da985f87c5e345ca1c11c54a1f6219bf8a54c70 Reviewed-on: https://gerrit.libreoffice.org/56393 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-06-24tdf#118162 spell checking: fix freezing and add missing OCONVLászló Németh
conversion, also other smaller fixes of spelling, suggestion and morphological analysis using recent Hunspell commits. Several second or more freezing was occured with Hunspell dictionaries with compound word handling, because of (1) combinatorical explosion of overlapping word parts, or (2) unlimited suggestion algorithms (for example MAP) and (3) multiple suggestion search for a capitalized, mixed case or abbreviated long word. Change-Id: I73e196f907e9b73dcd981d275cedb33878a554f6 Reviewed-on: https://gerrit.libreoffice.org/55965 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-04-03tdf#116586 fix LibreOffice crash by Hungarian personal dictionaryLászló Németh
"AkH. 11. (old orthography)", caused by bad handling of forbidden words of alias compressed dictionaries during run-time dictionary extension. Note: accepting also all – previously forbidden – affixed forms of the modified stem is a removed function: "Grammar by" spell checking (for example, in LibreOffice via SPELLML interface of Hunspell) supports user words with affixation and compounding. The original idea was to add substandard or interfering words as forbidden words – but with flags – to the dictionary, and adding the stem to the personal dictionary could “switch on” the affixed forms of the word, too. Now the suggested method is using "Grammar by" personal dictionaries, as in LibreOffice: https://wiki.documentfoundation.org/ReleaseNotes/6.0#.E2.80.9CGrammar_By.E2.80.9D_spell_checking Change-Id: I8160d3f49a73cb2481d51c336115b6c27e7c9f1d Reviewed-on: https://gerrit.libreoffice.org/51844 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2017-12-14Add recent Hunspell fixes and improvementsLászló Németh
from Hunspell repository to give better spell checking and suggestions. Short Hunspell commit descriptions (complete commit descriptions are in the committed Hunspell patch): 4a8921b BREAK tries to break at the second word break 957950b Spelling dictionary should be a real spelling dictionary 0b8a4d8 Use only middle replentries for compound word checking 4e4106f Reduce strange ngram suggestions 89a8ec6 Optimize condition order in walk_hashtable loop e80685c Remove SUBSTANDARD dictionary roots from suggestions. 90cb55f Clean-up ngram suggestions for lowercase words bbf2eb4 word pairs of the dic file get highest suggestion priority 0667049 check dictionary word pairs to filter compound word overgeneration ebdd308 clean-up suggestion 526f600 skip empty ph: field and support character stripping eb97eb7 Dictionary words with COMPOUNDFORBIDFLAG are removed 8912f2a Allow suggestion search for prefix + *two suffixes* caa24d6 Improve ph: usage for capitalization and Unicode 05082b4 BREAK: keep also break-at-first-break-point breaking db142a3 Fix regression in Hungarian "moving rule" 711466a fix compiler warnings 7ba5beb Support dictionary based REP replacements Change-Id: I7f7202acf2dccec05ef9c542362b432aa8566a86 Reviewed-on: https://gerrit.libreoffice.org/45918 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2017-11-17apply patch for run-time Hunspell dictionary extensionLászló Németh
to use in new "Affixation/Compounding By" feature of language-specific LibreOffice user dictionaries. Change-Id: Icb4181717f0ff1145ac5acc130266b165132cfe9 Reviewed-on: https://gerrit.libreoffice.org/44561 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org>
2017-11-06fix spell checking issues using recent Hunspell patchesLászló Németh
Test: English word "Ian" are "item" are not allowed as "İan", "İtem" now. Patch list with commit ids in Hunspell repository: commit 66badb7449c2053c89456f11a7f71f3f5916b550 Extend dotless i and dotted I rules to Crimean Tatar language commit 88cf975c295e3ec808efb77bb1a2a031d77f0c89 Allow dotted I in dictionary, and disable bad capitalization commit 39b785a6b03b35cc8a27f43f6005dcaa432694e1 FORBIDDENWORD precedes BREAK commit 0f691abe68788d0a58e72ab66877a9f670cd2741 Remove forbidden words from dash suggestion list commit 15b2cde4f01706f0a648518a5cfc57394d015448 tdf#95024 fix compound handling for new Hungarian orthography commit de3ae6844af62300e473f7b7b66a56e54153b4b9 fix compound word part "pa:" Change-Id: Id12b5629b0c975464072b5b144743cbe40fe45a3 Reviewed-on: https://gerrit.libreoffice.org/44200 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2017-09-21bump hunspell to 1.6.2Caolán McNamara
Change-Id: I91d4d58f2b8ba69067de1d08476a8cebbb780535 Reviewed-on: https://gerrit.libreoffice.org/42555 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-06-22--enable-optimized should be orthogonal to --enable-debug/--enable-dbgutilStephan Bergmann
Change-Id: I277f30129560ea9fa76d6439a60bb191358df99d Reviewed-on: https://gerrit.libreoffice.org/39088 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2017-06-12iOS, update hunspell "revert commit" patchjan Iversen
Added support for arm64, by modifying the patch that reverts an earlier commit. Change-Id: If0d1920c1a91b3ad44c4ae9c299270b7806db811
2017-06-07Remove gb_LinkTarget_add_generated_cxxobjectsStephan Bergmann
...in favor of gb_LinkTarget_add_generated_exception_objects. The former would have needed any flags to be passed in explicitly (but no call sites did), so e.g. StaticLibrary_graphite didn't have any debug information (when building with --enable-debug). I guess there is no downside to having C++ exception support enabled in these places, and using _add_generated_cxxobjects instead was likely an oversight in the first place (at least in the case of external/graphite/StaticLibrary_graphite.mk, it was that way ever since 1ceb47d96da9e7977c96241f49ad291ff0466970 "graphite: convert to gbuild", but for no apparent reason). Change-Id: I9986a6c5ec30a521095dbe5315e5ca649741a790
2017-03-24tdf#106751 fix regressions in Hungarian spell checkingLászló Németh
using recent fixes of Hunspell code base Change-Id: I180a2ecba924180419c5eb1a0e78b5c84e7242c4 Reviewed-on: https://gerrit.libreoffice.org/35665 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org>
2017-02-12use alternative optimizations for buffer creation bottleneckCaolán McNamara
Change-Id: I9f29e8d3e5e97fe403a3e0d7d03c6ac01c7689c4
2017-02-12Resolves: tdf#105426 helpful to actually let the compiler optimize hunspellCaolán McNamara
*facepalm* Change-Id: I5f6d6cb94e1a80d2d7ae96900517aae3c8f39f08 Reviewed-on: https://gerrit.libreoffice.org/34176 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-02-10Remove MinGW supportStephan Bergmann
In OOo times, there'd originally been efforts to allow building on Windows with MinGW. Later, in LO times, this has been shifted to an attempt of cross- compiling for Windows on Linux. That attempt can be considered abandoned, and the relevant code rotting. Due to this heritage, there are now three kinds of MinGW-specific code in LO: * Code from the original OOo native Windows effort that is no longer relevant for the LO cross-compilation effort, but has never been removed properly. * Code from the original OOo native Windows effort that is re-purposed for the LO cross-compilation effort. * Code that has been added specifially for the LO cross-compilation effort. All three kinds of code are removed. (An unrelated, remaining use of MinGW is for --enable-build-unowinreg, utilizing --with-mingw-cross-compiler, MINGWCXX, and MINGWSTRIP.) Change-Id: I49daad8669b4cbe49fa923050c4a4a6ff7dda568 Reviewed-on: https://gerrit.libreoffice.org/34127 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-01-24just build the hunspell lib, not the restCaolán McNamara
might hack around link failures of the hunspell tools under arm Change-Id: Ib5db702c2898e909e2bb91f4c4bc6b91bd08f47b
2017-01-24Related: tdf#105426 upgrade to hunspell-1.6.0Caolán McNamara
Change-Id: I275222d1a7d78cbfb1ca046562fc8a3c314b0fae Reviewed-on: https://gerrit.libreoffice.org/33454 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-12-22build hunspell with _GLIBCXX_DEBUGCaolán McNamara
Change-Id: Ida2ce221f1e35afd946545c2a36b72dd2386e7dd
2016-12-21external/hunspell: Work around -Werror,-Wundef with clang-clStephan Bergmann
...when lingucomponent/source/spellcheck/spell/sspellimp.cxx includes hunspell.hxx Change-Id: Ibb4b2901a9dfbf7e145281bedeaa9d8daf79aba5
2016-12-14update to latest hunspell 1-5 releaseCaolán McNamara
Change-Id: Ifb412506f2e36878d44d0e4f6360ae8d070ffa15 Reviewed-on: https://gerrit.libreoffice.org/28488 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-05-03bump to hunspell 1.4.1Caolán McNamara
Change-Id: I20d9abfd73586daf1ed99f0e1a2481840e61f90e
2016-04-18try next hunspell 1.4.0 prerelease milestoneCaolán McNamara
try using reverse iterators here then and remove dictmgr which we don't seem to use or need Change-Id: I981fccc4ca7562d5ab707dc2f605e409169dec07
2016-04-15hunspell: MSVC debug runtime iterators don't want to decrement past begin()Michael Stahl
Change-Id: I258dc551d14ba72113b284be3566ba924434ab4c
2016-04-15test pre 1.4.0 hunspellCaolán McNamara
Change-Id: Ied87b41ec02b993fd08ac13f325b9489b6f07456
2016-04-07external/hunspell: -fsanitize=shiftStephan Bergmann
Change-Id: Ifc78a8f1a0a6fa29ef9becc5432e581f42241467