v2: * Fix leak in `IRestrictedErrorInfo::Release`. * Fix potential leak in RoOriginateErrorW if `set_error_info` fails. * Use SysAllocStringLen in `IRestrictedErrorInfo::GetErrorDetails` and `IErrorInfo::GetDescription`, as error strings don't contain embedded NULs. * Return S_FALSE in `GetRestrictedErrorInfo` if the current error object didn't support `IRestrictedErrorInfo`.