diff options
author | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2009-11-05 21:39:24 (GMT) |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2009-11-06 21:58:00 (GMT) |
commit | 79864599ec3a1ce5a5ede84ea2d3d7ba437a3257 (patch) | |
tree | 3ce6f960c0fc8242cd94afacc2f2f1488f9f1bf1 /tools/linguist/lupdate/merge.cpp | |
parent | 360a51d64c607f5efae7a4f25a9a519424399b69 (diff) | |
download | Qt-79864599ec3a1ce5a5ede84ea2d3d7ba437a3257.zip Qt-79864599ec3a1ce5a5ede84ea2d3d7ba437a3257.tar.gz Qt-79864599ec3a1ce5a5ede84ea2d3d7ba437a3257.tar.bz2 |
don't construct a new message for look-up purposes only
Diffstat (limited to 'tools/linguist/lupdate/merge.cpp')
-rw-r--r-- | tools/linguist/lupdate/merge.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/tools/linguist/lupdate/merge.cpp b/tools/linguist/lupdate/merge.cpp index b5f77cd..cffbfa3 100644 --- a/tools/linguist/lupdate/merge.cpp +++ b/tools/linguist/lupdate/merge.cpp @@ -351,8 +351,9 @@ Translator merge(const Translator &tor, const Translator &virginTor, if (!mv.isNull()) m.setComment(mv.comment()); } else { - TranslatorMessage mv = virginTor.find(m.context(), m.sourceText(), m.comment()); - if (mv.isNull()) { + TranslatorMessage mv; + int mvi = virginTor.messages().indexOf(m); + if (mvi < 0) { if (!(options & HeuristicSimilarText)) { newType = TranslatorMessage::Obsolete; if (m.type() != TranslatorMessage::Obsolete) @@ -402,6 +403,7 @@ Translator merge(const Translator &tor, const Translator &virginTor, } } } else { + mv = virginTor.message(mvi); switch (m.type()) { case TranslatorMessage::Finished: default: @@ -446,7 +448,7 @@ Translator merge(const Translator &tor, const Translator &virginTor, if (tor.contains(mv.context())) continue; } else { - if (tor.contains(mv.context(), mv.sourceText(), mv.comment())) + if (tor.messages().contains(mv)) continue; if (options & HeuristicSimilarText) { TranslatorMessage m = tor.find(mv.context(), mv.comment(), mv.allReferences()); |