… SystemState::needsAVM2() and _never_ from SystemState::setEngineData().
EngineCreator and SystemState::createEngines() don't actually _create_ any engines, they just start them (indirectly) and start the VM. So rename them SystemStarter and SystemState::start() respectively. EngineData::setupMainThreadCallback() doesn't actually _set up_ a callback. It just _performs_ the callback. So rename it EngineData::mainThreadCallback()
or not to play sound and/or video. (Actual support for the switch has not been implemented yet.) This commit also splits EngineData into EngineData and GtkEngineData. There are now 4 EngineData classes: * EngineData: the main EngineData class. Serves both as superclass and as the EngineData class to use for headless execution. * GtkEngineData: the base class for GTK-based EngineData classes * StandaloneEngineData: the EngineData class for the standalone GTK player * PluginEngineData: the EngineData class for the (GTK based) plugin All GTK code in main.cpp and swf.cpp has been moved to the GtkEngineData class and/or it's subclasses.
They currently just convert to string and do not properly escape to XML elems and attributes as described in ECMA-357 section 10.0 Still this makes the new YouTube player with high definition videos work instead of crashing.