Skip to content
  • andersca@apple.com's avatar
    WebCore: <rdar://problem/7007541> · 5efc6b59
    andersca@apple.com authored
    CrashTracer: 4800+ crashes in Safari at com.apple.WebKit • WTF::HashTableIterator...
            
    Reviewed by Oliver Hunt.
    
    Make RuntimeObjectImp more robust against m_instance being a null (which can happen if an OOP plug-in
    crashes while we're calling into it).
            
    * bridge/runtime_object.cpp:
    (JSC::RuntimeObjectImp::RuntimeObjectImp):
    (JSC::RuntimeObjectImp::~RuntimeObjectImp):
    (JSC::RuntimeObjectImp::invalidate):
    (JSC::RuntimeObjectImp::fallbackObjectGetter):
    (JSC::RuntimeObjectImp::fieldGetter):
    (JSC::RuntimeObjectImp::methodGetter):
    (JSC::RuntimeObjectImp::getOwnPropertySlot):
    (JSC::RuntimeObjectImp::getOwnPropertyDescriptor):
    (JSC::RuntimeObjectImp::put):
    (JSC::RuntimeObjectImp::defaultValue):
    (JSC::RuntimeObjectImp::getCallData):
    (JSC::RuntimeObjectImp::getConstructData):
    (JSC::RuntimeObjectImp::getPropertyNames):
    * bridge/runtime_object.h:
    (JSC::RuntimeObjectImp::getInternalInstance):
    
    WebKit/mac: <rdar://problem/7007541> 
    CrashTracer: 4800+ crashes in Safari at com.apple.WebKit • WTF::HashTableIterator...
    
    Reviewed by Oliver Hunt.
    
    Add null checks for m_instanceProxy (It will be null when a plug-in has crashed).
            
    * Plugins/Hosted/ProxyInstance.mm:
    (WebKit::ProxyInstance::invoke):
    (WebKit::ProxyInstance::supportsInvokeDefaultMethod):
    (WebKit::ProxyInstance::supportsConstruct):
    (WebKit::ProxyInstance::getPropertyNames):
    (WebKit::ProxyInstance::methodsNamed):
    (WebKit::ProxyInstance::fieldNamed):
    (WebKit::ProxyInstance::fieldValue):
    (WebKit::ProxyInstance::setFieldValue):
    (WebKit::ProxyInstance::invalidate):
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48492 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    5efc6b59