| Index: chrome/third_party/hunspell/google.patch
|
| ===================================================================
|
| --- chrome/third_party/hunspell/google.patch (revision 21723)
|
| +++ chrome/third_party/hunspell/google.patch (working copy)
|
| @@ -1,212 +0,0 @@
|
| -Index: src/hunspell/affixmgr.cxx
|
| -===================================================================
|
| ---- src/hunspell/affixmgr.cxx (revision 3811)
|
| -+++ src/hunspell/affixmgr.cxx (working copy)
|
| -@@ -25,7 +27,7 @@
|
| - #endif
|
| - #endif
|
| -
|
| --AffixMgr::AffixMgr(const char * affpath, HashMgr* ptr)
|
| -+AffixMgr::AffixMgr(FILE* aff_handle, HashMgr* ptr)
|
| - {
|
| - // register hash manager and load affix data from aff file
|
| - pHMgr = ptr;
|
| -@@ -104,8 +106,8 @@
|
| - contclasses[j] = 0;
|
| - }
|
| -
|
| -- if (parse_file(affpath)) {
|
| -- HUNSPELL_WARNING(stderr, "Failure loading aff file %s\n",affpath);
|
| -+ if (parse_file(aff_handle)) {
|
| -+ HUNSPELL_WARNING(stderr, "Failure loading aff file\n");
|
| - wordchars = mystrdup("qwertzuiopasdfghjklyxcvbnmQWERTZUIOPASDFGHJKLYXCVBNM");
|
| - }
|
| -
|
| -@@ -232,7 +234,7 @@
|
| -
|
| -
|
| - // read in aff file and build up prefix and suffix entry objects
|
| --int AffixMgr::parse_file(const char * affpath)
|
| -+int AffixMgr::parse_file(FILE* aff_handle)
|
| - {
|
| -
|
| - // io buffers
|
| -@@ -250,11 +252,12 @@
|
| -
|
| - // open the affix file
|
| - FILE * afflst;
|
| -- afflst = fopen(affpath,"r");
|
| -+ afflst = _fdopen(_dup(_fileno(aff_handle)), "r");
|
| - if (!afflst) {
|
| -- HUNSPELL_WARNING(stderr, "error: could not open affix description file %s\n",affpath);
|
| -+ HUNSPELL_WARNING(stderr, "error: could not open affix description file\n");
|
| - return 1;
|
| - }
|
| -+ fseek(afflst, 0, SEEK_SET);
|
| -
|
| - // step one is to parse the affix file building up the internal
|
| - // affix data structures
|
| -Index: src/hunspell/affixmgr.hxx
|
| -===================================================================
|
| ---- src/hunspell/affixmgr.hxx (revision 3811)
|
| -+++ src/hunspell/affixmgr.hxx (working copy)
|
| -@@ -93,7 +93,7 @@
|
| -
|
| - public:
|
| -
|
| -- AffixMgr(const char * affpath, HashMgr * ptr);
|
| -+ AffixMgr(FILE* aff_handle, HashMgr * ptr);
|
| - ~AffixMgr();
|
| - struct hentry * affix_check(const char * word, int len,
|
| - const unsigned short needflag = (unsigned short) 0, char in_compound = IN_CPD_NOT);
|
| -@@ -179,7 +179,7 @@
|
| - int get_checksharps(void);
|
| -
|
| - private:
|
| -- int parse_file(const char * affpath);
|
| -+ int parse_file(FILE* aff_handle);
|
| - // int parse_string(char * line, char ** out, const char * name);
|
| - int parse_flag(char * line, unsigned short * out, const char * name);
|
| - int parse_num(char * line, int * out, const char * name);
|
| -Index: src/hunspell/hashmgr.cxx
|
| -===================================================================
|
| ---- src/hunspell/hashmgr.cxx (revision 3811)
|
| -+++ src/hunspell/hashmgr.cxx (working copy)
|
| -@@ -29,7 +31,7 @@
|
| -
|
| - // build a hash table from a munched word list
|
| -
|
| --HashMgr::HashMgr(const char * tpath, const char * apath)
|
| -+HashMgr::HashMgr(FILE* dic_handle, FILE* aff_handle)
|
| - {
|
| - tablesize = 0;
|
| - tableptr = NULL;
|
| -@@ -43,8 +45,8 @@
|
| - aliasf = NULL;
|
| - numaliasm = 0;
|
| - aliasm = NULL;
|
| -- load_config(apath);
|
| -- int ec = load_tables(tpath);
|
| -+ load_config(aff_handle);
|
| -+ int ec = load_tables(dic_handle);
|
| - if (ec) {
|
| - /* error condition - what should we do here */
|
| - HUNSPELL_WARNING(stderr, "Hash Manager Error : %d\n",ec);
|
| -@@ -240,7 +242,7 @@
|
| - }
|
| -
|
| - // load a munched word list and build a hash table on the fly
|
| --int HashMgr::load_tables(const char * tpath)
|
| -+int HashMgr::load_tables(FILE* t_handle)
|
| - {
|
| - int wl, al;
|
| - char * ap;
|
| -@@ -248,8 +250,9 @@
|
| - unsigned short * flags;
|
| -
|
| - // raw dictionary - munched file
|
| -- FILE * rawdict = fopen(tpath, "r");
|
| -+ FILE * rawdict = _fdopen(_dup(_fileno(t_handle)), "r");
|
| - if (rawdict == NULL) return 1;
|
| -+ fseek(rawdict, 0, SEEK_SET);
|
| -
|
| - // first read the first line of file to get hash table size */
|
| - char ts[MAXDELEN];
|
| -@@ -442,7 +445,7 @@
|
| - }
|
| -
|
| - // read in aff file and set flag mode
|
| --int HashMgr::load_config(const char * affpath)
|
| -+int HashMgr::load_config(FILE* aff_handle)
|
| - {
|
| - int firstline = 1;
|
| -
|
| -@@ -451,11 +454,12 @@
|
| -
|
| - // open the affix file
|
| - FILE * afflst;
|
| -- afflst = fopen(affpath,"r");
|
| -+ afflst = _fdopen(_dup(_fileno(aff_handle)), "r");
|
| - if (!afflst) {
|
| -- HUNSPELL_WARNING(stderr, "Error - could not open affix description file %s\n",affpath);
|
| -+ HUNSPELL_WARNING(stderr, "Error - could not open affix description file\n");
|
| - return 1;
|
| - }
|
| -+ fseek(afflst, 0, SEEK_SET);
|
| -
|
| - // read in each line ignoring any that do not
|
| - // start with a known line type indicator
|
| -Index: src/hunspell/hashmgr.hxx
|
| -===================================================================
|
| ---- src/hunspell/hashmgr.hxx (revision 3811)
|
| -+++ src/hunspell/hashmgr.hxx (working copy)
|
| -@@ -25,7 +25,7 @@
|
| -
|
| -
|
| - public:
|
| -- HashMgr(const char * tpath, const char * apath);
|
| -+ HashMgr(FILE* t_handle, FILE* a_handle);
|
| - ~HashMgr();
|
| -
|
| - struct hentry * lookup(const char *) const;
|
| -@@ -46,9 +46,9 @@
|
| -
|
| -
|
| - private:
|
| -- int load_tables(const char * tpath);
|
| -+ int load_tables(FILE* t_handle);
|
| - int add_word(const char * word, int wl, unsigned short * ap, int al, const char * desc);
|
| -- int load_config(const char * affpath);
|
| -+ int load_config(FILE* aff_handle);
|
| - int parse_aliasf(char * line, FILE * af);
|
| - #ifdef HUNSPELL_EXPERIMENTAL
|
| - int parse_aliasm(char * line, FILE * af);
|
| -Index: src/hunspell/hunspell.cxx
|
| -===================================================================
|
| ---- src/hunspell/hunspell.cxx (revision 3811)
|
| -+++ src/hunspell/hunspell.cxx (working copy)
|
| -@@ -20,7 +20,7 @@
|
| - #endif
|
| - #endif
|
| -
|
| --Hunspell::Hunspell(const char * affpath, const char * dpath)
|
| -+Hunspell::Hunspell(FILE* aff_handle, FILE* dic_handle)
|
| - {
|
| - encoding = NULL;
|
| - csconv = NULL;
|
| -@@ -28,11 +28,11 @@
|
| - complexprefixes = 0;
|
| -
|
| - /* first set up the hash manager */
|
| -- pHMgr = new HashMgr(dpath, affpath);
|
| -+ pHMgr = new HashMgr(dic_handle, aff_handle);
|
| -
|
| - /* next set up the affix manager */
|
| - /* it needs access to the hash manager lookup methods */
|
| -- pAMgr = new AffixMgr(affpath,pHMgr);
|
| -+ pAMgr = new AffixMgr(aff_handle, pHMgr);
|
| -
|
| - /* get the preferred try string and the dictionary */
|
| - /* encoding from the Affix Manager for that dictionary */
|
| -@@ -1694,9 +1694,9 @@
|
| -
|
| - #endif // END OF HUNSPELL_EXPERIMENTAL CODE
|
| -
|
| --Hunhandle *Hunspell_create(const char * affpath, const char * dpath)
|
| -+Hunhandle *Hunspell_create(FILE* aff_handle, FILE* dic_handle)
|
| - {
|
| -- return (Hunhandle*)(new Hunspell(affpath, dpath));
|
| -+ return (Hunhandle*)(new Hunspell(aff_handle, dic_handle));
|
| - }
|
| -
|
| - void Hunspell_destroy(Hunhandle *pHunspell)
|
| -Index: src/hunspell/hunspell.hxx
|
| -===================================================================
|
| ---- src/hunspell/hunspell.hxx (revision 3811)
|
| -+++ src/hunspell/hunspell.hxx (working copy)
|
| -@@ -48,7 +48,7 @@
|
| - * input: path of affix file and dictionary file
|
| - */
|
| -
|
| -- Hunspell(const char * affpath, const char * dpath);
|
| -+ Hunspell(FILE* aff_handle, FILE* dic_handle);
|
|
|