Open hanneskl opened 9 years ago
Ditto here! Stackoverflow also has a thread on this issue but no real solutions yet:
No update on this from anyone yet? I'm experiencing the same issue.
We have the same bug, will you fix it in the future release?
I'm still seeing this as well :(
libGPUSupportMercury.dylib
gpus_ReturnNotPermittedKillClient
3
AGXGLDriver
(null)
4 WebCore
WebCore::GraphicsContext3D::reshape(int, int) + 528
5
WebCore
WebCore::WebGLRenderingContextBase::initializeNewContext() + 716
"Same Crash I am also facing.. Not sure but I think its render for a webview some video or image data but It is 100% sure that this has been occurred to iPone 5c or iPhone 5 or lower end devices."
same crash here too. all ios 10 users.
Any progress on this issue ?
This happens to me as well, even though we don't use youtube-ios-player-helper.
I changed something in my code. I think Crash should no more:
//Webview load
`typedef void (CallFuc)(id, SEL, BOOL); typedef BOOL (GetFuc)(id, SEL); -(BOOL)webView:(UIWebView*)view enableGL:(BOOL)bEnable { BOOL bRet = NO; do { Ivar internalVar = class_getInstanceVariable([view class], "_internal"); if (!internalVar) { NSLog(@"enable GL _internal invalid!"); break; }
UIWebViewInternal* internalObj = object_getIvar(view, internalVar);
Ivar browserVar = class_getInstanceVariable(object_getClass(internalObj), "browserView");
if (!browserVar)
{
NSLog(@"enable GL browserView invalid!");
break;
}
id webbrowser = object_getIvar(internalObj, browserVar);
Ivar webViewVar = class_getInstanceVariable(object_getClass(webbrowser), "_webView");
if (!webViewVar)
{
NSLog(@"enable GL _webView invalid!");
break;
}
id webView = object_getIvar(webbrowser, webViewVar);
if (!webView)
{
NSLog(@"enable GL webView obj nil!");
}
if(object_getClass(webView) != NSClassFromString(@"WebView"))
{
NSLog(@"enable GL webView not WebView!");
break;
}
SEL selector = NSSelectorFromString(@"_setWebGLEnabled:");
IMP impSet = [webView methodForSelector:selector];
CallFuc func = (CallFuc)impSet;
func(webView, selector, bEnable);
SEL selectorGet = NSSelectorFromString(@"_webGLEnabled");
IMP impGet = [webView methodForSelector:selectorGet];
GetFuc funcGet = (GetFuc)impGet;
BOOL val = funcGet(webView, selector);
bRet = (val == bEnable);
}while(NO);
return bRet;
}`
call it before UIWebView loadRequest and set bEnable = NO. will resolve this crash there is also another way, monitor application backgroud and forceground event. when enter background call webView:(UIWebView*)view enableGL: NO and when forceground call it with YES
Lets do this change and try once.
@arun-perk hope your code work!!!!!
@huangturen hi, did you test it?
Approx. 1% of the times, my app crashes after loadWithVideoId:playerVars: in WebCore::GraphicsContext3D::reshape(int, int)
A few people are experienceing this http://stackoverflow.com/questions/29742314/youtube-embedded-player-crashed-with-gpus-returnnotpermittedkillclient-on-ios-8
Thread : Crashed: WebThread 0 libmetal_timestamp.dylib 6705782536 (Missing) 1 libmetaltimestamp.dylib 6705786564 (Missing) 2 WebCore 6831457744 WebCore::GraphicsContext3D::reshape(int, int) + 528 3 WebCore 6840935668 WebCore::WebGLRenderingContextBase::initializeNewContext() + 640 4 WebCore 6840934296 WebCore::WebGLRenderingContextBase::WebGLRenderingContextBase(WebCore::HTMLCanvasElement, WTF::PassRefPtrWebCore::GraphicsContext3D, WebCore::GraphicsContext3D::Attributes) + 516 5 WebCore 6840906856 WebCore::WebGLRenderingContext::WebGLRenderingContext(WebCore::HTMLCanvasElement, WTF::PassRefPtrWebCore::GraphicsContext3D, WebCore::GraphicsContext3D::Attributes) + 40 6 WebCore 6840932204 WebCore::WebGLRenderingContextBase::create(WebCore::HTMLCanvasElement, WebCore::WebGLContextAttributes, WTF::String const&) + 1280 7 WebCore 6828066264 WebCore::HTMLCanvasElement::getContext(WTF::String const&, WebCore::CanvasContextAttributes) + 348 8 WebCore 6828065688 WebCore::JSHTMLCanvasElement::getContext(JSC::ExecState_) + 212 9 JavaScriptCore 6558016240 llint_entry + 25056 10 JavaScriptCore 6558014836 llint_entry + 23652 11 JavaScriptCore 6558014836 llint_entry + 23652 12 JavaScriptCore 6558014836 llint_entry + 23652 13 JavaScriptCore 6558014836 llintentry + 23652 14 JavaScriptCore 6557990648 vmEntryToJavaScript + 312 15 JavaScriptCore 6557125704 JSC::JITCode::execute(JSC::VM, JSC::ProtoCallFrame) + 180 16 JavaScriptCore 6553559304 JSC::Interpreter::executeCall(JSC::ExecState, JSC::JSObject, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 400 17 JavaScriptCore 6554288572 JSC::boundFunctionCall(JSC::ExecState) + 512 18 JavaScriptCore 6558016240 llint_entry + 25056 19 JavaScriptCore 6558015300 llint_entry + 24116 20 JavaScriptCore 6558014836 llint_entry + 23652 21 JavaScriptCore 6558014836 llintentry + 23652 22 JavaScriptCore 6557990648 vmEntryToJavaScript + 312 23 JavaScriptCore 6557125704 JSC::JITCode::execute(JSC::VM, JSC::ProtoCallFrame) + 180 24 JavaScriptCore 6553559304 JSC::Interpreter::executeCall(JSC::ExecState, JSC::JSObject, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 400 25 JavaScriptCore 6554288572 JSC::boundFunctionCall(JSC::ExecState) + 512 26 JavaScriptCore 6558016240 llint_entry + 25056 27 JavaScriptCore 6558014836 llintentry + 23652 28 JavaScriptCore 6557990648 vmEntryToJavaScript + 312 29 JavaScriptCore 6557125704 JSC::JITCode::execute(JSC::VM, JSC::ProtoCallFrame) + 180 30 JavaScriptCore 6553559304 JSC::Interpreter::executeCall(JSC::ExecState, JSC::JSObject, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 400 31 JavaScriptCore 6554288572 JSC::boundFunctionCall(JSC::ExecState) + 512 32 JavaScriptCore 6558016240 llint_entry + 25056 33 JavaScriptCore 6558014836 llintentry + 23652 34 JavaScriptCore 6557990648 vmEntryToJavaScript + 312 35 JavaScriptCore 6557125704 JSC::JITCode::execute(JSC::VM, JSC::ProtoCallFrame) + 180 36 JavaScriptCore 6553559304 JSC::Interpreter::executeCall(JSC::ExecState, JSC::JSObject, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 400 37 JavaScriptCore 6554671068 JSC::call(JSC::ExecState, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&, WTF::NakedPtrJSC::Exception&) + 80 38 WebCore 6827754464 WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext, WebCore::Event) + 828 39 WebCore 6830770836 WebCore::EventTarget::fireEventListeners(WebCore::Event, WebCore::EventTargetData, WTF::Vector<WebCore::RegisteredEventListener, 1ul, WTF::CrashOnOverflow, 16ul>&) + 696 40 WebCore 6826760128 WebCore::EventTarget::fireEventListeners(WebCore::Event) + 328 41 WebCore 6828099052 WebCore::EventTarget::dispatchEvent(WTF::PassRefPtrWebCore::Event) + 116 42 WebCore 6830482360 WebCore::DOMWindow::dispatchMessageEventWithOriginCheck(WebCore::SecurityOrigin, WTF::PassRefPtrWebCore::Event, WTF::PassRefPtrInspector::ScriptCallStack) + 108 43 WebCore 6830482136 WebCore::DOMWindow::postMessageTimerFired(WebCore::PostMessageTimer&) + 152 44 WebCore 6830502016 WebCore::PostMessageTimer::fired() + 28 45 WebCore 6826307996 WebCore::ThreadTimers::sharedTimerFiredInternal() + 148 46 WebCore 6826307804 WebCore::timerFired(CFRunLoopTimer, void) + 36 47 CoreFoundation 6529715260 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION + 28 48 CoreFoundation 6529714400 CFRunLoopDoTimer + 884 49 CoreFoundation 6529703924 CFRunLoopRun + 1520 50 CoreFoundation 6528847008 CFRunLoopRunSpecific + 384 51 WebCore 6826698060 RunWebThread(void*) + 456 52 libsystem_pthread.dylib 6888520488 _pthread_body + 156 53 libsystem_pthread.dylib 6888520332 _pthread_body + 154 54 libsystem_pthread.dylib 6888509480 thread_start + 4