Using Vector<char> for key data is somewhat non-idiomatic, and it gets simply dangerous for bignums, because signed arithmetic is not appropriate for bignum digits. There is no good way to move data between Vector<char> and Vector<uint8_t>, so switching to Vector<uint8_t> requires teaching Base64 code how to produce and consume those.
Created attachment 217145 [details] proposed patch Not sure if the SignedOrUnsignedCharVectorAdapter and ConstSignedOrUnsignedCharVectorAdapter classes are the very best way to make Base64 work with both types. Thoughts?
(In reply to comment #1) > Created an attachment (id=217145) [details] > proposed patch > > Not sure if the SignedOrUnsignedCharVectorAdapter and ConstSignedOrUnsignedCharVectorAdapter classes are the very best way to make Base64 work with both types. Thoughts? Seems fine.
Committed <http://trac.webkit.org/r159390>.