From: hpoussin@svn.reactos.com
Implement SetupGetInfFileListW and SetupGetInfInformationW Inf file parser now accept UNICODE files with FF FE header Return required buffer size when buffer is too small in SetupGetLineTextA/W, SetupGetStringFieldA/W
Updated files: trunk/reactos/lib/setupapi/parser.c trunk/reactos/lib/setupapi/setupapi.spec
SetupGetStringFieldW() (and possibly others too) now return failure and set an error of ERROR_INSUFFICIENT_BUFFER when the passed in buffer and size are NULL and 0 resp. I think this is not correct. MSDN says:
"If this function is called with a ReturnBuffer of NULL and a ReturnBufferSize of zero, the function puts the buffer size needed to hold the specified data into the variable pointed to by RequiredSize. If the function succeeds in this, the return value is a nonzero value."
So buffer == NULL and size == 0 is a special case. Other code (e.g. the call in lib/setupapi/install.c line 328) depends on this behaviour and is now broken too.
Gé van Geldorp.