ddraw.c: avoid memory overwrite in GetDeviceIdentifier()
Stefan Dösinger
stefandoesinger at gmx.at
Mon Oct 12 14:42:08 CDT 2009
> diff --git a/dlls/ddraw/tests/visual.c b/dlls/ddraw/tests/visual.c
> index 450d231..645fa8d 100644
> --- a/dlls/ddraw/tests/visual.c
> +++ b/dlls/ddraw/tests/visual.c
The visual.c file doesn't seem quite right for this test. There's no
really matching file, but I think ddrawmodes.c is better, since that
file mainly tests IDirectDraw behavior, while visual.c is mainly about
d3d.
> memcpy(DDDI->szDriver, deviceidentifier.szDriver,
MAX_DDDEVICEID_STRING);
> memcpy(DDDI->szDescription, deviceidentifier.szDescription,
MAX_DDDEVICEID_STRING);
It's probably worth testing what happens when the string is shorter
than the max length(as it is most likely the case on all windows
boxes). Are the remaining bytes in szDriver unchanged, as if you were
using strcpy rather than memcpy. I can imagine that they're left
untoched(strcpy), set to garbage(memcpy) or set to zero(memset, then
strcpy)
More information about the wine-devel
mailing list