Jacek Caban : mshtml: Introduce map_nsresult and use it in return_nsstr.
Alexandre Julliard
julliard at winehq.org
Tue Mar 26 16:43:15 CDT 2019
Module: wine
Branch: master
Commit: 78a05ca6dd746325de4a17b4fbe892b9ff50a373
URL: https://source.winehq.org/git/wine.git/?a=commit;h=78a05ca6dd746325de4a17b4fbe892b9ff50a373
Author: Jacek Caban <jacek at codeweavers.com>
Date: Tue Mar 26 17:27:22 2019 +0100
mshtml: Introduce map_nsresult and use it in return_nsstr.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/mshtml/nsembed.c | 25 +++++++++++++++++++++++--
1 file changed, 23 insertions(+), 2 deletions(-)
diff --git a/dlls/mshtml/nsembed.c b/dlls/mshtml/nsembed.c
index 33d251d..cebed37 100644
--- a/dlls/mshtml/nsembed.c
+++ b/dlls/mshtml/nsembed.c
@@ -848,14 +848,35 @@ void nsAString_Finish(nsAString *str)
NS_StringContainerFinish(str);
}
+static HRESULT map_nsresult(nsresult nsres)
+{
+ switch(nsres) {
+ case NS_OK:
+ return S_OK;
+ case NS_ERROR_OUT_OF_MEMORY:
+ return E_OUTOFMEMORY;
+ case NS_ERROR_NOT_IMPLEMENTED:
+ return E_NOTIMPL;
+ case NS_NOINTERFACE:
+ return E_NOINTERFACE;
+ case NS_ERROR_INVALID_POINTER:
+ return E_POINTER;
+ case NS_ERROR_INVALID_ARG:
+ return E_INVALIDARG;
+ case NS_ERROR_UNEXPECTED:
+ return E_UNEXPECTED;
+ }
+ return E_FAIL;
+}
+
HRESULT return_nsstr(nsresult nsres, nsAString *nsstr, BSTR *p)
{
const PRUnichar *str;
if(NS_FAILED(nsres)) {
- ERR("failed: %08x\n", nsres);
+ WARN("failed: %08x\n", nsres);
nsAString_Finish(nsstr);
- return E_FAIL;
+ return map_nsresult(nsres);
}
nsAString_GetData(nsstr, &str);
More information about the wine-cvs
mailing list