Please review this very carefully! This exposes a bunch of error messages that
used to only be visible on DetailedPromise to web content. Are there any
privacy/security issues with exposing those? If needed, we could use more
generic messages instead, but exposing this information if we can seemed like
the right way to go.
I did look over the error messages coming from GeckoMediaDrmBridgeV21.java and
none of them look like they expose any interesting state. The messages from
ChromiumCDMProxy expose mKeySystem, but that came from the web page to start
with, I think.
Also, are these messages even meaningful for web content? Some of the error
messages (like the one from MediaDrmCDMProxy::md_SetServerCertificate) seem
like they include internal function names, so are not great for web content...
I'm not quite sure what the best thing to do there is.
Note: There is a behavior change to ChromiumCDMParent::GetStatusForPolicy because
NS_ERROR_INVALID_ARG is not a valid thing to throw to web content. I've used
TypeError, since that's what normally gets used for invalid args.