Hi David

On 12/22/10 12:50 AM, David Hedberg wrote:
---
  dlls/urlmon/protocol.c    |    6 +++++-
  dlls/urlmon/urlmon_main.h |    1 +
  2 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/dlls/urlmon/protocol.c b/dlls/urlmon/protocol.c
index 669343b..bb17453 100644
--- a/dlls/urlmon/protocol.c
+++ b/dlls/urlmon/protocol.c
@@ -107,7 +107,11 @@ static void request_complete(Protocol *protocol, 
INTERNET_ASYNC_RESULT *ar)
      TRACE("(%p)->(%p)\n", protocol, ar);

      if(!ar->dwResult) {
-        WARN("request failed: %d\n", ar->dwError);
+        if(protocol->vtbl->on_error)
+            protocol->vtbl->on_error(protocol, ar->dwError);
+        else
+            WARN("request failed: %d\n", ar->dwError);

We want it in all protocol handlers. Please add stubs (with FIXME) to all of them and remove NULL-check here.

Also you will leave the object in an invalid state if we're in a middle of downloading at this point. You can limit this patch to the first request_complete notification (using FLAG_FIRST_CONTINUE_COMPLETE flag) or make sure we're doing things right.

Cheers,
    Jacek


Reply via email to