Jacek Caban : shdocvw: Wrong PostData VT is not an error.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Aug 2 06:23:02 CDT 2007


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

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Wed Aug  1 20:09:19 2007 +0200

shdocvw: Wrong PostData VT is not an error.

---

 dlls/shdocvw/navigate.c |   14 ++++++--------
 1 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/dlls/shdocvw/navigate.c b/dlls/shdocvw/navigate.c
index 161c138..4c1ccdb 100644
--- a/dlls/shdocvw/navigate.c
+++ b/dlls/shdocvw/navigate.c
@@ -528,15 +528,13 @@ HRESULT navigate_url(DocHost *This, BSTR url, VARIANT *Flags, VARIANT *TargetFra
        || (TargetFrameName && V_VT(TargetFrameName) != VT_EMPTY))
         FIXME("Unsupported arguments\n");
 
-    if(PostData && V_VT(PostData) != VT_EMPTY && V_VT(PostData) != VT_ERROR) {
-        if(V_VT(PostData) != (VT_ARRAY | VT_UI1)
-           || V_ARRAY(PostData)->cDims != 1) {
-            WARN("Invalid PostData\n");
-            return E_INVALIDARG;
-        }
+    if(PostData) {
+        TRACE("PostData vt=%d\n", V_VT(PostData));
 
-        SafeArrayAccessData(V_ARRAY(PostData), (void**)&post_data);
-        post_data_len = V_ARRAY(PostData)->rgsabound[0].cElements;
+        if(V_VT(PostData) == (VT_ARRAY | VT_UI1)) {
+            SafeArrayAccessData(V_ARRAY(PostData), (void**)&post_data);
+            post_data_len = V_ARRAY(PostData)->rgsabound[0].cElements;
+        }
     }
 
     if(Headers && V_VT(Headers) != VT_EMPTY && V_VT(Headers) != VT_ERROR) {




More information about the wine-cvs mailing list