[PATCH (try 3) 2/2] dpvoice: Turn GetCompressionTypes into a semi-stub.

Stefan Dösinger stefandoesinger at gmail.com
Sat Jan 17 05:13:54 CST 2015


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

Am 2015-01-16 um 20:15 schrieb Alex Henrie:
> No. *pdwNumElements has to be at least 1 or the game crashes.
Ok

> Right. Very little of dpvoice is implemented right now, but this 
> semi-stub gives us a starting point for building the rest.
That's fine with me, but you'll have to convince Alexandre that this
is a step in the right direction. To phrase it another way: How much
effort would a proper enumeration take? Do you have plans to implement
bigger parts of dpvoice?

Does avoiding this crash improve usability of the game? For example,
does single player work without installing native dplay?

> I copied and pasted the variable names from 
> dpvclient_GetCompressionTypes and dpvserver_GetCompressionTypes, so
> I am merely matching the variable conventions already present in
> this DLL.
Yeah, I know they exist in many places (and probably originate from
the headers). Hungarian notation is something we want to get rid of
from all of Wine, so deviating from existing code in that regard is fine.

>> struct { DVCOMPRESSIONINFO info; const WCHAR name[]; } codec = { 
>> {80, {0x8de12fd4,0x7cb3,0x48ce 
>> {0xa7,0xe8,0x9c,0x47,0xa2,0x2e,0x8a,0xc5}}, &codec.name, NULL, 0,
>> 64000}}, {'M','S','-','P','C','M',' ','6','4','
>> ','k','b','i','t','/','s',0}; };
> 
> There are a couple of problems with this suggestion:
> 
> 1. C only allows one flexible array per struct. We would have to 
> switch to fixed, manually hardcoded array sizes in order to add
> more codecs to the list. Also, ANSI C does not allow flexible
> arrays in structs at all, so this syntax could be a problem for
> some compilers.
> 
> 2. In Windows, the codec names are localized and stored in
> resource files in other DLLs.
Overall it is a bit related to the first problem. I can live with
either way if we decide to keep the semi-stub.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBAgAGBQJUukPyAAoJEN0/YqbEcdMwsJIQAIIJqcYvKA66PIIkOCkvz/ov
bKTI2RAM1CDeW1temyAsS8vkZLAimNNejC7lK7R/GYa+W4UO3XwO7vSBBf5Xtmt4
ZgqkbGJNnAGUzQknMDeDQ9rc8uloSD5c/yZKY9qqC2eFD/5NozFXb6DqlRI8bBOh
3iT1Ri4pgpfJT2GL25GwOLC/5fxqhhoxvDfIiWahYes/sizQyEr2aoMu9REPQr8P
C4/ozd11hKIbR2IXwKOHx3AWV3mU9nJiwqNRimRubq7HfZZrciUJlVyeWyBhxKRC
PxKkJ/YbkZoSEbE+i+jK6HXPFPtdnl26lOL7sMJdgNFgGZxFEZGpQwjfvEGnX0Zy
CDcI03fd5asmI9+hhIVPlf3HxijhAPPsmO6/Yyt/gGboTK3UTQOUONLSMVzbbYWO
zTkx1i94/StYsOs+p/il0c2E6k9KbXyqG61lt7xQ38NmngiHM11DMN96fLN8UL2k
vHIPZudE8dCyvkYTcnWiywQjlEPGQgEFB4+gJiTiDCFVxHaZid1ko92SOgL95Bal
sp+tsoQ4mPGkue2aLnc30O40pXA+Kk1Sn6sLR8FldHlFbNbOYobywxddpF+O9gU9
77YUDoJ/2Qwf4d8QuefGHiNLcHD1q8t/1d0GlQSXgf4CjsBpmk1eLdL39W1GBMqq
c6L7mM6L2ZCFaiKYrNC1
=kMZU
-----END PGP SIGNATURE-----



More information about the wine-devel mailing list