gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnash-commit] /srv/bzr/gnash/avm2 r9685: Fix segfault caused by nul


From: Tom Stellard
Subject: Re: [Gnash-commit] /srv/bzr/gnash/avm2 r9685: Fix segfault caused by null objects in the scope stack.
Date: Mon, 17 Nov 2008 16:09:52 +0800

On Mon, Nov 17, 2008 at 1:15 AM, strk <address@hidden> wrote:
> As for the as_error, wrap it always in IF_VERBOSE_ASCODING_ERRORS
> so any error can also be disabled at compile time.
> Still, you don't want to abort if user passes a NULL property,
> so you'd do something like:
>
>
>        prop = getProperty();
>        if ( !prop )
>        {
>                IF_VERBOSE_ASCODING_ERRORS(
>                log_aserror(_("..."), ...);
>                );
>                return;
>        }
>        pushStack(prop);
>
> --strk;
>
>

In this case, if the property is null then nothing is pushed onto the
stack, this could cause some problems with the following opcodes.
Anytime AVM2 tries to manipulate the stack it will think there are
more items on the stack than there actually are.  This will cause
other opcodes to fail in ways that might not be so clear.  Is this OK?
 Is the current expectation that after an actionscript error the movie
behavior is undefined?

-Tom




reply via email to

[Prev in Thread] Current Thread [Next in Thread]