errors in native modules that use openssl prevent hashes from being created

There is a small regression in 5.1.0, that comes up in some edge cases that I might have been the only one using (and have fixed in my code). If

  1. you have a c module that is using openssl (like raw-ecdsa).
  2. if that module has an error (like in raw-ecdsa where it tries a couple different ways to parse a key in order).
  3. and does not clear the error stack

then due to the addition of this line running crypto.createHash with throw an error.