diff --git a/libavutil/sha.c b/libavutil/sha.c index 3107deeffe..38221a7164 100644 --- a/libavutil/sha.c +++ b/libavutil/sha.c @@ -25,6 +25,7 @@ #include "avutil.h" #include "bswap.h" #include "sha.h" +#include "intreadwrite.h" /** hash context */ typedef struct AVSHA { @@ -319,7 +320,7 @@ void av_sha_final(AVSHA* ctx, uint8_t *digest) av_sha_update(ctx, "", 1); av_sha_update(ctx, (uint8_t *)&finalcount, 8); /* Should cause a transform() */ for (i = 0; i < ctx->digest_len; i++) - ((uint32_t*)digest)[i] = be2me_32(ctx->state[i]); + AV_WN32(digest + i*4, be2me_32(ctx->state[i])); } #if LIBAVUTIL_VERSION_MAJOR < 51