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
cef354a2
Commit
cef354a2
authored
May 25, 2006
by
Jacek Caban
Committed by
Alexandre Julliard
May 25, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
urlmon: Return MK_S_ASYNCHRONOUS if bindindg is asynchronous.
parent
6155a677
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
8 deletions
+25
-8
binding.c
dlls/urlmon/binding.c
+25
-8
No files found.
dlls/urlmon/binding.c
View file @
cef354a2
...
...
@@ -64,6 +64,7 @@ struct ProtocolStream {
BYTE
buf
[
1024
*
8
];
DWORD
buf_size
;
BOOL
init_buf
;
};
#define BINDING(x) ((IBinding*) &(x)->lpBindingVtbl)
...
...
@@ -347,6 +348,7 @@ static ProtocolStream *create_stream(IInternetProtocol *protocol)
ret
->
lpStreamVtbl
=
&
ProtocolStreamVtbl
;
ret
->
ref
=
1
;
ret
->
buf_size
=
0
;
ret
->
init_buf
=
FALSE
;
IInternetProtocol_AddRef
(
protocol
);
ret
->
protocol
=
protocol
;
...
...
@@ -359,10 +361,14 @@ static ProtocolStream *create_stream(IInternetProtocol *protocol)
static
void
fill_stream_buffer
(
ProtocolStream
*
This
)
{
DWORD
read
=
0
;
HRESULT
hres
;
IInternetProtocol_Read
(
This
->
protocol
,
This
->
buf
+
This
->
buf_size
,
sizeof
(
This
->
buf
)
-
This
->
buf_size
,
&
read
);
This
->
buf_size
+=
read
;
hres
=
IInternetProtocol_Read
(
This
->
protocol
,
This
->
buf
+
This
->
buf_size
,
sizeof
(
This
->
buf
)
-
This
->
buf_size
,
&
read
);
if
(
SUCCEEDED
(
hres
))
{
This
->
buf_size
+=
read
;
This
->
init_buf
=
TRUE
;
}
}
static
HRESULT
WINAPI
Binding_QueryInterface
(
IBinding
*
iface
,
REFIID
riid
,
void
**
ppv
)
...
...
@@ -908,15 +914,26 @@ HRESULT start_binding(LPCWSTR url, IBindCtx *pbc, REFIID riid, void **ppv)
hres
=
IInternetProtocol_Start
(
binding
->
protocol
,
url
,
PROTSINK
(
binding
),
BINDINF
(
binding
),
0
,
0
);
if
(
SUCCEEDED
(
hres
))
{
IInternetProtocol_UnlockRequest
(
binding
->
protocol
);
}
else
{
if
(
FAILED
(
hres
))
{
WARN
(
"Start failed: %08lx
\n
"
,
hres
);
IInternetProtocol_Terminate
(
binding
->
protocol
,
0
);
IBindStatusCallback_OnStopBinding
(
binding
->
callback
,
S_OK
,
NULL
);
IBinding_Release
(
BINDING
(
binding
));
return
hres
;
}
IStream_AddRef
(
STREAM
(
binding
->
stream
));
*
ppv
=
binding
->
stream
;
if
(
binding
->
stream
->
init_buf
)
{
IInternetProtocol_UnlockRequest
(
binding
->
protocol
);
IStream_AddRef
(
STREAM
(
binding
->
stream
));
*
ppv
=
binding
->
stream
;
hres
=
S_OK
;
}
else
{
hres
=
MK_S_ASYNCHRONOUS
;
}
IBinding_Release
(
BINDING
(
binding
));
...
...
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