Re: [PATCH] Correct prototypes in w32api
Danny Smith <[email protected]>
| Newsgroups | gmane.comp.gnu.mingw.patches |
|---|---|
| Message-ID | <001401c215d4$2fcc8da0$e590a7cb@DANNY> |
----- Original Message ----- From: "Casper Hornstrup" <[email protected]> To: "Danny Smith" <[email protected]> Sent: Monday, 17 June 2002 00:29 Subject: Re: [MinGW-patches] [PATCH] Correct prototypes in w32api søn, 2002-06-16 kl. 10:56 skrev Danny Smith: > > ----- Original Message ----- > From: "Casper Hornstrup" <[email protected]> > To: <[email protected]> > Sent: Sunday, 16 June 2002 02:02 > Subject: [MinGW-patches] [PATCH] Correct prototypes in w32api > > > > Casper, could you please double check these. I'm finding > inconsistencies with my PSDK-Aug 2001 docs. In particular, could you > check some of the CONST's. Most that I've checked are okay, but there > are a few that look questionable. > I just updated my Platform SDK from msdn.microsoft.com (May 2002) and verified them all. I'll send in patches for one header at a time. You are right that it should be SECURITY_ATTRIBUTES* and not LPSECURITY_ATTRIBUTES. Thanks for double checking, Casper, I don't mean to be anal, but I was a bit overwhelmed with the flood of patches and didn't think I would have time to carefully scrutinize everything. I trust that everything is in order now that you've checked again. > > Another spot check found that this change (in winuser.h) contradicts my > docs: > -int WINAPI MessageBoxIndirectA(LPMSGBOXPARAMSA); > -int WINAPI MessageBoxIndirectW(LPMSGBOXPARAMSW); > +int WINAPI MessageBoxIndirectA(CONST LPMSGBOXPARAMSA); > +int WINAPI MessageBoxIndirectW(CONST LPMSGBOXPARAMSW); According to new PSDK, May 2002 it should be const LPMSGBOXPARAMS[A|W], not CONST LPMSGBOXPARAMS[A|W]. but it seem to have a const modifier. I will change it to "const" in next patch. OK. > Some more general questions: > Why all the fuss of PFOO vs LPFOO? Is this for the sake of Win16? They may be from Win16, but MS use them in Win32 APIs too. My reason for changing them is that the function signatures of the ReactOS DLL's are sometimes different from the w32api prototypes. This causes the build to fail. So I'm left with three choices, a) change the ReactOS DLL function signatures to match the w32api prototypes or b) change the w32api prototypes to match the ReactOS DLL function signatures, or c) correct both w32api prototypes and ReactOS DLL function signatures to match MS documentation. I choose c) because a) and b) are unsafe in that, if someone decides to correct the w32api prototypes in the future, building ReactOS with w32api will be broken. c) Is my preference too. > Where do I find docs on the 16-bit typedefs (LONG16 and others) in > basetsd.h. Are these for Win16? I did some checking and you are right, they seem to be only for Win16. Forget that change. OK > > > It would be much easier to review if patch was broken up, either by > header, or by some common fault that you are correcting. > > Danny I'll break them up by header and resubmit them. Casper Thanks very much. I do appreciate all the effort you've put into this. Danny _______________________________________________________________ Sponsored by: ThinkGeek at http://www.ThinkGeek.com/