diff --git a/stdlib/SHA/src/SHA.jl b/stdlib/SHA/src/SHA.jl index 7edaab403156a..ac93fdf13f442 100644 --- a/stdlib/SHA/src/SHA.jl +++ b/stdlib/SHA/src/SHA.jl @@ -124,7 +124,7 @@ for (f, ctx) in [(:sha1, :SHA1_CTX), end function $g(key::Vector{UInt8}, io::IO, chunk_size=4*1024) ctx = HMAC_CTX($ctx(), key) - buff = Vector{UInt8}(chunk_size) + buff = Vector{UInt8}(undef, chunk_size) while !eof(io) num_read = readbytes!(io, buff) update!(ctx, buff, num_read) diff --git a/stdlib/SHA/test/runtests.jl b/stdlib/SHA/test/runtests.jl index 2430f8d0b1089..49ab05e47b739 100644 --- a/stdlib/SHA/test/runtests.jl +++ b/stdlib/SHA/test/runtests.jl @@ -230,15 +230,17 @@ for (key, msg, fun, hash) in ( (b"key", b"The quick brown fox jumps over the lazy dog", hmac_sha256, "f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8"), ) global nerrors - digest = bytes2hex(fun(Vector(key), Vector(msg))) - if digest != hash + digest1 = bytes2hex(fun(Vector(key), Vector(msg))) + digest2 = bytes2hex(fun(Vector(key), IOBuffer(Vector(msg)))) + if digest1 != hash || digest2 != hash print("\n") @warn( """ For $fun($(String(key)), $(String(msg))) expected: $hash Calculated: - $digest + $digest1 + $digest2 """) nerrors += 1 else