diff options
| author | Marc Mutz <marc.mutz@qt.io> | 2023-03-10 13:50:30 +0100 |
|---|---|---|
| committer | Marc Mutz <marc.mutz@qt.io> | 2023-03-17 00:41:32 +0100 |
| commit | 4ac7ac5b595cb1710a63d4dc917e65e20baca7a1 (patch) | |
| tree | aaa6940365b0fda08cd76e97b1e91bc160a485fe | |
| parent | a6bf36d409f5a5ba7cae7438142c37d786042429 (diff) | |
| download | qtbase-4ac7ac5b595cb1710a63d4dc917e65e20baca7a1.tar.gz | |
QCryptographicHash: fix missing EVP_DigestInit_ex() after EVP_MD_CTX_reset()
EVP_MD_CTX_reset() alone is not sufficient. A following
EVP_DigestUpdate() crashes, so re-init the context, too.
Amends 189444d8c4a1384479962e98e699bf1fd2908de8.
Pick-to: 6.5
Change-Id: I5dede0adddd7f6b0c62540f6d45917b3236e3d02
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
| -rw-r--r-- | src/corelib/tools/qcryptographichash.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/corelib/tools/qcryptographichash.cpp b/src/corelib/tools/qcryptographichash.cpp index ccf34312de..258a97b8e1 100644 --- a/src/corelib/tools/qcryptographichash.cpp +++ b/src/corelib/tools/qcryptographichash.cpp @@ -550,6 +550,7 @@ void QCryptographicHashPrivate::reset() noexcept if (context && !initializationFailed) { // everything already set up - just reset the context EVP_MD_CTX_reset(context.get()); + initializationFailed = !EVP_DigestInit_ex(context.get(), algorithm.get(), nullptr); return; } |
