On Sunday 28 December 2003 02:53 pm, Stefan Leichter wrote:
> Hello,
>
> during playing with ie5.5 installer i noticed that the installing of some
> cab files failed directly after the extract call. Doing exactly the same
> extract call with the same cabinet file and the same content of the first
> parameter i got a crash with native cabinet dll. The debugger shows at the
> end of the function a "ret 8" assembler comand.
> This means to remove 8 words (not bytes) from the stack because the segment
> attribute is set to 32 bit (the pop command right before the ret is done
> for a 32 bit register and does not have the opcode 0x66 in front to change
> the register length).
> Therefore the function extract must have 4 parameters instead of two.
>
> The bad thing is that the installer throws an exception instead of
> aborting.
>
> ChangeLog
> --------------
> the function ectract has four parameters not two
Hmm, sounds like you are more of a natural at deducing this stuff than I, so I
am happy to defer to your judgement... but I am slightly surprised, as I
vaguely recall convincing myself that I had verified that it was right.
Since ie5setup was probably my test app, maybe I added arguments until I
stopped seeing winedbg, and declared it to be a success :P ... or did someone
else do this part? Can't remember. No objection -- if its an improvement in
ie5setup, it's surely right. Just thinking "aloud". Thanks for debugging
this.
Out of curiosity, was it w98 or NT you were (not) emulating?
--
gmt
"It is to be the assent and ratification of the several States,
derived from the supreme authority in each State, the authority
of the people themselves. Â The act, therefore, establishing the
Constitution, will not be a NATIONAL, but a FEDERAL act." --James
Madison, Federalist No. 39