summaryrefslogtreecommitdiffstats
path: root/src/scripttools
diff options
context:
space:
mode:
authorKent Hansen <khansen@trolltech.com>2009-08-11 12:03:28 (GMT)
committerKent Hansen <khansen@trolltech.com>2009-08-11 12:03:28 (GMT)
commit73a86eaf8136959cbac60af540ee8faadf454015 (patch)
tree28d107e106c4b00033bba2eadd325a7fef1569b4 /src/scripttools
parentf2f338a922d20ad36c9849f5ea3208a8c4f1674a (diff)
downloadQt-73a86eaf8136959cbac60af540ee8faadf454015.zip
Qt-73a86eaf8136959cbac60af540ee8faadf454015.tar.gz
Qt-73a86eaf8136959cbac60af540ee8faadf454015.tar.bz2
make it possible to pop all items in a scope chain and then push to it
A lot of the JSC::ExecState functions rely on scopeChain() not being 0. This means we shouldn't pop the scope chain if doing so would make it empty; otherwise when you call e.g. pushScope() or evaluate(), you will crash. So instead of popping the chain completely, we now set the sole scope chain item's object pointer to 0 and add appropriate checks elsewhere. A second issue, not solved in this commit, is that JSC expects the Global Object to always be the last item in every scope chain. If it's not, you will crash.
Diffstat (limited to 'src/scripttools')
0 files changed, 0 insertions, 0 deletions