diff options
author | Anton Kudryavtsev <anton.kudryavtsev@corp.mail.ru> | 2018-10-15 20:36:06 +0300 |
---|---|---|
committer | Anton Kudryavtsev <antkudr@mail.ru> | 2019-03-16 10:50:21 +0000 |
commit | c0b265662e618f0d953ed2c389bad9f50ac24f7f (patch) | |
tree | cb65a5252c3d04087c2d82bcd9561168d0449a45 /src/corelib/kernel/qtranslator.cpp | |
parent | 50f3f8f6bb8f5482c713480fad80421760184216 (diff) |
QTranslator: avoid unhandled exception
Add std::nothrow param to avoid exception and
to check pointer against nullptr.
Change-Id: I505abb1ca15b8c10a80b0cd3784a6b0c4c6bcc1c
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/corelib/kernel/qtranslator.cpp')
-rw-r--r-- | src/corelib/kernel/qtranslator.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/corelib/kernel/qtranslator.cpp b/src/corelib/kernel/qtranslator.cpp index 744bbfbff5..929554f6bc 100644 --- a/src/corelib/kernel/qtranslator.cpp +++ b/src/corelib/kernel/qtranslator.cpp @@ -72,6 +72,7 @@ #endif #include <stdlib.h> +#include <new> #include "qobject_p.h" @@ -592,7 +593,7 @@ bool QTranslatorPrivate::do_load(const QString &realname, const QString &directo #endif // QT_USE_MMAP if (!ok) { - d->unmapPointer = new char[d->unmapLength]; + d->unmapPointer = new (std::nothrow) char[d->unmapLength]; if (d->unmapPointer) { file.seek(0); qint64 readResult = file.read(d->unmapPointer, d->unmapLength); |