dlls/userenv: fixed stubs GetUserProfileDirectoryW/A (7)
Paul Vriens
paul.vriens.wine at gmail.com
Fri Mar 6 07:47:16 CST 2009
Andreas Rosenberg wrote:
>
> ------------------------------------------------------------------------
>
>
It's quite common for these functions to check for the needed buffersize when
buffer=NULL and size=0 is passed.
I did a quick check on W2K3 and this is what is returned:
sizePath = 0;
SetLastError( 0xDEADBEEF );
r = GetUserProfileDirectoryA( htoken , NULL, &sizePath );
userenv.c:298: (A) r : 0, sizePath : 0, GLE : 87/00000057
sizePath = 0;
SetLastError( 0xDEADBEEF );
r = GetUserProfileDirectoryW( htoken , NULL, &sizePath );
userenv.c:304: (W) r : 0, sizePath : 40, GLE : 122/0000007a
So one suggestion is to also add some A-checks to the tests. Another one is not
to rely on buffer[MAX_PATH] but use the returned required buffersize for further
processing (HeapAlloc).
--
Cheers,
Paul.
More information about the wine-devel
mailing list