diff options
-rw-r--r-- | src/corelib/kernel/qtranslator.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/corelib/kernel/qtranslator.cpp b/src/corelib/kernel/qtranslator.cpp index 5ecaa280b3..02cd85f533 100644 --- a/src/corelib/kernel/qtranslator.cpp +++ b/src/corelib/kernel/qtranslator.cpp @@ -713,6 +713,20 @@ bool QTranslatorPrivate::do_load(const uchar *data, int len) data += blockLen; } + if (!offsetArray || !messageArray) + ok = false; + + if (!ok) { + messageArray = 0; + contextArray = 0; + offsetArray = 0; + numerusRulesArray = 0; + messageLength = 0; + contextLength = 0; + offsetLength = 0; + numerusRulesLength = 0; + } + return ok; } |