Jacek Caban : mshtml: Move createing URL moniker to separated function.

Alexandre Julliard julliard at wine.codeweavers.com
Tue Jun 12 06:30:41 CDT 2007


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

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Mon Jun 11 17:25:51 2007 +0200

mshtml: Move createing URL moniker to separated function.

---

 dlls/mshtml/nsio.c |   59 ++++++++++++++++++++++++++++++---------------------
 1 files changed, 35 insertions(+), 24 deletions(-)

diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c
index 399eb6e..735a577 100644
--- a/dlls/mshtml/nsio.c
+++ b/dlls/mshtml/nsio.c
@@ -605,15 +605,45 @@ static BOOL do_load_from_moniker_hack(nsChannel *This)
     return FALSE;
 }
 
+static HRESULT create_mon_for_nschannel(nsChannel *channel, IMoniker **mon)
+{
+    nsIWineURI *wine_uri;
+    LPCWSTR wine_url;
+    nsresult nsres;
+    HRESULT hres;
+
+    if(!channel->original_uri) {
+        ERR("original_uri == NULL\n");
+        return E_FAIL;
+    }
+
+    nsres = nsIURI_QueryInterface(channel->original_uri, &IID_nsIWineURI, (void**)&wine_uri);
+    if(NS_FAILED(nsres)) {
+        ERR("Could not get nsIWineURI: %08x\n", nsres);
+        return E_FAIL;
+    }
+
+    nsIWineURI_GetWineURL(wine_uri, &wine_url);
+    nsIWineURI_Release(wine_uri);
+    if(!wine_url) {
+        TRACE("wine_url == NULL\n");
+        return E_FAIL;
+    }
+
+    hres = CreateURLMoniker(NULL, wine_url, mon);
+    if(FAILED(hres))
+        WARN("CreateURLMonikrer failed: %08x\n", hres);
+
+    return hres;
+}
+
 static nsresult NSAPI nsChannel_AsyncOpen(nsIHttpChannel *iface, nsIStreamListener *aListener,
                                           nsISupports *aContext)
 {
     nsChannel *This = NSCHANNEL_THIS(iface);
     BSCallback *bscallback;
-    nsIWineURI *wine_uri;
-    IMoniker *mon;
+    IMoniker *mon = NULL;
     PRBool is_doc_uri;
-    LPCWSTR wine_url;
     nsresult nsres;
     task_t *task;
     HRESULT hres;
@@ -692,28 +722,9 @@ static nsresult NSAPI nsChannel_AsyncOpen(nsIHttpChannel *iface, nsIStreamListen
 
     TRACE("channel == NULL\n");
 
-    if(!This->original_uri) {
-        ERR("original_uri == NULL\n");
-        return NS_ERROR_UNEXPECTED;
-    }
-
-    nsres = nsIURI_QueryInterface(This->original_uri, &IID_nsIWineURI, (void**)&wine_uri);
-    if(NS_FAILED(nsres)) {
-        ERR("Could not get nsIWineURI: %08x\n", nsres);
-        return NS_ERROR_UNEXPECTED;
-    }
-
-    nsIWineURI_GetWineURL(wine_uri, &wine_url);
-    if(!wine_url) {
-        TRACE("wine_url == NULL\n");
-        return NS_ERROR_UNEXPECTED;
-    }
-
-    hres = CreateURLMoniker(NULL, wine_url, &mon);
-    if(FAILED(hres)) {
-        WARN("CreateURLMonikrer failed: %08x\n", hres);
+    hres = create_mon_for_nschannel(This, &mon);
+    if(FAILED(hres))
         return NS_ERROR_UNEXPECTED;
-    }
 
     bscallback = create_bscallback(mon);
     IMoniker_Release(mon);




More information about the wine-cvs mailing list