Wenn ich auf einer bestimmten internen Website den Web Inspector in Safari 7 öffne, hängt er sich sofort auf und dann stürzt der gesamte Tab ab. Wenn ich den abgestürzten Tab schließe, bekomme ich dann diese Meldung in der Konsole:
1/22/14 10:54:27.896 AM com.apple.launchd[1]: (com.apple.WebKit.WebContent.D50214F7-A6C9-46E5-8F06-71C873A2D4B8[96246]) Exited with code: 1
Leider kann ich keinen Link oder Code für die Website selbst teilen, da sie intern ist, aber hier sind einige zusätzliche Details:
Ich habe diese Frage gefunden , die so klingt, als würde sie dasselbe Problem beschreiben, aber es gibt keine weiteren Details und die dortige Lösung funktioniert bei mir nicht, weshalb ich dies als neue Frage poste.
UPDATE: Ein weiteres mögliches Teil des Puzzles – der Web Inspector stürzt nur ab, wenn ich die Site vom Server aus ansehe, nicht lokal.
Ich dachte zunächst, das läge daran, dass ich auf Pingdom und Google Analytics mit protokollagnostischen URLs verweise (die nicht lokal aufgelöst werden, also nicht geladen werden), z.
//www.google-analytics.com...
Das ließ mich denken, dass etwas in einem dieser Skripte den Absturz verursachte, was erklären würde, warum er nur auf der gehosteten Seite auftrat (wo die Pfade aufgelöst werden). Aber keine Würfel: Selbst wenn ich diesen URLs das Präfix voranstelle http://
, stürzt der Web Inspector nicht ab, wenn ich die Seite lokal betrachte, sondern nur außerhalb des Servers.
Ich habe gerade genau das gleiche Problem auf einer Website behoben. Es ist ärgerlich, wenn ein Debugger verschluckt wird, sodass er Ihnen nicht helfen kann, das Problem zu finden!
Mein Problem wurde durch eine streunende Klasse verursacht, die ihren Weg in einen Stil fand.
<div style="background: #ffb380; padding-bottom:30px; width:300px; text-center;">
Das Entfernen des Textcenters hat das Problem behoben und der Web-Inspector wird korrekt geladen. Ich würde erwarten, dass Sie auch einen Fehler auf der Seite haben, der dazu führt, dass der Web-Inspektor erstickt. Zwei Vorgehensweisen kann ich empfehlen:
Der Absturz sollte ein Absturzprotokoll erzeugen. Denn jeder Web-Content läuft in einem eigenen Prozess. Öffnen Sie /Applications/Utilities/Console.app und geben Sie WebContent ein. Dies sollte Ihnen einen Absturzbericht zeigen:
30.01.2014 21:39:20.697 ReportCrash[4191]: Absturzbericht für com.apple.WebKit.WebContent[331] Version 9537 (9537.73.11) in /Benutzer/Benutzername/Library/Logs/DiagnosticReports/com gespeichert. apple.WebKit.WebContent_2014-01-30-213920-1_My-Mac.crash
Es wird auch eine Schaltfläche geben: auf die Sie klicken können, um weitere Details zu erhalten.
Darin sehen Sie Zeilen wie:
Crashed Thread: 18 Dispatch queue: CA::CG::Queue
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Application Specific Information:
abort() called
Posten Sie diesen Abschnitt und den Thread, in dem es heißt, dass es abgestürzt ist. Mein Beispiel ist Thread 18
Es wird zwei Einträge für den Thread geben. Einer, der so aussieht:
18 com.apple.HIToolbox 0x00007fff8f7cecb7 ReceiveNextEventCommon + 479
und noch eins weiter unten:
Thread 18 Crashed:: Dispatch queue: CA::CG::Queue
0 libsystem_kernel.dylib 0x00007fff96301866 __pthread_kill + 10
1 libsystem_pthread.dylib 0x00007fff8d0f235c pthread_kill + 92
2 libsystem_c.dylib 0x00007fff904adbba abort + 125
3 libGPUSupportMercury.dylib 0x00007fff95e551b6 gpusKillClient + 111
4 libGPUSupportMercury.dylib 0x00007fff95e5651a gpusSubmitDataBuffers + 161
5 com.apple.GeForceGLDriver 0x00001234402eefe1 0x123440000000 + 3076065
6 com.apple.GeForceGLDriver 0x00001234402eee49 0x123440000000 + 3075657
7 com.apple.QuartzCore 0x00007fff9a4f7cf4 CA::CG::Renderer::flush(bool) + 44
8 com.apple.QuartzCore 0x00007fff9a4f4fb5 CA::CG::IOSurfaceQueue::flush_renderer(CA::CG::Queue::FlushMode) + 117
9 com.apple.QuartzCore 0x00007fff9a4f6b5d CA::CG::Queue::render_callback(void*) + 555
10 libdispatch.dylib 0x00007fff9781d2ad _dispatch_client_callout + 8
11 libdispatch.dylib 0x00007fff9781f68f _dispatch_queue_drain + 451
12 libdispatch.dylib 0x00007fff978209dd _dispatch_queue_invoke + 110
13 libdispatch.dylib 0x00007fff9781efa3 _dispatch_root_queue_drain + 75
14 libdispatch.dylib 0x00007fff97820193 _dispatch_worker_thread2 + 40
15 libsystem_pthread.dylib 0x00007fff8d0f2ef8 _pthread_wqthread + 314
16 libsystem_pthread.dylib 0x00007fff8d0f5fb9 start_wqthread + 13
Wenn Sie diese Abschnitte hier veröffentlichen, kann jemand den Fehler erkennen oder auch nicht.
daGUY
-webkit-
Präfix in einem bestimmten Selektor verwende. Und wieder stürzt der Web Inspector nicht ab, wenn ich die Seite lokal inspiziere ...daw
daGUY
daw