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
0c659a23
Commit
0c659a23
authored
Jun 11, 2022
by
Piotr Caban
Committed by
Alexandre Julliard
Jun 17, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
d3dx10: Add support for ID3DX10ThreadPump parameter in D3DX10CreateTextureFromFileW.
Signed-off-by:
Piotr Caban
<
piotr@codeweavers.com
>
parent
591fd06b
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
22 additions
and
6 deletions
+22
-6
texture.c
dlls/d3dx10_43/texture.c
+22
-6
No files found.
dlls/d3dx10_43/texture.c
View file @
0c659a23
...
...
@@ -631,17 +631,33 @@ HRESULT WINAPI D3DX10CreateTextureFromFileW(ID3D10Device *device, const WCHAR *s
if
(
!
src_file
)
return
E_FAIL
;
if
(
FAILED
((
hr
=
load_file
(
src_file
,
&
buffer
,
&
size
)))
)
if
(
pump
)
{
if
(
hresult
)
*
hresult
=
hr
;
ID3DX10DataProcessor
*
processor
;
ID3DX10DataLoader
*
loader
;
if
(
FAILED
((
hr
=
D3DX10CreateAsyncFileLoaderW
(
src_file
,
&
loader
))))
return
hr
;
if
(
FAILED
((
hr
=
D3DX10CreateAsyncTextureProcessor
(
device
,
load_info
,
&
processor
))))
{
ID3DX10DataLoader_Destroy
(
loader
);
return
hr
;
}
if
(
FAILED
((
hr
=
ID3DX10ThreadPump_AddWorkItem
(
pump
,
loader
,
processor
,
hresult
,
(
void
**
)
texture
))))
{
ID3DX10DataLoader_Destroy
(
loader
);
ID3DX10DataProcessor_Destroy
(
processor
);
}
return
hr
;
}
hr
=
D3DX10CreateTextureFromMemory
(
device
,
buffer
,
size
,
load_info
,
pump
,
texture
,
hresult
);
if
(
SUCCEEDED
((
hr
=
load_file
(
src_file
,
&
buffer
,
&
size
))))
{
hr
=
create_texture
(
device
,
buffer
,
size
,
load_info
,
texture
);
free
(
buffer
);
}
if
(
hresult
)
*
hresult
=
hr
;
return
hr
;
}
...
...
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