Jacek Caban : mshtml: Don't use nsIDOMHTMLParamElement.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Sep 19 13:18:31 CDT 2014


Module: wine
Branch: master
Commit: 2f849ce3c9d2915d2915353fd68a538527a64ae5
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=2f849ce3c9d2915d2915353fd68a538527a64ae5

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Fri Sep 19 13:26:10 2014 +0200

mshtml: Don't use nsIDOMHTMLParamElement.

It will be removed in the next Gecko update anyway.

---

 dlls/mshtml/nsiface.idl | 17 -----------------
 dlls/mshtml/propbag.c   | 25 +++++++++++--------------
 2 files changed, 11 insertions(+), 31 deletions(-)

diff --git a/dlls/mshtml/nsiface.idl b/dlls/mshtml/nsiface.idl
index 89a9740..a5275e7 100644
--- a/dlls/mshtml/nsiface.idl
+++ b/dlls/mshtml/nsiface.idl
@@ -2220,23 +2220,6 @@ interface nsIDOMHTMLObjectElement : nsIDOMHTMLElement
 
 [
     object,
-    uuid(f85e1b05-6dc4-442d-bea8-7cf551f9bc9f),
-    local
-]
-interface nsIDOMHTMLParamElement : nsIDOMHTMLElement
-{
-    nsresult GetName(nsAString *aName);
-    nsresult SetName(const nsAString *aName);
-    nsresult GetType(nsAString *aType);
-    nsresult SetType(const nsAString *aType);
-    nsresult GetValue(nsAString *aValue);
-    nsresult SetValue(const nsAString *aValue);
-    nsresult GetValueType(nsAString *aValueType);
-    nsresult SetValueType(const nsAString *aValueType);
-}
-
-[
-    object,
     uuid(e81273e1-d440-4dd3-9073-8199f7a9525e),
     local
 ]
diff --git a/dlls/mshtml/propbag.c b/dlls/mshtml/propbag.c
index 2aacb53..f9ae158 100644
--- a/dlls/mshtml/propbag.c
+++ b/dlls/mshtml/propbag.c
@@ -270,15 +270,18 @@ static const IPropertyBag2Vtbl PropertyBag2Vtbl = {
 
 static HRESULT fill_props(nsIDOMHTMLElement *nselem, PropertyBag *prop_bag)
 {
-    nsIDOMHTMLParamElement *nsparam;
+    const PRUnichar *name, *value;
     nsAString name_str, value_str;
     nsIDOMHTMLCollection *params;
+    nsIDOMHTMLElement *param_elem;
     UINT32 length, i;
     nsIDOMNode *nsnode;
     nsresult nsres;
     HRESULT hres = S_OK;
 
+    static const PRUnichar nameW[] = {'n','a','m','e',0};
     static const PRUnichar paramW[] = {'p','a','r','a','m',0};
+    static const PRUnichar valueW[] = {'v','a','l','u','e',0};
 
     nsAString_InitDepend(&name_str, paramW);
     nsres = nsIDOMHTMLElement_GetElementsByTagName(nselem, &name_str, &params);
@@ -297,31 +300,25 @@ static HRESULT fill_props(nsIDOMHTMLElement *nselem, PropertyBag *prop_bag)
             break;
         }
 
-        nsres = nsIDOMNode_QueryInterface(nsnode, &IID_nsIDOMHTMLParamElement, (void**)&nsparam);
+        nsres = nsIDOMNode_QueryInterface(nsnode, &IID_nsIDOMHTMLElement, (void**)&param_elem);
         nsIDOMNode_Release(nsnode);
         if(NS_FAILED(nsres)) {
             hres = E_FAIL;
             break;
         }
 
-        nsAString_Init(&name_str, NULL);
-        nsres = nsIDOMHTMLParamElement_GetName(nsparam, &name_str);
+        nsres = get_elem_attr_value(param_elem, nameW, &name_str, &name);
         if(NS_SUCCEEDED(nsres)) {
-            nsAString_Init(&value_str, NULL);
-            nsres = nsIDOMHTMLParamElement_GetValue(nsparam, &value_str);
+            nsres = get_elem_attr_value(param_elem, valueW, &value_str, &value);
             if(NS_SUCCEEDED(nsres)) {
-                const PRUnichar *name, *value;
-
-                nsAString_GetData(&name_str, &name);
-                nsAString_GetData(&value_str, &value);
-
                 hres = add_prop(prop_bag, name, value);
+                nsAString_Finish(&value_str);
             }
-            nsAString_Finish(&value_str);
+
+            nsAString_Finish(&name_str);
         }
 
-        nsAString_Finish(&name_str);
-        nsIDOMHTMLParamElement_Release(nsparam);
+        nsIDOMHTMLElement_Release(param_elem);
         if(FAILED(hres))
             break;
         if(NS_FAILED(nsres)) {




More information about the wine-cvs mailing list