diff options
Diffstat (limited to 'external/hunspell/hunspell.rhbz918938.patch')
-rw-r--r-- | external/hunspell/hunspell.rhbz918938.patch | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/external/hunspell/hunspell.rhbz918938.patch b/external/hunspell/hunspell.rhbz918938.patch deleted file mode 100644 index f1bdbd4ff8ba..000000000000 --- a/external/hunspell/hunspell.rhbz918938.patch +++ /dev/null @@ -1,72 +0,0 @@ ---- misc/hunspell-1.3.2/src/hunspell/hunspell.cxx 2011-02-02 12:04:29.000000000 +0000 -+++ misc/build/hunspell-1.3.2/src/hunspell/hunspell.cxx 2013-03-13 16:50:50.667928521 +0000 -@@ -12,6 +12,8 @@ - #endif - #include "csutil.hxx" - -+#include <string> -+ - Hunspell::Hunspell(const char * affpath, const char * dpath, const char * key) - { - encoding = NULL; -@@ -1710,6 +1712,19 @@ - return n; - } - -+namespace -+{ -+ void myrep(std::string& str, const std::string& search, const std::string& replace) -+ { -+ size_t pos = 0; -+ while ((pos = str.find(search, pos)) != std::string::npos) -+ { -+ str.replace(pos, search.length(), replace); -+ pos += replace.length(); -+ } -+ } -+} -+ - int Hunspell::spellml(char*** slst, const char * word) - { - char *q, *q2; -@@ -1721,26 +1736,26 @@ - q2 = strstr(q2, "<word"); - if (!q2) return 0; // bad XML input - if (check_xml_par(q, "type=", "analyze")) { -- int n = 0, s = 0; -+ int n = 0; - if (get_xml_par(cw, strchr(q2, '>'), MAXWORDUTF8LEN - 10)) n = analyze(slst, cw); - if (n == 0) return 0; - // convert the result to <code><a>ana1</a><a>ana2</a></code> format -- for (int i = 0; i < n; i++) s+= strlen((*slst)[i]); -- char * r = (char *) malloc(6 + 5 * s + 7 * n + 7 + 1); // XXX 5*s->&->& -- if (!r) return 0; -- strcpy(r, "<code>"); -+ std::string r; -+ r.append("<code>"); - for (int i = 0; i < n; i++) { -- int l = strlen(r); -- strcpy(r + l, "<a>"); -- strcpy(r + l + 3, (*slst)[i]); -- mystrrep(r + l + 3, "\t", " "); -- mystrrep(r + l + 3, "<", "<"); -- mystrrep(r + l + 3, "&", "&"); -- strcat(r, "</a>"); -+ r.append("<a>"); -+ -+ std::string entry((*slst)[i]); - free((*slst)[i]); -+ myrep(entry, "\t", " "); -+ myrep(entry, "&", "&"); -+ myrep(entry, "<", "<"); -+ r.append(entry); -+ -+ r.append("</a>"); - } -- strcat(r, "</code>"); -- (*slst)[0] = r; -+ r.append("</code>"); -+ (*slst)[0] = mystrdup(r.c_str()); - return 1; - } else if (check_xml_par(q, "type=", "stem")) { - if (get_xml_par(cw, strchr(q2, '>'), MAXWORDUTF8LEN - 1)) return stem(slst, cw); |