author: Bernhard R. Link Fix unaligned access on hppa --- a/src/3rdparty/sha1/sha1.cpp +++ b/src/3rdparty/sha1/sha1.cpp @@ -151,10 +151,10 @@ quint32 d = state->h3; quint32 e = state->h4; - quint8 chunkBuffer[64]; - memcpy(chunkBuffer, buffer, 64); + Sha1Chunk chunkBuffer; + memcpy(chunkBuffer.bytes, buffer, 64); - Sha1Chunk *chunk = reinterpret_cast(&chunkBuffer); + Sha1Chunk *chunk = &chunkBuffer; for (int i = 0; i < 16; ++i) chunk->words[i] = qFromBigEndian(chunk->words[i]); @@ -190,7 +190,7 @@ // Wipe variables #ifdef SHA1_WIPE_VARIABLES a = b = c = d = e = 0; - memset(chunkBuffer, 0, 64); + memset(chunkBuffer.bytes, 0, 64); #endif }