Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
195ea90f
Commit
195ea90f
authored
Jan 29, 2013
by
Jacek Caban
Committed by
Alexandre Julliard
Jan 29, 2013
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wininet: Moved WORKREQ_SENDCALLBACK out of WORKREQUEST.
parent
7ca22d70
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
25 additions
and
30 deletions
+25
-30
internet.h
dlls/wininet/internet.h
+0
-9
utility.c
dlls/wininet/utility.c
+25
-21
No files found.
dlls/wininet/internet.h
View file @
195ea90f
...
...
@@ -427,14 +427,6 @@ struct WORKREQ_FTPFINDNEXTW
LPWIN32_FIND_DATAW
lpFindFileData
;
};
struct
WORKREQ_SENDCALLBACK
{
DWORD_PTR
dwContext
;
DWORD
dwInternetStatus
;
LPVOID
lpvStatusInfo
;
DWORD
dwStatusInfoLength
;
};
typedef
struct
WORKREQ
task_header_t
;
typedef
void
(
*
async_task_proc_t
)(
task_header_t
*
);
...
...
@@ -455,7 +447,6 @@ typedef struct WORKREQ
struct
WORKREQ_FTPREMOVEDIRECTORYW
FtpRemoveDirectoryW
;
struct
WORKREQ_FTPRENAMEFILEW
FtpRenameFileW
;
struct
WORKREQ_FTPFINDNEXTW
FtpFindNextW
;
struct
WORKREQ_SENDCALLBACK
SendCallback
;
}
u
;
}
WORKREQUEST
,
*
LPWORKREQUEST
;
...
...
dlls/wininet/utility.c
View file @
195ea90f
...
...
@@ -356,18 +356,24 @@ VOID INTERNET_SendCallback(object_header_t *hdr, DWORD_PTR dwContext,
heap_free
(
lpvNewInfo
);
}
static
void
SendAsyncCallbackProc
(
WORKREQUEST
*
workRequest
)
typedef
struct
{
task_header_t
hdr
;
DWORD_PTR
context
;
DWORD
status
;
LPVOID
status_info
;
DWORD
status_info_len
;
}
send_callback_task_t
;
static
void
SendAsyncCallbackProc
(
task_header_t
*
hdr
)
{
s
truct
WORKREQ_SENDCALLBACK
const
*
req
=
&
workRequest
->
u
.
SendCallback
;
s
end_callback_task_t
*
task
=
(
send_callback_task_t
*
)
hdr
;
TRACE
(
"%p
\n
"
,
workRequest
->
hdr
);
TRACE
(
"%p
\n
"
,
task
->
hdr
.
hdr
);
INTERNET_SendCallback
(
workRequest
->
hdr
,
req
->
dwContext
,
req
->
dwInternetStatus
,
req
->
lpvStatusInfo
,
req
->
dwStatusInfoLength
);
INTERNET_SendCallback
(
task
->
hdr
.
hdr
,
task
->
context
,
task
->
status
,
task
->
status_info
,
task
->
status_info_len
);
/* And frees the copy of the status info */
heap_free
(
req
->
lpvStatusI
nfo
);
heap_free
(
task
->
status_i
nfo
);
}
void
SendAsyncCallback
(
object_header_t
*
hdr
,
DWORD_PTR
dwContext
,
...
...
@@ -385,24 +391,22 @@ void SendAsyncCallback(object_header_t *hdr, DWORD_PTR dwContext,
if
(
hdr
->
dwFlags
&
INTERNET_FLAG_ASYNC
)
{
WORKREQUEST
*
task
;
struct
WORKREQ_SENDCALLBACK
*
req
;
void
*
lpvStatusInfo_copy
=
lpvStatusInfo
;
send_callback_task_t
*
task
;
void
*
lpvStatusInfo_copy
=
lpvStatusInfo
;
if
(
lpvStatusInfo
)
{
lpvStatusInfo_copy
=
heap_alloc
(
dwStatusInfoLength
);
memcpy
(
lpvStatusInfo_copy
,
lpvStatusInfo
,
dwStatusInfoLength
);
}
if
(
lpvStatusInfo
)
{
lpvStatusInfo_copy
=
heap_alloc
(
dwStatusInfoLength
);
memcpy
(
lpvStatusInfo_copy
,
lpvStatusInfo
,
dwStatusInfoLength
);
}
task
=
alloc_async_task
(
hdr
,
SendAsyncCallbackProc
,
sizeof
(
*
task
));
req
=
&
task
->
u
.
SendCallback
;
req
->
dwContext
=
dwContext
;
req
->
dwInternetStatus
=
dwInternetStatus
;
req
->
lpvStatusInfo
=
lpvStatusInfo_copy
;
req
->
dwStatusInfoLength
=
dwStatusInfoLength
;
task
->
context
=
dwContext
;
task
->
status
=
dwInternetStatus
;
task
->
status_info
=
lpvStatusInfo_copy
;
task
->
status_info_len
=
dwStatusInfoLength
;
INTERNET_AsyncCall
(
task
);
INTERNET_AsyncCall
(
&
task
->
hdr
);
}
else
INTERNET_SendCallback
(
hdr
,
dwContext
,
dwInternetStatus
,
...
...
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