Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
e7ea2d3b
Commit
e7ea2d3b
authored
May 01, 2011
by
Thomas Mullaly
Committed by
Alexandre Julliard
May 12, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
urlmon: Improve handling of error codes being returned from client OnStartBinding callback.
parent
39c38cf0
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
14 additions
and
5 deletions
+14
-5
binding.c
dlls/urlmon/binding.c
+4
-1
url.c
dlls/urlmon/tests/url.c
+10
-4
No files found.
dlls/urlmon/binding.c
View file @
e7ea2d3b
...
@@ -1494,7 +1494,10 @@ static HRESULT start_binding(IMoniker *mon, Binding *binding_ctx, IUri *uri, IBi
...
@@ -1494,7 +1494,10 @@ static HRESULT start_binding(IMoniker *mon, Binding *binding_ctx, IUri *uri, IBi
hres
=
IBindStatusCallback_OnStartBinding
(
binding
->
callback
,
0
,
&
binding
->
IBinding_iface
);
hres
=
IBindStatusCallback_OnStartBinding
(
binding
->
callback
,
0
,
&
binding
->
IBinding_iface
);
if
(
FAILED
(
hres
))
{
if
(
FAILED
(
hres
))
{
WARN
(
"OnStartBinding failed: %08x
\n
"
,
hres
);
WARN
(
"OnStartBinding failed: %08x
\n
"
,
hres
);
stop_binding
(
binding
,
hres
==
E_ABORT
?
hres
:
INET_E_DOWNLOAD_FAILURE
,
NULL
);
if
(
hres
!=
E_ABORT
&&
hres
!=
E_NOTIMPL
)
hres
=
INET_E_DOWNLOAD_FAILURE
;
stop_binding
(
binding
,
hres
,
NULL
);
IBinding_Release
(
&
binding
->
IBinding_iface
);
IBinding_Release
(
&
binding
->
IBinding_iface
);
return
hres
;
return
hres
;
}
}
...
...
dlls/urlmon/tests/url.c
View file @
e7ea2d3b
...
@@ -198,6 +198,7 @@ static IBinding *current_binding;
...
@@ -198,6 +198,7 @@ static IBinding *current_binding;
static
HANDLE
complete_event
,
complete_event2
;
static
HANDLE
complete_event
,
complete_event2
;
static
HRESULT
binding_hres
;
static
HRESULT
binding_hres
;
static
HRESULT
onsecurityproblem_hres
;
static
HRESULT
onsecurityproblem_hres
;
static
HRESULT
abort_hres
;
static
BOOL
have_IHttpNegotiate2
,
use_bscex
,
is_async_prot
;
static
BOOL
have_IHttpNegotiate2
,
use_bscex
,
is_async_prot
;
static
BOOL
test_redirect
,
use_cache_file
,
callback_read
,
no_callback
,
test_abort
;
static
BOOL
test_redirect
,
use_cache_file
,
callback_read
,
no_callback
,
test_abort
;
static
WCHAR
cache_file_name
[
MAX_PATH
];
static
WCHAR
cache_file_name
[
MAX_PATH
];
...
@@ -1562,8 +1563,8 @@ static HRESULT WINAPI statusclb_OnStartBinding(IBindStatusCallbackEx *iface, DWO
...
@@ -1562,8 +1563,8 @@ static HRESULT WINAPI statusclb_OnStartBinding(IBindStatusCallbackEx *iface, DWO
ok
(
hres
==
E_NOINTERFACE
,
"Could not get IID_IWinInetHttpInfo: %08x
\n
"
,
hres
);
ok
(
hres
==
E_NOINTERFACE
,
"Could not get IID_IWinInetHttpInfo: %08x
\n
"
,
hres
);
if
(
abort_start
)
{
if
(
abort_start
)
{
binding_hres
=
E_ABORT
;
binding_hres
=
abort_hres
;
return
E_ABORT
;
return
abort_hres
;
}
}
return
S_OK
;
return
S_OK
;
...
@@ -2850,7 +2851,7 @@ static void test_BindToStorage(int protocol, DWORD flags, DWORD t)
...
@@ -2850,7 +2851,7 @@ static void test_BindToStorage(int protocol, DWORD flags, DWORD t)
ok
(
hres
==
E_FAIL
,
"Got %08x
\n
"
,
hres
);
ok
(
hres
==
E_FAIL
,
"Got %08x
\n
"
,
hres
);
CHECK_CALLED
(
OnStopBinding
);
CHECK_CALLED
(
OnStopBinding
);
}
else
if
(
abort_start
)
}
else
if
(
abort_start
)
ok
(
hres
==
E_ABORT
,
"IMoniker_BindToStorage failed: %08x, expected E_ABORT
\n
"
,
hres
);
ok
(
hres
==
abort_hres
,
"IMoniker_BindToStorage failed: %08x, expected %08x
\n
"
,
hres
,
abort_
hres
);
else
if
(
abort_progress
)
else
if
(
abort_progress
)
ok
(
hres
==
MK_S_ASYNCHRONOUS
,
"IMoniker_BindToStorage failed: %08x
\n
"
,
hres
);
ok
(
hres
==
MK_S_ASYNCHRONOUS
,
"IMoniker_BindToStorage failed: %08x
\n
"
,
hres
);
else
if
(
no_callback
)
{
else
if
(
no_callback
)
{
...
@@ -3634,7 +3635,12 @@ START_TEST(url)
...
@@ -3634,7 +3635,12 @@ START_TEST(url)
trace
(
"http test (short response, to object)...
\n
"
);
trace
(
"http test (short response, to object)...
\n
"
);
test_BindToObject
(
HTTP_TEST
,
0
);
test_BindToObject
(
HTTP_TEST
,
0
);
trace
(
"http test (abort start binding)...
\n
"
);
trace
(
"http test (abort start binding E_NOTIMPL)...
\n
"
);
abort_hres
=
E_NOTIMPL
;
test_BindToStorage
(
HTTP_TEST
,
BINDTEST_ABORT_START
,
TYMED_FILE
);
trace
(
"http test (abort start binding E_ABORT)...
\n
"
);
abort_hres
=
E_ABORT
;
test_BindToStorage
(
HTTP_TEST
,
BINDTEST_ABORT_START
,
TYMED_FILE
);
test_BindToStorage
(
HTTP_TEST
,
BINDTEST_ABORT_START
,
TYMED_FILE
);
trace
(
"http test (abort progress)...
\n
"
);
trace
(
"http test (abort progress)...
\n
"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment