d3d9: update locked_rect only if wined3d_surface_map succeeded

Stefan Dösinger stefandoesinger at gmail.com
Thu Oct 3 15:50:41 CDT 2013


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 2013-10-03 21:45, schrieb Henri Verbeet:
> On 3 October 2013 21:16, Lasse Rasinen <lrasinen at iki.fi> wrote:
>> According to debugging output, Artemis Spaceship Bridge Simulator
>> 2.0 calls LockRect twice on the same texture (for whatever
>> reason) and crashes.
>> 
>> http://bugs.winehq.org/show_bug.cgi?id=34271
>> 
>> This change prevents the locked_rect being overwritten with
>> garbage in that case, and the game no longer crashes.
>> 
> I think this patch makes sense, but could you please add a test
> case as well? Ideally we'd also have similar tests for other
> resources (i.e., textures, volumes, vertex buffers, index buffers)
> and D3D versions (ddraw, d3d8), but that's not a strict
> requirement.
I'd expect that the correct behavior is to set pBits to NULL.
test_volume_locking() demonstrates this for volumes.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJSTdihAAoJEN0/YqbEcdMwFOoP/RJbSrIe02Zs+3kZ3orWZTW9
kYDUNQd1kBPE4FPn4XxRBN4n8imOylpNj5M8hrAVSUlXzHhYJ7r3MWCGL9p+Xgra
ycYCN36u9eRMgo3LLzw3HH1z/D3qObwzHEgVZFa6UVgBfUqKxuWmbRLRm51uF9B+
YslkqGyX6d3+BqFO3Xw1h4AA+BxeEBmR/dCmMhEdzcRhgUPaCRjd0UiPnAD9SNLk
9hNbkmp6P5dfvz4fbYFmtbCiGwy0ma6BuyA9Oh925fQ7vcka6OHmIU78R5FU1zMF
GEMQ9rNz/coWGWs+eFh0u09WXK3BlgN+cz8YTF/bH6iRazsyfuKNrmyVXXAyxG/c
PuqTt4HhJ459KuFUGsa+he/VdqOKeoxj/h/0s/aNRnn/k6L5Coa0HUVT2BqOVi3e
4wLnHog5nwJzPMzCu89QZtJVtg9lCpfkRPPSMxt5YuM1SRoZFXCjSs9mms9TBhtt
b41UK9Oy3bJVh16YdPxNj1AFpdXpngeK19jpjErH+nhXtjm6uOKinFsKYD/8L285
cRLvyND3SYK2JxyezAEEuUJlA95qKFZdcLqUPjj2ZAoXEeMCgVefIJIRPQ/znM8V
vZHH1ejo0SvtcpidTa4LLCyccbUqTPl1BpSXPLbrRiTqwdIeDuWHNo/rTVRVLGBZ
JmhUXEaVBE3Uuo+VzPbD
=38ER
-----END PGP SIGNATURE-----



More information about the wine-devel mailing list