]> git.lyx.org Git - lyx.git/blobdiff - src/Thesaurus.cpp
Fix bug #7106: iterator out of range while copying multi-row math.
[lyx.git] / src / Thesaurus.cpp
index d21453ab0fb01dc2e75e92487509411ce4cd3a95..bf657762c1c2d4a423d3998a7dc8245734d3e132 100644 (file)
@@ -222,17 +222,17 @@ Thesaurus::Meanings Thesaurus::lookup(docstring const & t, docstring const & lan
        // they are needed for the CleanUpAfterLookup routine
        mentry * pm = pmean;
        docstring meaning;
-       docstring ret;
        for (int i = 0; i < count; i++) {
+               vector<docstring> ret;
                meaning = from_iconv_encoding(string(pm->defn), encoding);
                // remove silly item
                if (support::prefixIs(meaning, '-'))
                        meaning = support::ltrim(meaning, "- ");
                for (int j = 0; j < pm->count; j++) {
-                       ret = from_iconv_encoding(string(pm->psyns[j]), encoding);
+                       ret.push_back(from_iconv_encoding(string(pm->psyns[j]), encoding));
                }
-       meanings[meaning].push_back(ret);
-       pm++;
+               meanings[meaning] = ret;
+               ++pm;
        }
        // now clean up all allocated memory
        mythes->CleanUpAfterLookup(&pmean, count);