On Fri, Mar 9, 2018 at 8:31 PM, Karsten Merker <mer...@debian.org> wrote:
> There is one thing that I am a bit unsure about, though, and that > is Mozilla's use of WORD and DWORD in their size definitions as I > haven't found any documentation about that. hiya karsten, ok so someone from mozilla is really going to have to double-check this, or perhaps todd from activestate would know, or brendan eitch may know (i don't have an active email address for him). my understanding is that the mozilla team copied microsoft's DCE/RPC implementation (which microsoft called MSRPC) and also wrote something that was "inspired" by COM, called XPCOM: they screwed it up royally by leaving out the absolutely critical critical part, which is co-classes (a run-time version of c++ multiple inheritance: unnnbelievably important, and because they didn't implement it, the problems kept compounding, and eventually they ripped XPCOM out). now, because the decision and "inspiration" was such a long time ago, they cut over the *win32* code, and hence some of the win32 code-conventions. WORD in win32 is *specifically* defined as 16-bit, and DWORD *specifically* as 32-bit. https://msdn.microsoft.com/en-us/library/windows/desktop/aa383751%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396 now, what i don't know is: did they keep those conventions during the f***-up known as "ripping out XPCOM"? the purpose of XPCOM was to provide a stable standard / API for their own developers and for 3rd party developers. they failed on both counts... so may no longer care and may have changed the definition of WORD and DWORD... but this is a bit of a stretch. honestly, this is something that really needs an answer and clarification from mozilla, or someone like todd (hi todd) who knows more about it. l.