Index: third_party/hunspell/google.patch |
diff --git a/third_party/hunspell/google.patch b/third_party/hunspell/google.patch |
index 8ec79ce1d25c2cdc81a027e478347f9b2b36b083..117587b4b4371294d2eb7a528320f1dbc4051fa6 100644 |
--- a/third_party/hunspell/google.patch |
+++ b/third_party/hunspell/google.patch |
@@ -1,7 +1,7 @@ |
-diff --git a/third_party/hunspell/src/hunspell/affixmgr.cxx b/third_party/hunspell/src/hunspell/affixmgr.cxx |
-index cc9e69b..d31944e 100644 |
---- a/third_party/hunspell/src/hunspell/affixmgr.cxx |
-+++ b/third_party/hunspell/src/hunspell/affixmgr.cxx |
+diff --git a/src/hunspell/affixmgr.cxx b/src/hunspell/affixmgr.cxx |
+index 658a8aa..2ece1cd 100644 |
+--- a/src/hunspell/affixmgr.cxx |
++++ b/src/hunspell/affixmgr.cxx |
@@ -87,11 +87,19 @@ |
#include "csutil.hxx" |
@@ -193,10 +193,10 @@ index cc9e69b..d31944e 100644 |
break; |
} |
// piece 3 - is cross product indicator |
-diff --git a/third_party/hunspell/src/hunspell/affixmgr.hxx b/third_party/hunspell/src/hunspell/affixmgr.hxx |
-index c7d5a63..55acd6a 100644 |
---- a/third_party/hunspell/src/hunspell/affixmgr.hxx |
-+++ b/third_party/hunspell/src/hunspell/affixmgr.hxx |
+diff --git a/src/hunspell/affixmgr.hxx b/src/hunspell/affixmgr.hxx |
+index 83a4b42..162b475 100644 |
+--- a/src/hunspell/affixmgr.hxx |
++++ b/src/hunspell/affixmgr.hxx |
@@ -92,6 +92,40 @@ |
class PfxEntry; |
class SfxEntry; |
@@ -269,10 +269,10 @@ index c7d5a63..55acd6a 100644 |
int parse_file(const char* affpath, const char* key); |
bool parse_flag(const std::string& line, unsigned short* out, FileMgr* af); |
bool parse_num(const std::string& line, int* out, FileMgr* af); |
-diff --git a/third_party/hunspell/src/hunspell/filemgr.cxx b/third_party/hunspell/src/hunspell/filemgr.cxx |
+diff --git a/src/hunspell/filemgr.cxx b/src/hunspell/filemgr.cxx |
index b7c89b2..aef6dba 100644 |
---- a/third_party/hunspell/src/hunspell/filemgr.cxx |
-+++ b/third_party/hunspell/src/hunspell/filemgr.cxx |
+--- a/src/hunspell/filemgr.cxx |
++++ b/src/hunspell/filemgr.cxx |
@@ -78,6 +78,32 @@ |
#include "filemgr.hxx" |
#include "csutil.hxx" |
@@ -311,10 +311,10 @@ index b7c89b2..aef6dba 100644 |
return linenum; |
} |
+#endif |
-diff --git a/third_party/hunspell/src/hunspell/filemgr.hxx b/third_party/hunspell/src/hunspell/filemgr.hxx |
-index ca51faf..daa6d0b 100644 |
---- a/third_party/hunspell/src/hunspell/filemgr.hxx |
-+++ b/third_party/hunspell/src/hunspell/filemgr.hxx |
+diff --git a/src/hunspell/filemgr.hxx b/src/hunspell/filemgr.hxx |
+index 991e924..65fae23 100644 |
+--- a/src/hunspell/filemgr.hxx |
++++ b/src/hunspell/filemgr.hxx |
@@ -80,6 +80,30 @@ |
#include <string> |
#include <fstream> |
@@ -351,10 +351,10 @@ index ca51faf..daa6d0b 100644 |
}; |
#endif |
+#endif |
-diff --git a/third_party/hunspell/src/hunspell/hashmgr.cxx b/third_party/hunspell/src/hunspell/hashmgr.cxx |
-index 072bc1a..b07c585 100644 |
---- a/third_party/hunspell/src/hunspell/hashmgr.cxx |
-+++ b/third_party/hunspell/src/hunspell/hashmgr.cxx |
+diff --git a/src/hunspell/hashmgr.cxx b/src/hunspell/hashmgr.cxx |
+index 1de1690..770fac1 100644 |
+--- a/src/hunspell/hashmgr.cxx |
++++ b/src/hunspell/hashmgr.cxx |
@@ -84,8 +84,14 @@ |
// build a hash table from a munched word list |
@@ -386,7 +386,7 @@ index 072bc1a..b07c585 100644 |
if (ec) { |
/* error condition - what should we do here */ |
HUNSPELL_WARNING(stderr, "Hash Manager Error : %d\n", ec); |
-@@ -156,14 +168,57 @@ HashMgr::~HashMgr() { |
+@@ -158,14 +170,57 @@ HashMgr::~HashMgr() { |
#endif |
#endif |
@@ -444,7 +444,7 @@ index 072bc1a..b07c585 100644 |
struct hentry* dp; |
if (tableptr) { |
dp = tableptr[hash(word)]; |
-@@ -175,6 +230,7 @@ struct hentry* HashMgr::lookup(const char* word) const { |
+@@ -177,6 +232,7 @@ struct hentry* HashMgr::lookup(const char* word) const { |
} |
} |
return NULL; |
@@ -452,7 +452,7 @@ index 072bc1a..b07c585 100644 |
} |
// add a word to the hash table (private) |
-@@ -184,6 +240,8 @@ int HashMgr::add_word(const std::string& in_word, |
+@@ -186,6 +242,8 @@ int HashMgr::add_word(const std::string& in_word, |
int al, |
const std::string* in_desc, |
bool onlyupcase) { |
@@ -461,7 +461,7 @@ index 072bc1a..b07c585 100644 |
const std::string* word = &in_word; |
const std::string* desc = in_desc; |
-@@ -316,6 +374,17 @@ int HashMgr::add_word(const std::string& in_word, |
+@@ -318,6 +376,17 @@ int HashMgr::add_word(const std::string& in_word, |
delete desc_copy; |
delete word_copy; |
@@ -479,7 +479,7 @@ index 072bc1a..b07c585 100644 |
return 0; |
} |
-@@ -376,6 +445,12 @@ int HashMgr::get_clen_and_captype(const std::string& word, int* captype) { |
+@@ -378,6 +447,12 @@ int HashMgr::get_clen_and_captype(const std::string& word, int* captype) { |
// remove word (personal dictionary function for standalone applications) |
int HashMgr::remove(const std::string& word) { |
@@ -492,7 +492,7 @@ index 072bc1a..b07c585 100644 |
struct hentry* dp = lookup(word.c_str()); |
while (dp) { |
if (dp->alen == 0 || !TESTAFF(dp->astr, forbiddenword, dp->alen)) { |
-@@ -392,6 +467,7 @@ int HashMgr::remove(const std::string& word) { |
+@@ -395,6 +470,7 @@ int HashMgr::remove(const std::string& word) { |
} |
dp = dp->next_homonym; |
} |
@@ -500,7 +500,7 @@ index 072bc1a..b07c585 100644 |
return 0; |
} |
-@@ -465,6 +541,44 @@ int HashMgr::add_with_affix(const std::string& word, const std::string& example) |
+@@ -469,6 +545,44 @@ int HashMgr::add_with_affix(const std::string& word, const std::string& example) |
// walk the hash table entry by entry - null at end |
// initialize: col=-1; hp = NULL; hp = walk_hashtable(&col, hp); |
struct hentry* HashMgr::walk_hashtable(int& col, struct hentry* hp) const { |
@@ -545,7 +545,7 @@ index 072bc1a..b07c585 100644 |
if (hp && hp->next != NULL) |
return hp->next; |
for (col++; col < tablesize; col++) { |
-@@ -474,10 +588,12 @@ struct hentry* HashMgr::walk_hashtable(int& col, struct hentry* hp) const { |
+@@ -478,10 +592,12 @@ struct hentry* HashMgr::walk_hashtable(int& col, struct hentry* hp) const { |
// null at end and reset to start |
col = -1; |
return NULL; |
@@ -558,7 +558,7 @@ index 072bc1a..b07c585 100644 |
// open dictionary file |
FileMgr* dict = new FileMgr(tpath, key); |
if (dict == NULL) |
-@@ -606,12 +722,16 @@ int HashMgr::load_tables(const char* tpath, const char* key) { |
+@@ -610,12 +726,16 @@ int HashMgr::load_tables(const char* tpath, const char* key) { |
} |
delete dict; |
@@ -575,7 +575,7 @@ index 072bc1a..b07c585 100644 |
unsigned long hv = 0; |
for (int i = 0; i < 4 && *word != 0; i++) |
hv = (hv << 8) | (*word++); |
-@@ -620,6 +740,7 @@ int HashMgr::hash(const char* word) const { |
+@@ -624,6 +744,7 @@ int HashMgr::hash(const char* word) const { |
hv ^= (*word++); |
} |
return (unsigned long)hv % tablesize; |
@@ -583,7 +583,7 @@ index 072bc1a..b07c585 100644 |
} |
int HashMgr::decode_flags(unsigned short** result, const std::string& flags, FileMgr* af) const { |
-@@ -829,7 +950,12 @@ int HashMgr::load_config(const char* affpath, const char* key) { |
+@@ -833,7 +954,12 @@ int HashMgr::load_config(const char* affpath, const char* key) { |
int firstline = 1; |
// open the affix file |
@@ -596,7 +596,7 @@ index 072bc1a..b07c585 100644 |
if (!afflst) { |
HUNSPELL_WARNING( |
stderr, "Error - could not open affix description file %s\n", affpath); |
-@@ -1058,6 +1184,122 @@ bool HashMgr::parse_aliasf(const std::string& line, FileMgr* af) { |
+@@ -1062,6 +1188,122 @@ bool HashMgr::parse_aliasf(const std::string& line, FileMgr* af) { |
return true; |
} |
@@ -719,10 +719,10 @@ index 072bc1a..b07c585 100644 |
int HashMgr::is_aliasf() const { |
return (aliasf != NULL); |
} |
-diff --git a/third_party/hunspell/src/hunspell/hashmgr.hxx b/third_party/hunspell/src/hunspell/hashmgr.hxx |
-index a158a16..9714a90 100644 |
---- a/third_party/hunspell/src/hunspell/hashmgr.hxx |
-+++ b/third_party/hunspell/src/hunspell/hashmgr.hxx |
+diff --git a/src/hunspell/hashmgr.hxx b/src/hunspell/hashmgr.hxx |
+index 812171a..af27d6c 100644 |
+--- a/src/hunspell/hashmgr.hxx |
++++ b/src/hunspell/hashmgr.hxx |
@@ -82,9 +82,23 @@ |
#include "filemgr.hxx" |
#include "w_char.hxx" |
@@ -812,13 +812,13 @@ index a158a16..9714a90 100644 |
int add_hidden_capitalized_word(const std::string& word, |
int wcl, |
unsigned short* flags, |
-diff --git a/third_party/hunspell/src/hunspell/htypes.hxx b/third_party/hunspell/src/hunspell/htypes.hxx |
-index d244394..05ef6af 100644 |
---- a/third_party/hunspell/src/hunspell/htypes.hxx |
-+++ b/third_party/hunspell/src/hunspell/htypes.hxx |
+diff --git a/src/hunspell/htypes.hxx b/src/hunspell/htypes.hxx |
+index 1e6c118..c3aa2be 100644 |
+--- a/src/hunspell/htypes.hxx |
++++ b/src/hunspell/htypes.hxx |
@@ -41,6 +41,16 @@ |
- #ifndef _HTYPES_HXX_ |
- #define _HTYPES_HXX_ |
+ #ifndef HTYPES_HXX_ |
+ #define HTYPES_HXX_ |
+#ifdef HUNSPELL_CHROME_CLIENT |
+// This is a workaround for preventing errors in parsing Turkish BDICs, which |
@@ -833,10 +833,10 @@ index d244394..05ef6af 100644 |
#define ROTATE_LEN 5 |
#define ROTATE(v, q) \ |
-diff --git a/third_party/hunspell/src/hunspell/hunspell.cxx b/third_party/hunspell/src/hunspell/hunspell.cxx |
-index 114570f..1110ee0 100644 |
---- a/third_party/hunspell/src/hunspell/hunspell.cxx |
-+++ b/third_party/hunspell/src/hunspell/hunspell.cxx |
+diff --git a/src/hunspell/hunspell.cxx b/src/hunspell/hunspell.cxx |
+index abcdb8f..c8c5cf4 100644 |
+--- a/src/hunspell/hunspell.cxx |
++++ b/src/hunspell/hunspell.cxx |
@@ -79,6 +79,9 @@ |
#include "hunspell.hxx" |
#include "suggestmgr.hxx" |
@@ -863,7 +863,7 @@ index 114570f..1110ee0 100644 |
std::vector<std::string> suffix_suggest(const std::string& root_word); |
std::vector<std::string> generate(const std::string& word, const std::vector<std::string>& pl); |
std::vector<std::string> generate(const std::string& word, const std::string& pattern); |
-@@ -115,7 +124,9 @@ private: |
+@@ -116,7 +125,9 @@ private: |
AffixMgr* pAMgr; |
std::vector<HashMgr*> m_HMgrs; |
SuggestMgr* pSMgr; |
@@ -873,7 +873,7 @@ index 114570f..1110ee0 100644 |
std::string encoding; |
struct cs_info* csconv; |
int langnum; |
-@@ -123,6 +134,11 @@ private: |
+@@ -124,6 +135,11 @@ private: |
int complexprefixes; |
std::vector<std::string> wordbreak; |
@@ -885,7 +885,7 @@ index 114570f..1110ee0 100644 |
private: |
void cleanword(std::string& dest, const std::string&, int* pcaptype, int* pabbrev); |
size_t cleanword2(std::string& dest, |
-@@ -152,22 +168,43 @@ private: |
+@@ -153,22 +169,43 @@ private: |
HunspellImpl& operator=(const HunspellImpl&); |
}; |
@@ -929,8 +929,8 @@ index 114570f..1110ee0 100644 |
/* get the preferred try string and the dictionary */ |
/* encoding from the Affix Manager for that dictionary */ |
-@@ -181,7 +218,11 @@ HunspellImpl::HunspellImpl(const char* affpath, const char* dpath, const char* k |
- wordbreak = pAMgr->get_breaktable(); |
+@@ -185,7 +222,11 @@ HunspellImpl::HunspellImpl(const char* affpath, const char* dpath, const char* k |
+ strcpy(&dic_encoding_vec[0], encoding.c_str()); |
/* and finally set up the suggestion manager */ |
+#ifdef HUNSPELL_CHROME_CLIENT |
@@ -941,7 +941,7 @@ index 114570f..1110ee0 100644 |
if (try_string) |
free(try_string); |
} |
-@@ -201,11 +242,17 @@ HunspellImpl::~HunspellImpl() { |
+@@ -205,11 +246,17 @@ HunspellImpl::~HunspellImpl() { |
delete[] csconv; |
#endif |
csconv = NULL; |
@@ -959,7 +959,7 @@ index 114570f..1110ee0 100644 |
// load extra dictionaries |
int Hunspell::add_dic(const char* dpath, const char* key) { |
return m_Impl->add_dic(dpath, key); |
-@@ -218,6 +265,7 @@ int HunspellImpl::add_dic(const char* dpath, const char* key) { |
+@@ -222,6 +269,7 @@ int HunspellImpl::add_dic(const char* dpath, const char* key) { |
m_HMgrs.push_back(new HashMgr(dpath, affixpath, key)); |
return 0; |
} |
@@ -967,7 +967,7 @@ index 114570f..1110ee0 100644 |
// make a copy of src at destination while removing all leading |
// blanks and removing any trailing periods after recording |
-@@ -411,6 +459,9 @@ bool Hunspell::spell(const std::string& word, int* info, std::string* root) { |
+@@ -415,6 +463,9 @@ bool Hunspell::spell(const std::string& word, int* info, std::string* root) { |
} |
bool HunspellImpl::spell(const std::string& word, int* info, std::string* root) { |
@@ -977,7 +977,7 @@ index 114570f..1110ee0 100644 |
struct hentry* rv = NULL; |
int info2 = 0; |
-@@ -717,6 +768,13 @@ struct hentry* HunspellImpl::checkword(const std::string& w, int* info, std::str |
+@@ -721,6 +772,13 @@ struct hentry* HunspellImpl::checkword(const std::string& w, int* info, std::str |
if (!len) |
return NULL; |
@@ -991,7 +991,7 @@ index 114570f..1110ee0 100644 |
// word reversing wrapper for complex prefixes |
if (complexprefixes) { |
if (!usebuffer) { |
-@@ -829,6 +887,9 @@ std::vector<std::string> Hunspell::suggest(const std::string& word) { |
+@@ -833,6 +891,9 @@ std::vector<std::string> Hunspell::suggest(const std::string& word) { |
} |
std::vector<std::string> HunspellImpl::suggest(const std::string& word) { |
@@ -1001,19 +1001,7 @@ index 114570f..1110ee0 100644 |
std::vector<std::string> slst; |
int onlycmpdsug = 0; |
-@@ -992,9 +1053,9 @@ std::vector<std::string> HunspellImpl::suggest(const std::string& word) { |
- w.append(slst[j].substr(pos + 1)); |
- (void)spell(w, &info, NULL); |
- if ((info & SPELL_COMPOUND) && (info & SPELL_FORBIDDEN)) { |
-- slst[pos] = ' '; |
-+ slst[j][pos] = ' '; |
- } else |
-- slst[pos] = '-'; |
-+ slst[j][pos] = '-'; |
- } |
- } |
- } |
-@@ -1845,22 +1906,32 @@ int Hunspell::generate(char*** slst, const char* word, const char* pattern) { |
+@@ -1875,22 +1936,32 @@ int Hunspell::generate(char*** slst, const char* word, const char* pattern) { |
} |
Hunhandle* Hunspell_create(const char* affpath, const char* dpath) { |
@@ -1046,11 +1034,11 @@ index 114570f..1110ee0 100644 |
int Hunspell_spell(Hunhandle* pHunspell, const char* word) { |
return reinterpret_cast<Hunspell*>(pHunspell)->spell(std::string(word)); |
-diff --git a/third_party/hunspell/src/hunspell/hunspell.hxx b/third_party/hunspell/src/hunspell/hunspell.hxx |
-index db25bae..251d58e 100644 |
---- a/third_party/hunspell/src/hunspell/hunspell.hxx |
-+++ b/third_party/hunspell/src/hunspell/hunspell.hxx |
-@@ -78,6 +78,10 @@ |
+diff --git a/src/hunspell/hunspell.hxx b/src/hunspell/hunspell.hxx |
+index 43af66b..a35df83 100644 |
+--- a/src/hunspell/hunspell.hxx |
++++ b/src/hunspell/hunspell.hxx |
+@@ -79,6 +79,10 @@ |
#include <string> |
#include <vector> |
@@ -1061,7 +1049,7 @@ index db25bae..251d58e 100644 |
#define SPELL_XML "<?xml?>" |
#define MAXSUGGESTION 15 |
-@@ -111,11 +115,17 @@ class LIBHUNSPELL_DLL_EXPORTED Hunspell { |
+@@ -115,11 +119,17 @@ class LIBHUNSPELL_DLL_EXPORTED Hunspell { |
* long path names (without the long path prefix Hunspell will use fopen() |
* with system-dependent character encoding instead of _wfopen()). |
*/ |
@@ -1079,10 +1067,10 @@ index db25bae..251d58e 100644 |
/* spell(word) - spellcheck word |
* output: false = bad word, true = good word |
-diff --git a/third_party/hunspell/src/hunspell/replist.cxx b/third_party/hunspell/src/hunspell/replist.cxx |
-index 8404947..3128420 100644 |
---- a/third_party/hunspell/src/hunspell/replist.cxx |
-+++ b/third_party/hunspell/src/hunspell/replist.cxx |
+diff --git a/src/hunspell/replist.cxx b/src/hunspell/replist.cxx |
+index 89d4caa..756dc03 100644 |
+--- a/src/hunspell/replist.cxx |
++++ b/src/hunspell/replist.cxx |
@@ -167,6 +167,7 @@ int RepList::add(const std::string& in_pat1, const std::string& pat2) { |
mystrrep(r->outstrings[type], "_", " "); |
dat[pos++] = r; |
@@ -1107,13 +1095,13 @@ index 8404947..3128420 100644 |
return 0; |
} |
-diff --git a/third_party/hunspell/src/hunspell/replist.hxx b/third_party/hunspell/src/hunspell/replist.hxx |
-index ccf29b5c..176ccec 100644 |
---- a/third_party/hunspell/src/hunspell/replist.hxx |
-+++ b/third_party/hunspell/src/hunspell/replist.hxx |
+diff --git a/src/hunspell/replist.hxx b/src/hunspell/replist.hxx |
+index 2f9d350..3afe005 100644 |
+--- a/src/hunspell/replist.hxx |
++++ b/src/hunspell/replist.hxx |
@@ -75,6 +75,12 @@ |
- #ifndef _REPLIST_HXX_ |
- #define _REPLIST_HXX_ |
+ #ifndef REPLIST_HXX_ |
+ #define REPLIST_HXX_ |
+#ifdef HUNSPELL_CHROME_CLIENT |
+// Compilation issues in spellchecker.cc think near is a macro, therefore |
@@ -1124,10 +1112,10 @@ index ccf29b5c..176ccec 100644 |
#include "w_char.hxx" |
#include <string> |
-diff --git a/third_party/hunspell/src/hunspell/suggestmgr.cxx b/third_party/hunspell/src/hunspell/suggestmgr.cxx |
-index 7a9dafa..55f99b6 100644 |
---- a/third_party/hunspell/src/hunspell/suggestmgr.cxx |
-+++ b/third_party/hunspell/src/hunspell/suggestmgr.cxx |
+diff --git a/src/hunspell/suggestmgr.cxx b/src/hunspell/suggestmgr.cxx |
+index b998341..4e122da 100644 |
+--- a/src/hunspell/suggestmgr.cxx |
++++ b/src/hunspell/suggestmgr.cxx |
@@ -82,7 +82,112 @@ |
const w_char W_VLINE = {'\0', '|'}; |
@@ -1281,7 +1269,22 @@ index 7a9dafa..55f99b6 100644 |
phonetable* ph = (pAMgr) ? pAMgr->get_phonetable() : NULL; |
std::string target; |
std::string candidate; |
-@@ -1109,7 +1233,11 @@ void SuggestMgr::ngsuggest(std::vector<std::string>& wlst, |
+@@ -1074,12 +1198,12 @@ void SuggestMgr::ngsuggest(std::vector<std::string>& wlst, |
+ u8_u16(w_word, word); |
+ u8_u16(w_target, target); |
+ } |
+- |
++ |
+ std::vector<w_char> w_entry; |
+ std::string f; |
+ std::vector<w_char> w_f; |
+ std::vector<w_char> w_target2; |
+- |
++ |
+ for (size_t i = 0; i < rHMgr.size(); ++i) { |
+ while (0 != (hp = rHMgr[i]->walk_hashtable(col, hp))) { |
+ if ((hp->astr) && (pAMgr) && |
+@@ -1143,7 +1267,11 @@ void SuggestMgr::ngsuggest(std::vector<std::string>& wlst, |
if (sc > scores[lp]) { |
scores[lp] = sc; |
@@ -1293,15 +1296,7 @@ index 7a9dafa..55f99b6 100644 |
lval = sc; |
for (int j = 0; j < MAX_ROOTS; j++) |
if (scores[j] < lval) { |
-@@ -1137,6 +1265,7 @@ void SuggestMgr::ngsuggest(std::vector<std::string>& wlst, |
- int thresh = 0; |
- for (int sp = 1; sp < 4; sp++) { |
- if (utf8) { |
-+ u8_u16(u8, word); |
- for (int k = sp; k < n; k += 4) { |
- u8[k].l = '*'; |
- u8[k].h = 0; |
-@@ -1968,8 +2097,8 @@ void SuggestMgr::lcs(const char* s, |
+@@ -2058,8 +2186,8 @@ void SuggestMgr::lcs(const char* s, |
m = strlen(s); |
n = strlen(s2); |
} |
@@ -1312,7 +1307,7 @@ index 7a9dafa..55f99b6 100644 |
if (!c || !b) { |
if (c) |
free(c); |
-@@ -1978,10 +2107,6 @@ void SuggestMgr::lcs(const char* s, |
+@@ -2068,10 +2196,6 @@ void SuggestMgr::lcs(const char* s, |
*result = NULL; |
return; |
} |
@@ -1323,10 +1318,10 @@ index 7a9dafa..55f99b6 100644 |
for (i = 1; i <= m; i++) { |
for (j = 1; j <= n; j++) { |
if (((utf8) && (su[i - 1] == su2[j - 1])) || |
-diff --git a/third_party/hunspell/src/hunspell/suggestmgr.hxx b/third_party/hunspell/src/hunspell/suggestmgr.hxx |
-index ee0322c..f940431 100644 |
---- a/third_party/hunspell/src/hunspell/suggestmgr.hxx |
-+++ b/third_party/hunspell/src/hunspell/suggestmgr.hxx |
+diff --git a/src/hunspell/suggestmgr.hxx b/src/hunspell/suggestmgr.hxx |
+index 6ba9dc8..0b80fac 100644 |
+--- a/src/hunspell/suggestmgr.hxx |
++++ b/src/hunspell/suggestmgr.hxx |
@@ -124,7 +124,11 @@ class SuggestMgr { |
int complexprefixes; |
@@ -1350,28 +1345,3 @@ index ee0322c..f940431 100644 |
void testsug(std::vector<std::string>& wlst, |
const std::string& candidate, |
int cpdsuggest, |
-diff --git a/third_party/hunspell/src/parsers/testparser.cxx b/third_party/hunspell/src/parsers/testparser.cxx |
-index 69f2cbc3..81db53a 100644 |
---- a/third_party/hunspell/src/parsers/testparser.cxx |
-+++ b/third_party/hunspell/src/parsers/testparser.cxx |
-@@ -14,15 +14,15 @@ |
- * The Original Code is Hunspell, based on MySpell. |
- * |
- * The Initial Developers of the Original Code are |
-- * Kevin Hendricks (MySpell) and Németh László (Hunspell). |
-+ * Kevin Hendricks (MySpell) and Németh László (Hunspell). |
- * Portions created by the Initial Developers are Copyright (C) 2002-2005 |
- * the Initial Developers. All Rights Reserved. |
- * |
- * Contributor(s): David Einstein, Davide Prina, Giuseppe Modugno, |
-- * Gianluca Turconi, Simon Brouwer, Noll János, Bíró Árpád, |
-- * Goldman Eleonóra, Sarlós Tamás, Bencsáth Boldizsár, Halácsy Péter, |
-- * Dvornik László, Gefferth András, Nagy Viktor, Varga Dániel, Chris Halls, |
-- * Rene Engelhard, Bram Moolenaar, Dafydd Jones, Harri Pitkänen |
-+ * Gianluca Turconi, Simon Brouwer, Noll János, BÃró Ãrpád, |
-+ * Goldman Eleonóra, Sarlós Tamás, Bencsáth Boldizsár, Halácsy Péter, |
-+ * Dvornik László, Gefferth András, Nagy Viktor, Varga Dániel, Chris Halls, |
-+ * Rene Engelhard, Bram Moolenaar, Dafydd Jones, Harri Pitkänen |
- * |
- * Alternatively, the contents of this file may be used under the terms of |
- * either the GNU General Public License Version 2 or later (the "GPL"), or |