<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>74585</bug_id>
          
          <creation_ts>2011-12-14 21:46:52 -0800</creation_ts>
          <short_desc>Crash when navigating with arrow key into empty anchor block with padding</short_desc>
          <delta_ts>2012-05-01 20:35:32 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac (Intel)</rep_platform>
          <op_sys>OS X 10.7</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WORKSFORME</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P1</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Daniel Jalkut">jalkut</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>leviw</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xji</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>521645</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-14 21:46:52 -0800</bug_when>
    <thetext>1. Enter the following HTML into the snippet editor, or load it as a standalone web page:

&lt;div contentEditable=&quot;true&quot;&gt;
Click to place the editing cursor anywhere on this line ... then click the down arrow.&lt;br /&gt;
&lt;a style=&quot;background-color:red; padding-left:200px;&quot;&gt;&lt;/a&gt;
&lt;/div&gt;

2. Follow the instructions of clicking and pressing the arrow key down.

100% reproduceable crash on shipping Safari and with the latest nightly build from yesterday.

Note that it&apos;s not as ridiculous as it seems to have an empty anchor. The real-world scenario where I saw this crash involved an &quot;empty&quot; anchor that nonetheless had a background image and padding, and was intended to be clicked.

Process:         WebProcess [46551]
Path:            /System/Library/PrivateFrameworks/WebKit2.framework/WebProcess.app/Contents/MacOS/WebProcess
Identifier:      com.apple.WebProcess
Version:         7534.52 (7534.52.7)
Build Info:      WebKit2-7534052007000000~1
Code Type:       X86-64 (Native)
Parent Process:  Safari [46416]

Date/Time:       2011-12-15 00:40:38.083 -0500
OS Version:      Mac OS X 10.7.2 (11C74)
Report Version:  9

Interval Since Last Report:          203930 sec
Crashes Since Last Report:           54
Per-App Interval Since Last Report:  976533 sec
Per-App Crashes Since Last Report:   14
Anonymous UUID:                      88E4A792-CFE4-4739-B750-B9A97FE938B4

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000035

VM Regions Near 0x35:
--&gt; 
    __TEXT                 0000000102e7c000-0000000102e7d000 [    4K] r-x/rwx SM=COW  /System/Library/PrivateFrameworks/WebKit2.framework/WebProcess.app/Contents/MacOS/WebProcess

Application Specific Information:
objc[46551]: garbage collection is OFF

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x00007fff8fef8ea3 WebCore::RootInlineBox::closestLeafChildForLogicalLeftPosition(int, bool) + 103
1   com.apple.WebCore             	0x00007fff9006bd5d WebCore::nextLinePosition(WebCore::VisiblePosition const&amp;, int) + 1261
2   com.apple.WebCore             	0x00007fff90069af5 WebCore::FrameSelection::modifyMovingForward(WebCore::TextGranularity) + 1517
3   com.apple.WebCore             	0x00007fff90047565 WebCore::FrameSelection::modify(WebCore::FrameSelection::EAlteration, WebCore::SelectionDirection, WebCore::TextGranularity, bool) + 775
4   com.apple.WebCore             	0x00007fff90047316 WebCore::FrameSelection::modify(WebCore::FrameSelection::EAlteration, WebCore::SelectionDirection, WebCore::TextGranularity, bool) + 184
5   com.apple.WebCore             	0x00007fff900ea79f _ZN7WebCoreL15executeMoveDownEPNS_5FrameEPNS_5EventENS_19EditorCommandSourceERKN3WTF6StringE + 31
6   com.apple.WebCore             	0x00007fff9004409d WebCore::Editor::Command::execute(WTF::String const&amp;, WebCore::Event*) const + 171
7   com.apple.WebCore             	0x00007fff9008639f WebCore::Editor::Command::execute(WebCore::Event*) const + 31
8   com.apple.WebKit2             	0x00007fff924060b2 WebKit::WebPage::executeKeypressCommandsInternal(WTF::Vector&lt;WebCore::KeypressCommand, 0ul&gt; const&amp;, WebCore::KeyboardEvent*) + 270
9   com.apple.WebKit2             	0x00007fff924063ef WebKit::WebPage::handleEditingKeyboardEvent(WebCore::KeyboardEvent*, bool) + 473
10  com.apple.WebKit2             	0x00007fff92422c7e WebKit::WebEditorClient::handleKeyboardEvent(WebCore::KeyboardEvent*) + 26
11  com.apple.WebCore             	0x00007fff900861a4 WebCore::EventHandler::defaultKeyboardEventHandler(WebCore::KeyboardEvent*) + 64
12  com.apple.WebCore             	0x00007fff8fcf1511 WebCore::Node::defaultEventHandler(WebCore::Event*) + 155
13  com.apple.WebCore             	0x00007fff8fcf0bdb WebCore::EventDispatcher::dispatchEvent(WTF::PassRefPtr&lt;WebCore::Event&gt;) + 1079
14  com.apple.WebCore             	0x00007fff8fcf0768 WebCore::EventDispatchMediator::dispatchEvent(WebCore::EventDispatcher*) const + 40
15  com.apple.WebCore             	0x00007fff8fcf0669 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WebCore::EventDispatchMediator const&amp;) + 41
16  com.apple.WebCore             	0x00007fff8fcf05d7 WebCore::Node::dispatchEvent(WTF::PassRefPtr&lt;WebCore::Event&gt;) + 55
17  com.apple.WebCore             	0x00007fff8fecd274 WebCore::EventTarget::dispatchEvent(WTF::PassRefPtr&lt;WebCore::Event&gt;, int&amp;) + 86
18  com.apple.WebCore             	0x00007fff9008575e WebCore::EventHandler::keyEvent(WebCore::PlatformKeyboardEvent const&amp;) + 976
19  com.apple.WebKit2             	0x00007fff923fed62 WebKit::WebPage::keyEvent(WebKit::WebKeyboardEvent const&amp;) + 110
20  com.apple.WebKit2             	0x00007fff92427c37 void CoreIPC::handleMessage&lt;Messages::WebPage::KeyEvent, WebKit::WebPage, void (WebKit::WebPage::*)(WebKit::WebKeyboardEvent const&amp;)&gt;(CoreIPC::ArgumentDecoder*, WebKit::WebPage*, void (WebKit::WebPage::*)(WebKit::WebKeyboardEvent const&amp;)) + 98
21  com.apple.WebKit2             	0x00007fff9238b6ae CoreIPC::Connection::dispatchMessage(CoreIPC::Connection::Message&lt;CoreIPC::ArgumentDecoder&gt;&amp;) + 172
22  com.apple.WebKit2             	0x00007fff9238b5c7 CoreIPC::Connection::dispatchMessages() + 145
23  com.apple.WebKit2             	0x00007fff92387f03 RunLoop::performWork() + 111
24  com.apple.WebKit2             	0x00007fff92387e74 RunLoop::performWork(void*) + 76
25  com.apple.CoreFoundation      	0x00007fff8afb9b51 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
26  com.apple.CoreFoundation      	0x00007fff8afb93bd __CFRunLoopDoSources0 + 253
27  com.apple.CoreFoundation      	0x00007fff8afe01a9 __CFRunLoopRun + 905
28  com.apple.CoreFoundation      	0x00007fff8afdfae6 CFRunLoopRunSpecific + 230
29  com.apple.HIToolbox           	0x00007fff8c7863d3 RunCurrentEventLoopInMode + 277
30  com.apple.HIToolbox           	0x00007fff8c78d63d ReceiveNextEventCommon + 355
31  com.apple.HIToolbox           	0x00007fff8c78d4ca BlockUntilNextEventMatchingListInMode + 62
32  com.apple.AppKit              	0x00007fff8dc843f1 _DPSNextEvent + 659
33  com.apple.AppKit              	0x00007fff8dc83cf5 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 135
34  com.apple.AppKit              	0x00007fff8dc8062d -[NSApplication run] + 470
35  com.apple.WebKit2             	0x00007fff924117bd WebKit::WebProcessMain(WebKit::CommandLine const&amp;) + 587
36  com.apple.WebKit2             	0x00007fff923fb9ce WebKitMain + 268
37  com.apple.WebProcess          	0x0000000102e7ce56 0x102e7c000 + 3670
38  com.apple.WebProcess          	0x0000000102e7cd64 0x102e7c000 + 3428

Thread 1:: Dispatch queue: com.apple.libdispatch-manager
0   libsystem_kernel.dylib        	0x00007fff879647e6 kevent + 10
1   libdispatch.dylib             	0x00007fff91cbc5be _dispatch_mgr_invoke + 923
2   libdispatch.dylib             	0x00007fff91cbb14e _dispatch_mgr_thread + 54

Thread 2:: JavaScriptCore::BlockFree
0   libsystem_kernel.dylib        	0x00007fff87963bca __psynch_cvwait + 10
1   libsystem_c.dylib             	0x00007fff8776b274 _pthread_cond_wait + 840
2   com.apple.JavaScriptCore      	0x00007fff867dc5f7 WTF::ThreadCondition::timedWait(WTF::Mutex&amp;, double) + 151
3   com.apple.JavaScriptCore      	0x00007fff86a08ccf JSC::Heap::blockFreeingThreadMain() + 319
4   com.apple.JavaScriptCore      	0x00007fff86a08d09 JSC::Heap::blockFreeingThreadStartFunc(void*) + 9
5   libsystem_c.dylib             	0x00007fff877678bf _pthread_start + 335
6   libsystem_c.dylib             	0x00007fff8776ab75 thread_start + 13

Thread 3:: WebCore: LocalStorage
0   libsystem_kernel.dylib        	0x00007fff87963bca __psynch_cvwait + 10
1   libsystem_c.dylib             	0x00007fff8776b274 _pthread_cond_wait + 840
2   com.apple.JavaScriptCore      	0x00007fff867dc5a0 WTF::ThreadCondition::timedWait(WTF::Mutex&amp;, double) + 64
3   com.apple.WebCore             	0x00007fff8fcd2d5a WTF::MessageQueue&lt;WebCore::LocalStorageTask&gt;::waitForMessage() + 132
4   com.apple.WebCore             	0x00007fff8fcd2cb3 WebCore::LocalStorageThread::threadEntryPoint() + 99
5   com.apple.WebCore             	0x00007fff8fcd2bfb WebCore::LocalStorageThread::threadEntryPointCallback(void*) + 9
6   libsystem_c.dylib             	0x00007fff877678bf _pthread_start + 335
7   libsystem_c.dylib             	0x00007fff8776ab75 thread_start + 13

Thread 4:: com.apple.NSURLConnectionLoader
0   libsystem_kernel.dylib        	0x00007fff8796267a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff87961d71 mach_msg + 73
2   com.apple.CoreFoundation      	0x00007fff8afd7b6c __CFRunLoopServiceMachPort + 188
3   com.apple.CoreFoundation      	0x00007fff8afe02d4 __CFRunLoopRun + 1204
4   com.apple.CoreFoundation      	0x00007fff8afdfae6 CFRunLoopRunSpecific + 230
5   com.apple.Foundation          	0x00007fff8bb6d0ab +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] + 335
6   com.apple.Foundation          	0x00007fff8bb617fe -[NSThread main] + 68
7   com.apple.Foundation          	0x00007fff8bb61776 __NSThread__main__ + 1575
8   libsystem_c.dylib             	0x00007fff877678bf _pthread_start + 335
9   libsystem_c.dylib             	0x00007fff8776ab75 thread_start + 13

Thread 5:: com.apple.CFSocket.private
0   libsystem_kernel.dylib        	0x00007fff87963df2 __select + 10
1   com.apple.CoreFoundation      	0x00007fff8b028f9b __CFSocketManager + 1355
2   libsystem_c.dylib             	0x00007fff877678bf _pthread_start + 335
3   libsystem_c.dylib             	0x00007fff8776ab75 thread_start + 13

Thread 6:: WebCore: LocalStorage
0   libsystem_kernel.dylib        	0x00007fff87963bca __psynch_cvwait + 10
1   libsystem_c.dylib             	0x00007fff8776b274 _pthread_cond_wait + 840
2   com.apple.JavaScriptCore      	0x00007fff867dc5a0 WTF::ThreadCondition::timedWait(WTF::Mutex&amp;, double) + 64
3   com.apple.WebCore             	0x00007fff8fcd2d5a WTF::MessageQueue&lt;WebCore::LocalStorageTask&gt;::waitForMessage() + 132
4   com.apple.WebCore             	0x00007fff8fcd2cb3 WebCore::LocalStorageThread::threadEntryPoint() + 99
5   com.apple.WebCore             	0x00007fff8fcd2bfb WebCore::LocalStorageThread::threadEntryPointCallback(void*) + 9
6   libsystem_c.dylib             	0x00007fff877678bf _pthread_start + 335
7   libsystem_c.dylib             	0x00007fff8776ab75 thread_start + 13

Thread 7:
0   libsystem_kernel.dylib        	0x00007fff87964192 __workq_kernreturn + 10
1   libsystem_c.dylib             	0x00007fff87769594 _pthread_wqthread + 758
2   libsystem_c.dylib             	0x00007fff8776ab85 start_wqthread + 13

Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000000  rbx: 0x0000000000000001  rcx: 0x0000000103166948  rdx: 0x0000000000000001
  rdi: 0x0000000103166d60  rsi: 0x0000000000000067  rbp: 0x00007fff62a79670  rsp: 0x00007fff62a79640
   r8: 0x00007fff62a79628   r9: 0x0000000000000000  r10: 0x0000000000000030  r11: 0x00007ff69a128960
  r12: 0x0000000000000000  r13: 0x000000010a8b23c0  r14: 0x0000000000000067  r15: 0x0000000000000000
  rip: 0x00007fff8fef8ea3  rfl: 0x0000000000010246  cr2: 0x0000000000000035
Logical CPU: 2

Binary Images:
       0x102e7c000 -        0x102e7cfff  com.apple.WebProcess (7534.52 - 7534.52.7) &lt;119A6F31-64D6-32B5-A8A4-E9FACFF688E7&gt; /System/Library/PrivateFrameworks/WebKit2.framework/WebProcess.app/Contents/MacOS/WebProcess
       0x102e85000 -        0x102e85fff  WebProcessShim.dylib (534.52.7 - compatibility 1.0.0) &lt;D8CC57E7-6E7A-39E8-8EE6-78128E07A8B4&gt; /System/Library/PrivateFrameworks/WebKit2.framework/WebProcess.app/Contents/MacOS/WebProcessShim.dylib
       0x102eb7000 -        0x102f1ffff  com.apple.CoreSymbolication (2.1 - 71) &lt;C391E76A-255F-39A2-B3F0-0D67FF841A20&gt; /System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication
       0x102f5d000 -        0x102fb9ff7  com.apple.Symbolication (1.3 - 91) &lt;58F8CDE7-632B-3EB7-880B-70B7EE342B80&gt; /System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication
       0x102ff9000 -        0x10302ffff  com.apple.DebugSymbols (93 - 93) &lt;C4093285-5AFE-36FA-900C-183192E0467B&gt; /System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols
       0x1064b5000 -        0x1064b6fff  ATSHI.dylib (??? - ???) &lt;F13B3CE7-DFD5-3FB4-B56F-73F6348A80EE&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/ATSHI.dylib
    0x7fff62a7c000 -     0x7fff62ab0ac7  dyld (195.5 - ???) &lt;4A6E2B28-C7A2-3528-ADB7-4076B9836041&gt; /usr/lib/dyld
    0x7fff85965000 -     0x7fff85972ff7  libbz2.1.0.dylib (1.0.5 - compatibility 1.0.0) &lt;8EDE3492-D916-37B2-A066-3E0F054411FD&gt; /usr/lib/libbz2.1.0.dylib
    0x7fff85982000 -     0x7fff859abfff  com.apple.CoreServicesInternal (113.8 - 113.8) &lt;C1A3CF1B-BC45-3FC6-82B3-1511EBBA9D51&gt; /System/Library/PrivateFrameworks/CoreServicesInternal.framework/Versions/A/CoreServicesInternal
    0x7fff859ac000 -     0x7fff85dd9fff  libLAPACK.dylib (??? - ???) &lt;4F2E1055-2207-340B-BB45-E4F16171EE0D&gt; /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
    0x7fff85dda000 -     0x7fff85e1afff  libtidy.A.dylib (??? - ???) &lt;E500CDB9-C010-3B1A-B995-774EE64F39BE&gt; /usr/lib/libtidy.A.dylib
    0x7fff85e1b000 -     0x7fff85ebafff  com.apple.LaunchServices (480.21 - 480.21) &lt;6BFADEA9-5BC1-3B53-A013-488EB7F1AB57&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
    0x7fff85ebb000 -     0x7fff85f09fff  libauto.dylib (??? - ???) &lt;D8AC8458-DDD0-3939-8B96-B6CED81613EF&gt; /usr/lib/libauto.dylib
    0x7fff85f0a000 -     0x7fff85f30ff7  com.apple.framework.familycontrols (3.0 - 300) &lt;41A6DFC2-EAF5-390A-83A1-C8832528705C&gt; /System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/FamilyControls
    0x7fff85f31000 -     0x7fff85f4efff  libPng.dylib (??? - ???) &lt;3C70A94C-9442-3E11-AF51-C1B0EF81680E&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib
    0x7fff85fb8000 -     0x7fff85fc6ff7  libkxld.dylib (??? - ???) &lt;65BE345D-6618-3D1A-9E2B-255E629646AA&gt; /usr/lib/system/libkxld.dylib
    0x7fff85fc7000 -     0x7fff86012ff7  com.apple.SystemConfiguration (1.11.1 - 1.11) &lt;F832FE21-5509-37C6-B1F1-48928F31BE45&gt; /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
    0x7fff86013000 -     0x7fff86037ff7  com.apple.RemoteViewServices (1.2 - 39) &lt;862849C8-84C1-32A1-B87E-B29E74778C9F&gt; /System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices
    0x7fff8606e000 -     0x7fff86079ff7  libc++abi.dylib (14.0.0 - compatibility 1.0.0) &lt;8FF3D766-D678-36F6-84AC-423C878E6D14&gt; /usr/lib/libc++abi.dylib
    0x7fff86382000 -     0x7fff8638dff7  com.apple.speech.recognition.framework (4.0.19 - 4.0.19) &lt;7ADAAF5B-1D78-32F2-9FFF-D2E3FBB41C2B&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition
    0x7fff8638e000 -     0x7fff86391fff  libMatch.1.dylib (??? - ???) &lt;B5F68196-AB9D-3899-8A0A-76001720C479&gt; /usr/lib/libMatch.1.dylib
    0x7fff863ee000 -     0x7fff86458fff  com.apple.framework.IOKit (2.0 - ???) &lt;87D55F1D-CDB5-3D13-A5F9-98EA4E22F8EE&gt; /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
    0x7fff864bf000 -     0x7fff86618fff  com.apple.audio.toolbox.AudioToolbox (1.7.1 - 1.7.1) &lt;4877267E-F736-3019-85D3-40A32A042A80&gt; /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
    0x7fff86619000 -     0x7fff86646ff7  com.apple.opencl (1.50.63 - 1.50.63) &lt;DB335C5C-3ABD-38C8-B6A5-8436EE1484D3&gt; /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL
    0x7fff86647000 -     0x7fff8666eff7  libsandbox.1.dylib (??? - ???) &lt;E30D1C79-C6B3-3167-AF20-045055A9C607&gt; /usr/lib/libsandbox.1.dylib
    0x7fff8666f000 -     0x7fff866a2ff7  com.apple.GSS (2.1 - 2.0) &lt;9A2C9736-DA10-367A-B376-2C7A584E6C7A&gt; /System/Library/Frameworks/GSS.framework/Versions/A/GSS
    0x7fff866cf000 -     0x7fff866d0ff7  libremovefile.dylib (21.0.0 - compatibility 1.0.0) &lt;C6C49FB7-1892-32E4-86B5-25AD165131AA&gt; /usr/lib/system/libremovefile.dylib
    0x7fff867d1000 -     0x7fff86a5cfff  com.apple.JavaScriptCore (7534.52 - 7534.52.7) &lt;4B188A38-3A5B-327D-ABE9-8EE2420B3791&gt; /System/Library/Frameworks/JavaScriptCore.framework/Versions/A/JavaScriptCore
    0x7fff86a5d000 -     0x7fff86d79ff7  com.apple.CoreServices.CarbonCore (960.18 - 960.18) &lt;6020C3FB-6125-3EAE-A55D-1E77E38BEDEA&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
    0x7fff86f58000 -     0x7fff86f5cfff  libmathCommon.A.dylib (2026.0.0 - compatibility 1.0.0) &lt;FF83AFF7-42B2-306E-90AF-D539C51A4542&gt; /usr/lib/system/libmathCommon.A.dylib
    0x7fff86f5d000 -     0x7fff86f88ff7  libxslt.1.dylib (3.24.0 - compatibility 3.0.0) &lt;8051A3FC-7385-3EA9-9634-78FC616C3E94&gt; /usr/lib/libxslt.1.dylib
    0x7fff86fde000 -     0x7fff87039ff7  com.apple.HIServices (1.10 - ???) &lt;BAB8B422-7047-3D2D-8E0A-13FCF153E4E7&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices
    0x7fff8703a000 -     0x7fff871c4ff7  com.apple.WebKit (7534.52 - 7534.52.7) &lt;D858B247-71C2-395A-9A44-A0B8B0713E3A&gt; /System/Library/Frameworks/WebKit.framework/Versions/A/WebKit
    0x7fff87233000 -     0x7fff87435fff  libicucore.A.dylib (46.1.0 - compatibility 1.0.0) &lt;38CD6ED3-C8E4-3CCD-89AC-9C3198803101&gt; /usr/lib/libicucore.A.dylib
    0x7fff87436000 -     0x7fff8743bfff  libcache.dylib (47.0.0 - compatibility 1.0.0) &lt;B7757E2E-5A7D-362E-AB71-785FE79E1527&gt; /usr/lib/system/libcache.dylib
    0x7fff8743c000 -     0x7fff8751afff  com.apple.ImageIO.framework (3.1.1 - 3.1.1) &lt;13E549F8-5BD6-3BAE-8C33-1D0BD269C081&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO
    0x7fff8751b000 -     0x7fff8757bfff  libvDSP.dylib (325.4.0 - compatibility 1.0.0) &lt;3A7521E6-5510-3FA7-AB65-79693A7A5839&gt; /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib
    0x7fff8757c000 -     0x7fff8767ffff  libsqlite3.dylib (9.6.0 - compatibility 9.0.0) &lt;7F60B0FF-4946-3639-89AB-B540D318B249&gt; /usr/lib/libsqlite3.dylib
    0x7fff87680000 -     0x7fff876bfff7  libGLImage.dylib (??? - ???) &lt;2D1D8488-EC5F-3229-B983-CFDE0BB37586&gt; /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib
    0x7fff876c0000 -     0x7fff876c5fff  libpam.2.dylib (3.0.0 - compatibility 3.0.0) &lt;D952F17B-200A-3A23-B9B2-7C1F7AC19189&gt; /usr/lib/libpam.2.dylib
    0x7fff876c6000 -     0x7fff876c6fff  com.apple.Cocoa (6.6 - ???) &lt;021D4214-9C23-3CD8-AFB2-F331697A4508&gt; /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
    0x7fff876c7000 -     0x7fff87709ff7  libcommonCrypto.dylib (55010.0.0 - compatibility 1.0.0) &lt;A5B9778E-11C3-3F61-B740-1F2114E967FB&gt; /usr/lib/system/libcommonCrypto.dylib
    0x7fff87719000 -     0x7fff877f6fef  libsystem_c.dylib (763.12.0 - compatibility 1.0.0) &lt;FF69F06E-0904-3C08-A5EF-536FAFFFDC22&gt; /usr/lib/system/libsystem_c.dylib
    0x7fff8794d000 -     0x7fff8796dfff  libsystem_kernel.dylib (1699.22.73 - compatibility 1.0.0) &lt;69F2F501-72D8-3B3B-8357-F4418B3E1348&gt; /usr/lib/system/libsystem_kernel.dylib
    0x7fff8796e000 -     0x7fff87979fff  com.apple.CommonAuth (2.1 - 2.0) &lt;BFDD0A8D-4BEA-39EC-98B3-2E083D7B1ABD&gt; /System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth
    0x7fff8797a000 -     0x7fff879e2ff7  com.apple.audio.CoreAudio (4.0.1 - 4.0.1) &lt;7966E3BE-376B-371A-A21D-9BD763C0BAE7&gt; /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
    0x7fff87a34000 -     0x7fff87ea2fff  com.apple.RawCamera.bundle (3.8.2 - 579) &lt;3D4EBC1A-4139-3E22-B407-0D4887D8D208&gt; /System/Library/CoreServices/RawCamera.bundle/Contents/MacOS/RawCamera
    0x7fff87ea3000 -     0x7fff87ea6fff  libRadiance.dylib (??? - ???) &lt;CD89D70D-F177-3BAE-8A26-644EA7D5E28E&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib
    0x7fff87eb2000 -     0x7fff87eb2fff  com.apple.Accelerate (1.7 - Accelerate 1.7) &lt;82DDF6F5-FBC3-323D-B71D-CF7ABC5CF568&gt; /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
    0x7fff87eb3000 -     0x7fff8818bff7  com.apple.security (7.0 - 55010) &lt;93713FF4-FE86-3B4C-8150-5FCC7F3320C8&gt; /System/Library/Frameworks/Security.framework/Versions/A/Security
    0x7fff88285000 -     0x7fff8828eff7  libsystem_notify.dylib (80.1.0 - compatibility 1.0.0) &lt;A4D651E3-D1C6-3934-AD49-7A104FD14596&gt; /usr/lib/system/libsystem_notify.dylib
    0x7fff882bd000 -     0x7fff882bdfff  com.apple.vecLib (3.7 - vecLib 3.7) &lt;9A58105C-B36E-35B5-812C-4ED693F2618F&gt; /System/Library/Frameworks/vecLib.framework/Versions/A/vecLib
    0x7fff882c7000 -     0x7fff882c9fff  libquarantine.dylib (36.0.0 - compatibility 1.0.0) &lt;4C3BFBC7-E592-3939-B376-1C2E2D7C5389&gt; /usr/lib/system/libquarantine.dylib
    0x7fff882dd000 -     0x7fff883dfff7  libxml2.2.dylib (10.3.0 - compatibility 10.0.0) &lt;D46F371D-6422-31B7-BCE0-D80713069E0E&gt; /usr/lib/libxml2.2.dylib
    0x7fff889a4000 -     0x7fff889a4fff  libkeymgr.dylib (23.0.0 - compatibility 1.0.0) &lt;61EFED6A-A407-301E-B454-CD18314F0075&gt; /usr/lib/system/libkeymgr.dylib
    0x7fff889a5000 -     0x7fff889adfff  libsystem_dnssd.dylib (??? - ???) &lt;7749128E-D0C5-3832-861C-BC9913F774FA&gt; /usr/lib/system/libsystem_dnssd.dylib
    0x7fff889ae000 -     0x7fff889b5fff  com.apple.NetFS (4.0 - 4.0) &lt;B9F41443-679A-31AD-B0EB-36557DAF782B&gt; /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS
    0x7fff889b6000 -     0x7fff889b7fff  libdnsinfo.dylib (395.6.0 - compatibility 1.0.0) &lt;718A135F-6349-354A-85D5-430B128EFD57&gt; /usr/lib/system/libdnsinfo.dylib
    0x7fff889b8000 -     0x7fff88a3bfef  com.apple.Metadata (10.7.0 - 627.20) &lt;E00156B0-663A-35EF-A307-A2CEB00F1845&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
    0x7fff88a3c000 -     0x7fff88a41fff  libcompiler_rt.dylib (6.0.0 - compatibility 1.0.0) &lt;98ECD5F6-E85C-32A5-98CD-8911230CB66A&gt; /usr/lib/system/libcompiler_rt.dylib
    0x7fff88a42000 -     0x7fff88b37fff  libiconv.2.dylib (7.0.0 - compatibility 7.0.0) &lt;5C40E880-0706-378F-B864-3C2BD922D926&gt; /usr/lib/libiconv.2.dylib
    0x7fff89214000 -     0x7fff89298ff7  com.apple.ApplicationServices.ATS (317.5.0 - ???) &lt;FE629F2D-6BC0-3A58-9844-D8B9A6808A00&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS
    0x7fff892ae000 -     0x7fff892affff  libDiagnosticMessagesClient.dylib (??? - ???) &lt;3DCF577B-F126-302B-BCE2-4DB9A95B8598&gt; /usr/lib/libDiagnosticMessagesClient.dylib
    0x7fff89342000 -     0x7fff89359fff  com.apple.CFOpenDirectory (10.7 - 144) &lt;9709423E-8484-3B26-AAE8-EF58D1B8FB3F&gt; /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory
    0x7fff8938b000 -     0x7fff8938ffff  libCGXType.A.dylib (600.0.0 - compatibility 64.0.0) &lt;5EEAD17D-006C-3855-8093-C7A4A97EE0D0&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCGXType.A.dylib
    0x7fff89390000 -     0x7fff893b9fff  libJPEG.dylib (??? - ???) &lt;64D079F9-256A-323B-A837-84628B172F21&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib
    0x7fff89497000 -     0x7fff89498ff7  libsystem_blocks.dylib (53.0.0 - compatibility 1.0.0) &lt;8BCA214A-8992-34B2-A8B9-B74DEACA1869&gt; /usr/lib/system/libsystem_blocks.dylib
    0x7fff89499000 -     0x7fff89499fff  com.apple.audio.units.AudioUnit (1.7.1 - 1.7.1) &lt;04C10813-CCE5-3333-8C72-E8E35E417B3B&gt; /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
    0x7fff894f0000 -     0x7fff89983fff  com.apple.Safari.framework (7534 - 7534.52.7) &lt;566A916D-C5B2-33C5-BA2C-DE1FA2B3A156&gt; /System/Library/PrivateFrameworks/Safari.framework/Versions/A/Safari
    0x7fff899d8000 -     0x7fff899fcfff  com.apple.Kerberos (1.0 - 1) &lt;1F826BCE-DA8F-381D-9C4C-A36AA0EA1CB9&gt; /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos
    0x7fff899fd000 -     0x7fff89b36fef  com.apple.vImage (5.1 - 5.1) &lt;EB634387-CD15-3246-AC28-5FB368ACCEA2&gt; /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage
    0x7fff89c16000 -     0x7fff89c23fff  libCSync.A.dylib (600.0.0 - compatibility 64.0.0) &lt;931F40EB-CA75-3A90-AC97-4DB8E210BC76&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCSync.A.dylib
    0x7fff89fc3000 -     0x7fff89fc9fff  com.apple.DiskArbitration (2.4.1 - 2.4.1) &lt;CEA34337-63DE-302E-81AA-10D717E1F699&gt; /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
    0x7fff89fca000 -     0x7fff8a00bfff  com.apple.QD (3.12 - ???) &lt;4F3C5629-97C7-3E55-AF3C-ACC524929DA2&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD
    0x7fff8a00c000 -     0x7fff8a010ff7  com.apple.CommonPanels (1.2.5 - 94) &lt;0BB2C436-C9D5-380B-86B5-E355A7711259&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels
    0x7fff8a20b000 -     0x7fff8a27bfff  com.apple.datadetectorscore (3.0 - 179.4) &lt;2A822A13-94B3-3A43-8724-98FDF698BB12&gt; /System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore
    0x7fff8a27e000 -     0x7fff8a282fff  libdyld.dylib (195.5.0 - compatibility 1.0.0) &lt;F1903B7A-D3FF-3390-909A-B24E09BAD1A5&gt; /usr/lib/system/libdyld.dylib
    0x7fff8a2ab000 -     0x7fff8a2b0fff  com.apple.OpenDirectory (10.7 - 146) &lt;91A87249-6A2F-3F89-A8DE-0E95C0B54A3A&gt; /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory
    0x7fff8a2b1000 -     0x7fff8a2f3fff  com.apple.corelocation (330.12 - 330.12) &lt;CFDF7694-382A-30A8-8347-505BA0CAF312&gt; /System/Library/Frameworks/CoreLocation.framework/Versions/A/CoreLocation
    0x7fff8a2fb000 -     0x7fff8a318ff7  com.apple.openscripting (1.3.3 - ???) &lt;A64205E6-D3C5-3E12-B1A0-72243151AF7D&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting
    0x7fff8a31e000 -     0x7fff8a324ff7  libunwind.dylib (30.0.0 - compatibility 1.0.0) &lt;1E9C6C8C-CBE8-3F4B-A5B5-E03E3AB53231&gt; /usr/lib/system/libunwind.dylib
    0x7fff8a36e000 -     0x7fff8a47afff  libcrypto.0.9.8.dylib (44.0.0 - compatibility 0.9.8) &lt;3A8E1F89-5E26-3C8B-B538-81F5D61DBF8A&gt; /usr/lib/libcrypto.0.9.8.dylib
    0x7fff8a47b000 -     0x7fff8a48fff7  com.apple.LangAnalysis (1.7.0 - 1.7.0) &lt;04C31EF0-912A-3004-A08F-CEC27030E0B2&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis
    0x7fff8a4ca000 -     0x7fff8a545ff7  com.apple.print.framework.PrintCore (7.1 - 366.1) &lt;3F140DEB-9F87-3672-97CC-F983752581AC&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore
    0x7fff8a583000 -     0x7fff8a5f8ff7  libc++.1.dylib (19.0.0 - compatibility 1.0.0) &lt;C0EFFF1B-0FEB-3F99-BE54-506B35B555A9&gt; /usr/lib/libc++.1.dylib
    0x7fff8a7fc000 -     0x7fff8a802fff  IOSurface (??? - ???) &lt;06FA3FDD-E6D5-391F-B60D-E98B169DAB1B&gt; /System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface
    0x7fff8a803000 -     0x7fff8a82afff  com.apple.PerformanceAnalysis (1.10 - 10) &lt;2A058167-292E-3C3A-B1F8-49813336E068&gt; /System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis
    0x7fff8a82b000 -     0x7fff8a837fff  com.apple.CrashReporterSupport (10.7.2 - 347) &lt;0F6D3509-9062-3647-B7C4-F25AF3AE9B71&gt; /System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport
    0x7fff8a872000 -     0x7fff8a9d8fff  com.apple.CFNetwork (520.2.5 - 520.2.5) &lt;406712D9-3F0C-3763-B4EB-868D01F1F042&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
    0x7fff8af10000 -     0x7fff8afa6ff7  libvMisc.dylib (325.4.0 - compatibility 1.0.0) &lt;642D8D54-F9F5-3FBB-A96C-EEFE94C6278B&gt; /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib
    0x7fff8afa7000 -     0x7fff8b17bfff  com.apple.CoreFoundation (6.7.1 - 635.15) &lt;FE4A86C2-3599-3CF8-AD1A-822F1FEA820F&gt; /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
    0x7fff8b22f000 -     0x7fff8b24bff7  com.apple.GenerationalStorage (1.0 - 125) &lt;31F60175-E38D-3C63-8D95-32CFE7062BCB&gt; /System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage
    0x7fff8b28b000 -     0x7fff8b32ffef  com.apple.ink.framework (1.3.2 - 110) &lt;F69DBD44-FEC8-3C14-8131-CC0245DBBD42&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink
    0x7fff8b35a000 -     0x7fff8b35bfff  libunc.dylib (24.0.0 - compatibility 1.0.0) &lt;C67B3B14-866C-314F-87FF-8025BEC2CAAC&gt; /usr/lib/system/libunc.dylib
    0x7fff8b3d3000 -     0x7fff8b3e5ff7  libbsm.0.dylib (??? - ???) &lt;349BB16F-75FA-363F-8D98-7A9C3FA90A0D&gt; /usr/lib/libbsm.0.dylib
    0x7fff8b45f000 -     0x7fff8b475ff7  com.apple.ImageCapture (7.0 - 7.0) &lt;69E6E2E1-777E-332E-8BCF-4F0611517DD0&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture
    0x7fff8b4ea000 -     0x7fff8b4f1fff  libcopyfile.dylib (85.1.0 - compatibility 1.0.0) &lt;172B1985-F24A-34E9-8D8B-A2403C9A0399&gt; /usr/lib/system/libcopyfile.dylib
    0x7fff8b4fe000 -     0x7fff8b501ff7  com.apple.securityhi (4.0 - 1) &lt;B37B8946-BBD4-36C1-ABC6-18EDBC573F03&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI
    0x7fff8b502000 -     0x7fff8bae6fff  libBLAS.dylib (??? - ???) &lt;C34F6D88-187F-33DC-8A68-C0C9D1FA36DF&gt; /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
    0x7fff8bae7000 -     0x7fff8bb06fff  libresolv.9.dylib (46.0.0 - compatibility 1.0.0) &lt;33263568-E6F3-359C-A4FA-66AD1300F7D4&gt; /usr/lib/libresolv.9.dylib
    0x7fff8bb07000 -     0x7fff8be20ff7  com.apple.Foundation (6.7.1 - 833.20) &lt;D922F590-FDA6-3D89-A271-FD35E2290624&gt; /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
    0x7fff8beb2000 -     0x7fff8bfbffff  libJP2.dylib (??? - ???) &lt;6052C973-9354-35CB-AAB9-31D00D8786F9&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib
    0x7fff8c0bf000 -     0x7fff8c186ff7  com.apple.ColorSync (4.7.0 - 4.7.0) &lt;F325A9D7-7203-36B7-8C1C-B6A4D5CC73A8&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync
    0x7fff8c1d6000 -     0x7fff8c228ff7  libGLU.dylib (??? - ???) &lt;3C9153A0-8499-3DC0-AAA4-9FA6E488BE13&gt; /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib
    0x7fff8c229000 -     0x7fff8c6f0fff  FaceCoreLight (1.4.7 - compatibility 1.0.0) &lt;E9D2A69C-6E81-358C-A162-510969F91490&gt; /System/Library/PrivateFrameworks/FaceCoreLight.framework/Versions/A/FaceCoreLight
    0x7fff8c784000 -     0x7fff8caa8fff  com.apple.HIToolbox (1.8 - ???) &lt;A3BE7C59-52E6-3A7F-9B30-24B7DD3E95F2&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
    0x7fff8cabc000 -     0x7fff8cabffff  libCoreVMClient.dylib (??? - ???) &lt;E034C772-4263-3F48-B083-25A758DD6228&gt; /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib
    0x7fff8cac4000 -     0x7fff8cadbfff  com.apple.MultitouchSupport.framework (220.62.1 - 220.62.1) &lt;F21C79C0-4B5A-3645-81A6-74F8EFA900CE&gt; /System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport
    0x7fff8cb7e000 -     0x7fff8cbbeff7  libcups.2.dylib (2.9.0 - compatibility 2.0.0) &lt;B7173CA4-CE16-3BAB-8D83-185FCEFA15F5&gt; /usr/lib/libcups.2.dylib
    0x7fff8cbbf000 -     0x7fff8cbfefff  com.apple.AE (527.7 - 527.7) &lt;B82F7ABC-AC8B-3507-B029-969DD5CA813D&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
    0x7fff8cbff000 -     0x7fff8cc53ff7  com.apple.ScalableUserInterface (1.0 - 1) &lt;1873D7BE-2272-31A1-8F85-F70C4D706B3B&gt; /System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/ScalableUserInterface.framework/Versions/A/ScalableUserInterface
    0x7fff8cc54000 -     0x7fff8cdf3fff  com.apple.QuartzCore (1.7 - 270.0) &lt;E8FC9AA4-A5CB-384B-AD29-7190A1387D3E&gt; /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
    0x7fff8d54c000 -     0x7fff8d54cfff  com.apple.Accelerate.vecLib (3.7 - vecLib 3.7) &lt;C06A140F-6114-3B8B-B080-E509303145B8&gt; /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib
    0x7fff8d54d000 -     0x7fff8d54dfff  com.apple.Carbon (153 - 153) &lt;895C2BF2-1666-3A59-A669-311B1F4F368B&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
    0x7fff8d7bd000 -     0x7fff8d870fff  com.apple.CoreText (220.11.0 - ???) &lt;4EA8E2DF-542D-38D5-ADB9-C0DAA73F898B&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreText.framework/Versions/A/CoreText
    0x7fff8d871000 -     0x7fff8d8c4fff  libFontRegistry.dylib (??? - ???) &lt;57FBD85F-41A6-3DB9-B5F4-FCC6B260F1AD&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib
    0x7fff8daf0000 -     0x7fff8db66fff  com.apple.ISSupport (1.9.8 - 56) &lt;2CEE7E6B-D841-36D8-BC9F-081B33F6E501&gt; /System/Library/PrivateFrameworks/ISSupport.framework/Versions/A/ISSupport
    0x7fff8db67000 -     0x7fff8db67fff  com.apple.CoreServices (53 - 53) &lt;043C8026-8EDD-3241-B090-F589E24062EF&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
    0x7fff8dc7b000 -     0x7fff8e87cff7  com.apple.AppKit (6.7.2 - 1138.23) &lt;5CD2C850-4F52-3BA2-BA11-3107DFD2D23C&gt; /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
    0x7fff8e87d000 -     0x7fff8e982ff7  libFontParser.dylib (??? - ???) &lt;B9A53808-C97E-3293-9C33-1EA9D4E83EC8&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib
    0x7fff8e983000 -     0x7fff8ea64fff  com.apple.CoreServices.OSServices (478.29 - 478.29) &lt;B487110E-C942-33A8-A494-3BDEDB88B1CD&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
    0x7fff8ea65000 -     0x7fff8eaeaff7  com.apple.Heimdal (2.1 - 2.0) &lt;C92E327E-CB5F-3C9B-92B0-F1680095C8A3&gt; /System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal
    0x7fff8eaeb000 -     0x7fff8eb18fe7  libSystem.B.dylib (159.1.0 - compatibility 1.0.0) &lt;095FDD3C-3961-3865-A59B-A5B0A4B8B923&gt; /usr/lib/libSystem.B.dylib
    0x7fff8eb60000 -     0x7fff8f273587  com.apple.CoreGraphics (1.600.0 - ???) &lt;A9F2451E-6F60-350E-A6E5-539669B53074&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics
    0x7fff8f274000 -     0x7fff8f28afff  libGL.dylib (??? - ???) &lt;6A473BF9-4D35-34C6-9F8B-86B68091A9AF&gt; /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
    0x7fff8f28b000 -     0x7fff8f2a8ff7  libxpc.dylib (77.17.0 - compatibility 1.0.0) &lt;72A16104-2F23-3C22-B474-1953F06F9376&gt; /usr/lib/system/libxpc.dylib
    0x7fff8f2a9000 -     0x7fff8f30bfff  com.apple.coreui (1.2.1 - 164.1) &lt;F7972630-F696-3FC5-9FCF-A6E1C8771078&gt; /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI
    0x7fff8f30c000 -     0x7fff8f312fff  libGFXShared.dylib (??? - ???) &lt;343AE6C0-EB02-333C-8D35-DF6093B92758&gt; /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib
    0x7fff8f313000 -     0x7fff8f314fff  libsystem_sandbox.dylib (??? - ???) &lt;8D14139B-B671-35F4-9E5A-023B4C523C38&gt; /usr/lib/system/libsystem_sandbox.dylib
    0x7fff8f74d000 -     0x7fff8f775ff7  com.apple.CoreVideo (1.7 - 70.1) &lt;98F917B2-FB53-3EA3-B548-7E97B38309A7&gt; /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo
    0x7fff8f776000 -     0x7fff8f779fff  com.apple.help (1.3.2 - 42) &lt;AB67588E-7227-3993-927F-C9E6DAC507FD&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help
    0x7fff8f7f7000 -     0x7fff8f8dbdef  libobjc.A.dylib (228.0.0 - compatibility 1.0.0) &lt;C5F2392D-B481-3A9D-91BE-3D039FFF4DEC&gt; /usr/lib/libobjc.A.dylib
    0x7fff8f8dc000 -     0x7fff8f917ff7  libsystem_info.dylib (??? - ???) &lt;9C8C2DCB-96DB-3471-9DCE-ADCC26BE2DD4&gt; /usr/lib/system/libsystem_info.dylib
    0x7fff8fa6e000 -     0x7fff8fa70fff  com.apple.TrustEvaluationAgent (2.0 - 1) &lt;1F31CAFF-C1C6-33D3-94E9-11B721761DDF&gt; /System/Library/PrivateFrameworks/TrustEvaluationAgent.framework/Versions/A/TrustEvaluationAgent
    0x7fff8fa71000 -     0x7fff8fa78ff7  com.apple.CommerceCore (1.0 - 17) &lt;AA783B87-48D4-3CA6-8FF6-0316396022F4&gt; /System/Library/PrivateFrameworks/CommerceKit.framework/Versions/A/Frameworks/CommerceCore.framework/Versions/A/CommerceCore
    0x7fff8fa79000 -     0x7fff8fa8bff7  libz.1.dylib (1.2.5 - compatibility 1.0.0) &lt;30CBEF15-4978-3DED-8629-7109880A19D4&gt; /usr/lib/libz.1.dylib
    0x7fff8fa8d000 -     0x7fff8fca7fef  com.apple.CoreData (104 - 358.12) &lt;33B1FA75-7970-3751-9DCC-FF809D3E1FA2&gt; /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
    0x7fff8fcb0000 -     0x7fff909bbff7  com.apple.WebCore (7534.52 - 7534.52.12) &lt;32AF92F7-44FC-3ADB-A6DD-D58A3EA88EFE&gt; /System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/Versions/A/WebCore
    0x7fff90d28000 -     0x7fff90d7ffff  libTIFF.dylib (??? - ???) &lt;FF0D9A24-6956-3F03-81EA-3EEAD22C9DB8&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
    0x7fff90d80000 -     0x7fff90da9ff7  com.apple.framework.Apple80211 (7.1.1 - 711.1) &lt;FD0675E6-6602-3C28-85AA-6A4AF6B36D78&gt; /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211
    0x7fff90daa000 -     0x7fff90e1dfff  libstdc++.6.dylib (52.0.0 - compatibility 7.0.0) &lt;6BDD43E4-A4B1-379E-9ED5-8C713653DFF2&gt; /usr/lib/libstdc++.6.dylib
    0x7fff90e80000 -     0x7fff910f3fff  com.apple.CoreImage (7.82 - 1.0.1) &lt;282801B6-5D80-3E2C-88A4-00FE29906D5A&gt; /System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage
    0x7fff91889000 -     0x7fff9188efff  libGIF.dylib (??? - ???) &lt;393E2DB5-9479-39A6-A75A-B5F20B852532&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib
    0x7fff91bb6000 -     0x7fff91cb8ff7  com.apple.PubSub (1.0.5 - 65.28) &lt;8251731B-2EAA-3957-82B6-3FF0E096645A&gt; /System/Library/Frameworks/PubSub.framework/Versions/A/PubSub
    0x7fff91cb9000 -     0x7fff91cc7fff  libdispatch.dylib (187.7.0 - compatibility 1.0.0) &lt;712AAEAC-AD90-37F7-B71F-293FF8AE8723&gt; /usr/lib/system/libdispatch.dylib
    0x7fff91cdb000 -     0x7fff91ce1fff  libmacho.dylib (800.0.0 - compatibility 1.0.0) &lt;D86F63EC-D2BD-32E0-8955-08B5EAFAD2CC&gt; /usr/lib/system/libmacho.dylib
    0x7fff91d7c000 -     0x7fff91dacff7  com.apple.DictionaryServices (1.2.1 - 158.2) &lt;3FC86118-7553-38F7-8916-B329D2E94476&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
    0x7fff91dad000 -     0x7fff91dc0ff7  libCRFSuite.dylib (??? - ???) &lt;034D4DAA-63F0-35E4-BCEF-338DD7A453DD&gt; /usr/lib/libCRFSuite.dylib
    0x7fff91dc1000 -     0x7fff91e63ff7  com.apple.securityfoundation (5.0 - 55005) &lt;0D59908C-A61B-389E-AF37-741ACBBA6A94&gt; /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation
    0x7fff91e64000 -     0x7fff91e65fff  liblangid.dylib (??? - ???) &lt;CACBE3C3-2F7B-3EED-B50E-EDB73F473B77&gt; /usr/lib/liblangid.dylib
    0x7fff91f9c000 -     0x7fff91fabff7  com.apple.opengl (1.7.5 - 1.7.5) &lt;2945F1A6-910C-3596-9988-5701B04BD821&gt; /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
    0x7fff91fac000 -     0x7fff91fefff7  libRIP.A.dylib (600.0.0 - compatibility 64.0.0) &lt;2B1571E1-8E87-364E-BC36-C9C9B5D3EAC4&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib
    0x7fff91ffe000 -     0x7fff92116ff7  com.apple.DesktopServices (1.6.1 - 1.6.1) &lt;4418EAA6-7163-3A77-ABD3-F8289796C81A&gt; /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv
    0x7fff92117000 -     0x7fff92128ff7  SyndicationUI (??? - ???) &lt;C8084303-1ABA-3FE8-A3F2-2EF67A70FF50&gt; /System/Library/PrivateFrameworks/SyndicationUI.framework/Versions/A/SyndicationUI
    0x7fff92129000 -     0x7fff921c3ff7  com.apple.SearchKit (1.4.0 - 1.4.0) &lt;4E70C394-773E-3A4B-A93C-59A88ABA9509&gt; /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
    0x7fff92228000 -     0x7fff92271fff  com.apple.framework.CoreWLAN (2.1.1 - 211.3) &lt;0FBC6087-6872-3403-A317-CE888969CF4C&gt; /System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN
    0x7fff92272000 -     0x7fff92277ff7  libsystem_network.dylib (??? - ???) &lt;5DE7024E-1D2D-34A2-80F4-08326331A75B&gt; /usr/lib/system/libsystem_network.dylib
    0x7fff92278000 -     0x7fff92287fff  libxar.1.dylib (??? - ???) &lt;58B07AA0-BC12-36E3-94FC-C252719A1BDF&gt; /usr/lib/libxar.1.dylib
    0x7fff922a6000 -     0x7fff922b4fff  com.apple.NetAuth (1.0 - 3.0) &lt;F384FFFD-70F6-3B1C-A886-F5B446E456E7&gt; /System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth
    0x7fff922b5000 -     0x7fff922cafff  com.apple.speech.synthesis.framework (4.0.74 - 4.0.74) &lt;C061ECBB-7061-3A43-8A18-90633F943295&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis
    0x7fff922d8000 -     0x7fff9230dfff  com.apple.securityinterface (5.0 - 55004) &lt;790DDF7E-6BA9-36DD-B818-2322A712E1F5&gt; /System/Library/Frameworks/SecurityInterface.framework/Versions/A/SecurityInterface
    0x7fff9235f000 -     0x7fff92369ff7  liblaunch.dylib (392.18.0 - compatibility 1.0.0) &lt;39EF04F2-7F0C-3435-B785-BF283727FFBD&gt; /usr/lib/system/liblaunch.dylib
    0x7fff9236a000 -     0x7fff9236cfff  libCVMSPluginSupport.dylib (??? - ???) &lt;61D89F3C-C64D-3733-819F-8AAAE4E2E993&gt; /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib
    0x7fff9236d000 -     0x7fff9236fff7  com.apple.print.framework.Print (7.1 - 247.1) &lt;8A4925A5-BAA3-373C-9B5D-03E0270C6B12&gt; /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print
    0x7fff92370000 -     0x7fff92523fff  com.apple.WebKit2 (7534.52 - 7534.52.7) &lt;052082D7-344A-3077-9F7B-EC74DC345DD8&gt; /System/Library/PrivateFrameworks/WebKit2.framework/Versions/A/WebKit2
    0x7fff92524000 -     0x7fff92524fff  com.apple.ApplicationServices (41 - 41) &lt;03F3FA8F-8D2A-3AB6-A8E3-40B001116339&gt; /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 8
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 165747
    thread_create: 4
    thread_set_state: 73089

VM Region Summary:
ReadOnly portion of Libraries: Total=169.3M resident=90.1M(53%) swapped_out_or_unallocated=79.2M(47%)
Writable regions: Total=1.2G written=64.7M(5%) resident=86.1M(7%) swapped_out=10.2M(1%) unallocated=1.1G(93%)
 
REGION TYPE                        VIRTUAL
===========                        =======
ATS (font support)                   32.0M
ATS (font support) (reserved)           4K        reserved VM address space (unallocated)
CG shared images                     3408K
CoreGraphics                           16K
CoreServices                         7124K
JS JIT generated code               128.0M
JS JIT generated code (reserved)    896.0M        reserved VM address space (unallocated)
JS VM register file                  4096K
JS garbage collector                 5920K
MALLOC                               90.7M
MALLOC guard page                      32K
MALLOC_LARGE (reserved)               536K        reserved VM address space (unallocated)
Memory tag=242                         12K
Memory tag=251                         48K
SQLite page cache                    2784K
STACK GUARD                          56.0M
Stack                                11.1M
VM_ALLOCATE                          16.4M
WebCore purgeable data                280K
__CI_BITMAP                            80K
__DATA                               16.4M
__IMAGE                              1256K
__LINKEDIT                           47.9M
__TEXT                              121.4M
__UNICODE                             544K
mapped file                          35.9M
shared memory                        4736K
===========                        =======
TOTAL                                 1.4G
TOTAL, minus reserved VM space      585.5M

Model: MacBookPro6,2, BootROM MBP61.0057.B0C, 2 processors, Intel Core i7, 2.8 GHz, 8 GB, SMC 1.58f16
Graphics: NVIDIA GeForce GT 330M, NVIDIA GeForce GT 330M, PCIe, 512 MB
Graphics: Intel HD Graphics, Intel HD Graphics, Built-In, 288 MB
Memory Module: BANK 0/DIMM0, 4 GB, DDR3, 1067 MHz, 0x80CE, 0x4D34373142353237334348302D4346382020
Memory Module: BANK 1/DIMM0, 4 GB, DDR3, 1067 MHz, 0x80CE, 0x4D34373142353237334348302D4346382020
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x93), Broadcom BCM43xx 1.0 (5.100.98.75.18)
Bluetooth: Version 4.0.1f4, 2 service, 11 devices, 1 incoming serial ports
Network Service: Wi-Fi, AirPort, en1
Serial ATA Device: APPLE SSD TS256B, 251 GB
Serial ATA Device: MATSHITADVD-R   UJ-898
USB Device: hub_device, 0x0424  (SMSC), 0x2514, 0xfd100000 / 2
USB Device: Hub in Apple Extended USB Keyboard, apple_vendor_id, 0x1003, 0xfd130000 / 5
USB Device: ScanSnap S1500, 0x04c5  (Fujitsu Ltd.), 0x11a2, 0xfd131000 / 8
USB Device: ET-0405A-UV2.0-3, 0x056a  (WACOM Co., Ltd.), 0x0011, 0xfd132000 / 7
USB Device: Apple Extended USB Keyboard, apple_vendor_id, 0x020b, 0xfd133000 / 6
USB Device: IR Receiver, apple_vendor_id, 0x8242, 0xfd120000 / 4
USB Device: Built-in iSight, apple_vendor_id, 0x8507, 0xfd110000 / 3
USB Device: hub_device, 0x0424  (SMSC), 0x2514, 0xfa100000 / 2
USB Device: Apple Internal Keyboard / Trackpad, apple_vendor_id, 0x0236, 0xfa120000 / 5
USB Device: BRCM2070 Hub, 0x0a5c  (Broadcom Corp.), 0x4500, 0xfa110000 / 4
USB Device: Bluetooth USB Host Controller, apple_vendor_id, 0x8218, 0xfa113000 / 7
USB Device: Internal Memory Card Reader, apple_vendor_id, 0x8403, 0xfa130000 / 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522942</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2011-12-16 12:41:22 -0800</bug_when>
    <thetext>&lt;rdar://problem/10594869&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528148</commentid>
    <comment_count>2</comment_count>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 07:45:10 -0800</bug_when>
    <thetext>The crash seems to stem from the assumption that a given InlineBox will have non-NULL leaf children.


InlineBox* RootInlineBox::closestLeafChildForLogicalLeftPosition(int leftPosition, bool onlyEditableLeaves)
{
    InlineBox* firstLeaf = firstLeafChild();
    InlineBox* lastLeaf = lastLeafChild();
    if (firstLeaf == lastLeaf &amp;&amp; (!onlyEditableLeaves || isEditableLeaf(firstLeaf)))
        return firstLeaf;

Currently the behavior when this method is reached for a box with no children, is to crash hard later in the method, trying to dereference firstLeaf.

The implicit contract for closestLeafChildForLogicalLeftPosition seems to be that it will always return a non-NULL result (its callers blindly dereference the result). So what is the appropriate return value when a RootInlineBox with no children is asked for the closestLeafChildForLogicalLeftPosition? Is it just the box itself? What if &quot;onlyEditableLeaves&quot; is true but the box itself is not editable?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528157</commentid>
    <comment_count>3</comment_count>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 08:13:23 -0800</bug_when>
    <thetext>I think in deciding how to address this bug, it should be determined whether navigating into this empty anchor block should or shouldn&apos;t succeed. I think ideally it would move the insertion position to the point in the block where a character would exist if it were part of the anchor innerHTML.

Currently if you position the cursor to the LEFT of the problematic block, and attempt to right-arrow into the block, it also fails, but doesn&apos;t crash. In this scenario, modifyMovingRight rejects the block as a navigable target, and returns the current position. This behavior would be an acceptable compromise for the attempt to move up or down into the block as well (selectNextLine and selectPreviousLine).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528187</commentid>
    <comment_count>4</comment_count>
      <attachid>120807</attachid>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 11:22:10 -0800</bug_when>
    <thetext>Created attachment 120807
Fix and manual test to prevent crashing when navigating into an empty anchor

I decided I could offer a patch that at least alleviates the crashing nature of the bug. With the attached patch, the closestLeafChild... methods in RootInlineBox are allowed to return 0, and the callers (only two I could find) are now expected to handle this situation gracefully.

I feel that ideally the behavior when navigating into this empty anchor would be to place the cursor where typing would change the innerHTML of the anchor from void to something. But I don&apos;t feel qualified to develop a patch achieving this yet.

I hope you will consider the patch as-is since it will at least change the behavior from one where WebKit crashes every time, to one where the behavior is merely a little frustrating (the cursor navigates as far in the adjacent box as possible, without entering the empty anchor).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528189</commentid>
    <comment_count>5</comment_count>
      <attachid>120807</attachid>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 11:24:48 -0800</bug_when>
    <thetext>Comment on attachment 120807
Fix and manual test to prevent crashing when navigating into an empty anchor

Oops - my patch doesn&apos;t contain the manual tests I added. Will fix and reattach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528190</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-30 11:24:55 -0800</bug_when>
    <thetext>Attachment 120807 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;ChangeLog&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u...&quot; exit_code: 1

Source/WebCore/editing/visible_units.cpp:612:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Source/WebCore/editing/visible_units.cpp:718:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Total errors found: 2 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528192</commentid>
    <comment_count>7</comment_count>
      <attachid>120809</attachid>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 11:37:06 -0800</bug_when>
    <thetext>Created attachment 120809
Patch take two

I added the ManualTests to the patch and also fixed some style issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528193</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-30 11:40:08 -0800</bug_when>
    <thetext>Attachment 120809 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;ChangeLog&apos;, u&apos;ManualTests/crash-on-arrow-i...&quot; exit_code: 1

Source/WebCore/editing/visible_units.cpp:619:  An else should appear on the same line as the preceding }  [whitespace/newline] [4]
Source/WebCore/editing/visible_units.cpp:612:  An else statement can be removed when the prior &quot;if&quot; concludes with a return, break, continue or goto statement.  [readability/control_flow] [4]
Source/WebCore/editing/visible_units.cpp:725:  An else should appear on the same line as the preceding }  [whitespace/newline] [4]
Source/WebCore/editing/visible_units.cpp:718:  An else statement can be removed when the prior &quot;if&quot; concludes with a return, break, continue or goto statement.  [readability/control_flow] [4]
Total errors found: 4 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528194</commentid>
    <comment_count>9</comment_count>
      <attachid>120809</attachid>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 11:41:47 -0800</bug_when>
    <thetext>Comment on attachment 120809
Patch take two

Ugh! Not running check-webkit-style myself diligently enough, obviously. Sorry about this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528195</commentid>
    <comment_count>10</comment_count>
      <attachid>120810</attachid>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 11:49:18 -0800</bug_when>
    <thetext>Created attachment 120810
Patch take three

To further comply with style guidelines I just removed the else statements that set root = 0. The variable is not referenced again in the function but it was my instinct to defensively nil it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528201</commentid>
    <comment_count>11</comment_count>
      <attachid>120810</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-12-30 11:58:49 -0800</bug_when>
    <thetext>Comment on attachment 120810
Patch take three

View in context: https://bugs.webkit.org/attachment.cgi?id=120810&amp;action=review

&gt; ManualTests/crash-on-arrow-into-empty-anchor.html:9
&gt; +&lt;li&gt;Press the up or down arrow key to attempt to enter the red rectangle.&lt;/li&gt;

You should be able to automate this using getSelection().modify. r- for this.

&gt; Source/WebCore/ChangeLog:8
&gt; +        Return 0 from closestLeafChildForLogicalLeftPosition instead of crashing when a non-leaf box with no children is being asked for its leaf children. Adjust logic for callers in previousLinePosition and nextLinePosition to detect 0 response and treat the box as non-navigable.

This line is way too long. Please wrap line as needed. See other entries for example.

&gt; Source/WebCore/editing/visible_units.cpp:716
&gt; +        InlineBox* leafChild = root-&gt;closestLeafChildForPoint(pointInLine, isEditablePosition(p));
&gt; +        if (leafChild) {

It&apos;s odd that we can get null here. What is box in line 702 then? Is it a root inline box? We should probably check that root box as at least line leaf in line 700 immediately after pos.getInlineBoxAndOffset(DOWNSTREAM, box, ignoredCaretOffset); and fall back to return VisiblePosition(pos, DOWNSTREAM); because that&apos;s the code path we normally use for an empty block.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528217</commentid>
    <comment_count>12</comment_count>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 12:55:25 -0800</bug_when>
    <thetext>Thanks, I am naive about the layout tests and assumed you couldn&apos;t test crashes. I&apos;ve developed a test case that uses the technique of updating the body innerHTML to a &quot;not crashed&quot; content.

(In reply to comment #11)
&gt; &gt; Source/WebCore/editing/visible_units.cpp:716
&gt; &gt; +        InlineBox* leafChild = root-&gt;closestLeafChildForPoint(pointInLine, isEditablePosition(p));
&gt; &gt; +        if (leafChild) {
&gt; 
&gt; It&apos;s odd that we can get null here. What is box in line 702 then? Is it a root inline box? We should probably check that root box as at least line leaf in line 700 immediately after pos.getInlineBoxAndOffset(DOWNSTREAM, box, ignoredCaretOffset); and fall back to return VisiblePosition(pos, DOWNSTREAM); because that&apos;s the code path we normally use for an empty block.

In the crashing scenario, line 702 is not reached.  The root is established at line 677:

    if (box) {
        root = box-&gt;root()-&gt;nextRootBox();
        // We want to skip zero height boxes.
        // This could happen in case it is a TrailingFloatsRootInlineBox.
        if (!root || !root-&gt;logicalHeight())
            root = 0;
    }

box is an InlineBox and root is established as a RootInlineBox

(gdb) p box
$1 = (&apos;WebCore::InlineBox&apos; *) 0x106d84118
(gdb) p box-&gt;root()
$2 = (const &apos;WebCore::RootInlineBox&apos; *) 0x106dcfef8
(gdb) p box-&gt;root()-&gt;nextRootBox()
$3 = (&apos;WebCore::RootInlineBox&apos; *) 0x106de5648

It is this RootInlineBox that has one child, but no &quot;leaf&quot; children.

(gdb) p root-&gt;m_firstChild
$3 = (&apos;WebCore::InlineBox&apos; *) 0x1082d42b8
(gdb) p root-&gt;m_firstChild-&gt;isLeaf()
$4 = false
(gdb) p root-&gt;m_lastChild
$5 = (&apos;WebCore::InlineBox&apos; *) 0x1082d42b8

I&apos;m in over my head here with the box stuff, so I&apos;m not sure how much more I can do on my own. But if you have a better idea for how to protect against this I&apos;m happy to execute it in the patch and test it.

Since the code at line 700 is never reached in this case, I&apos;m guessing you think we should be doing some test around line 676 to see if the first getInlineBoxAndOffset() box returned is suitable for further examination?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528219</commentid>
    <comment_count>13</comment_count>
      <attachid>120815</attachid>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 13:03:34 -0800</bug_when>
    <thetext>Created attachment 120815
Patch take four

I modified the patch to include an automated layout test. Let me know if you think we should be pursuing another means of safeguarding against the crashing behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528222</commentid>
    <comment_count>14</comment_count>
      <attachid>120817</attachid>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 13:10:59 -0800</bug_when>
    <thetext>Created attachment 120817
Patch take five: amend ChangeLog to reference the automated layout test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528231</commentid>
    <comment_count>15</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-12-30 14:37:15 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (gdb) p box
&gt; $1 = (&apos;WebCore::InlineBox&apos; *) 0x106d84118
&gt; (gdb) p box-&gt;root()
&gt; $2 = (const &apos;WebCore::RootInlineBox&apos; *) 0x106dcfef8
&gt; (gdb) p box-&gt;root()-&gt;nextRootBox()
&gt; $3 = (&apos;WebCore::RootInlineBox&apos; *) 0x106de5648
&gt; 
&gt; It is this RootInlineBox that has one child, but no &quot;leaf&quot; children.

How can it have a child and not a leaf? Can you call box-&gt;showLineTreeForThis() and print out the line tree ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528235</commentid>
    <comment_count>16</comment_count>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-30 15:15:41 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; How can it have a child and not a leaf? Can you call box-&gt;showLineTreeForThis() and print out the line tree ?

It seems that the RootInlineBox being targeted (the one that contains this pesky empty anchor node) contains only an &quot;InlineFlowBox&quot; which seems to have its &quot;isLeaf()&quot; hardcoded to false. I tried changing the implementation of isLeaf to return true if it has no children, but that seemed to cause logic problems elsewhere.

(gdb) call (void) box-&gt;showLineTreeForThis()
RenderBlock 0x10919b2d8                	P	0x10d954c30
  RootInlineBox	0x10911d638            	RenderBlock 0x10919b2d8
    InlineTextBox	0x1091c4ed8          	RenderText 0x109181a88 (0,74) &quot;Click to place the editing cursor anywhere on this line ... then click the&quot;
  RootInlineBox	0x1091c45d8            	RenderBlock 0x10919b2d8
*   InlineTextBox	0x1091d7998          	RenderText 0x109181a88 (75,86) &quot;down arrow.&quot;
    InlineTextBox	0x10dc04398          	RenderBR 0x1091a92f8   (0,1) &quot;\n&quot;
  RootInlineBox	0x10911a9e8            	RenderBlock 0x10919b2d8
    InlineFlowBox	0x1091de488          	RenderInline 0x1091849a8
(gdb) p root
$7 = (&apos;WebCore::RootInlineBox&apos; *) 0x10911a9e8
(gdb) p root-&gt;isLeaf()
$8 = false
(gdb) p root-&gt;m_firstChild-&gt;isLeaf()
$9 = false</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528263</commentid>
    <comment_count>17</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-12-30 22:22:50 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; (In reply to comment #15)
&gt; &gt; How can it have a child and not a leaf? Can you call box-&gt;showLineTreeForThis() and print out the line tree ?
&gt; 
&gt; It seems that the RootInlineBox being targeted (the one that contains this pesky empty anchor node) contains only an &quot;InlineFlowBox&quot; which seems to have its &quot;isLeaf()&quot; hardcoded to false. I tried changing the implementation of isLeaf to return true if it has no children, but that seemed to cause logic problems elsewhere.

Okay. Thanks for the clarification. I think we need to deal it around line 677 and add a similar bail out as line 706: return VisiblePosition(pos, DOWNSTREAM);.

Also, I&apos;d like to see a test case where we have some contents after the anchor. I bet your current patch won&apos;t work as expected in such case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528274</commentid>
    <comment_count>18</comment_count>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2011-12-31 05:26:26 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; Okay. Thanks for the clarification. I think we need to deal it around line 677 and add a similar bail out as line 706: return VisiblePosition(pos, DOWNSTREAM);.
&gt; 
&gt; Also, I&apos;d like to see a test case where we have some contents after the anchor. I bet your current patch won&apos;t work as expected in such case.

Can you give me some advice for how I could test the box and its children for this situation? Should it literally look for a &quot;no leaf children&quot; situation or is there a higher-level test of the found root that makes more sense? I&apos;m still very shaky on the box classes and only know a little from poking around at this bug.

I will amend the test case to have content on the bottom, too. I actually tested this manually to make sure that up-arrowing (which also crashed) is fixed as well. In the scenario where there is content on the other side of the anchor (another line), my patch does still prevent the crash, and the selection ends up at the end of the anchor line, where further arrowing will continue moving the cursor to the good line of content that follows.

Sample source for this which I will be incorporating into the test case:

&lt;div contentEditable=&quot;true&quot;&gt;
Click to place the editing cursor anywhere on this line ... then click the down arrow.&lt;br /&gt;
&lt;a style=&quot;background-color:red; padding-left:200px;&quot;&gt;&lt;/a&gt;&lt;br /&gt;
Or click here, then click the up arrow.
&lt;/div&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>613921</commentid>
    <comment_count>19</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-05-01 20:30:39 -0700</bug_when>
    <thetext>This crash no longer reproduces for me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>613924</commentid>
    <comment_count>20</comment_count>
    <who name="Daniel Jalkut">jalkut</who>
    <bug_when>2012-05-01 20:35:32 -0700</bug_when>
    <thetext>I also am not able to reproduce the crash using Safari Beta Preview or WebKit nightly. Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>120807</attachid>
            <date>2011-12-30 11:22:10 -0800</date>
            <delta_ts>2011-12-30 11:50:45 -0800</delta_ts>
            <desc>Fix and manual test to prevent crashing when navigating into an empty anchor</desc>
            <filename>PreventNavigationCrash.patch</filename>
            <type>text/plain</type>
            <size>4953</size>
            <attacher name="Daniel Jalkut">jalkut</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAzMDJjYWE2Li45ZTYxNDU5
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTEtMTItMzAgIERhbmllbCBKYWxrdXQgIDxqYWxrdXRAcmVkLXN3ZWF0ZXIuY29tPgorCisg
ICAgICAgIENyYXNoIHdoZW4gbmF2aWdhdGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5IGFu
Y2hvciBibG9jayB3aXRoIHBhZGRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTc0NTg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBNYW51YWxUZXN0cy9jcmFzaC1vbi1hcnJvdy1pbnRvLWVtcHR5LWFu
Y2hvci5odG1sOiBBZGRlZC4KKwogMjAxMS0xMi0yOCAgQ2hhbmdTZW9rIE9oICA8c2hpdmFtaWRv
d0BnbWFpbC5jb20+CiAKICAgICAgICAgW0dUS10gRml4IGNvbXBpbGF0aW9uIGlzc3VlIHdoZW4g
c2VsZWN0aW5nIG9wZW5nbCBmb3IgQWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRl
eCBiNWNiYWRjLi4yNzAyNTFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTIt
MzAgIERhbmllbCBKYWxrdXQgIDxqYWxrdXRAcmVkLXN3ZWF0ZXIuY29tPgorCisgICAgICAgIENy
YXNoIHdoZW4gbmF2aWdhdGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5IGFuY2hvciBibG9j
ayB3aXRoIHBhZGRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTc0NTg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmV0dXJuIDAgZnJvbSBjbG9zZXN0TGVhZkNoaWxkRm9yTG9naWNhbExlZnRQb3NpdGlv
biBpbnN0ZWFkIG9mIGNyYXNoaW5nIHdoZW4gYSBub24tbGVhZiBib3ggd2l0aCBubyBjaGlsZHJl
biBpcyBiZWluZyBhc2tlZCBmb3IgaXRzIGxlYWYgY2hpbGRyZW4uIEFkanVzdCBsb2dpYyBmb3Ig
Y2FsbGVycyBpbiBwcmV2aW91c0xpbmVQb3NpdGlvbiBhbmQgbmV4dExpbmVQb3NpdGlvbiB0byBk
ZXRlY3QgMCByZXNwb25zZSBhbmQgdHJlYXQgdGhlIGJveCBhcyBub24tbmF2aWdhYmxlLgorCisg
ICAgICAgIE1hbnVhbCB0ZXN0IGFkZGVkIHRvIHRydW5rL01hbnVhbFRlc3RzL2NyYXNoLW9uLWFy
cm93LWludG8tZW1wdHktYW5jaG9yLmh0bWwKKworICAgICAgICAqIGVkaXRpbmcvdmlzaWJsZV91
bml0cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpwcmV2aW91c0xpbmVQb3NpdGlvbik6CisgICAg
ICAgIChXZWJDb3JlOjpuZXh0TGluZVBvc2l0aW9uKToKKyAgICAgICAgKiByZW5kZXJpbmcvUm9v
dElubGluZUJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSb290SW5saW5lQm94OjpjbG9zZXN0
TGVhZkNoaWxkRm9yTG9naWNhbExlZnRQb3NpdGlvbik6CisKIDIwMTEtMTItMjkgIFBhdmVsIFBv
ZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3Rv
cjogc3VwcG9ydCBzb3VyY2VNYXBwaW5nVVJMIG1hZ2ljIGNvbW1lbnQuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy92aXNpYmxlX3VuaXRzLmNwcAppbmRleCBjOTE3M2NiLi45OGFiNmY5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvdmlzaWJsZV91bml0cy5jcHAKQEAgLTYwOCwxMSArNjA4LDE2IEBA
IFZpc2libGVQb3NpdGlvbiBwcmV2aW91c0xpbmVQb3NpdGlvbihjb25zdCBWaXNpYmxlUG9zaXRp
b24gJnZpc2libGVQb3NpdGlvbiwgaW50CiAgICAgaWYgKHJvb3QpIHsKICAgICAgICAgLy8gRklY
TUU6IENhbiBiZSB3cm9uZyBmb3IgbXVsdGktY29sdW1uIGxheW91dCBhbmQgd2l0aCB0cmFuc2Zv
cm1zLgogICAgICAgICBJbnRQb2ludCBwb2ludEluTGluZSA9IGFic29sdXRlTGluZURpcmVjdGlv
blBvaW50VG9Mb2NhbFBvaW50SW5CbG9jayhyb290LCBsaW5lRGlyZWN0aW9uUG9pbnQpOwotICAg
ICAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gcm9vdC0+Y2xvc2VzdExlYWZDaGlsZEZvclBv
aW50KHBvaW50SW5MaW5lLCBpc0VkaXRhYmxlUG9zaXRpb24ocCkpLT5yZW5kZXJlcigpOwotICAg
ICAgICBOb2RlKiBub2RlID0gcmVuZGVyZXItPm5vZGUoKTsKLSAgICAgICAgaWYgKG5vZGUgJiYg
ZWRpdGluZ0lnbm9yZXNDb250ZW50KG5vZGUpKQotICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9u
SW5QYXJlbnRCZWZvcmVOb2RlKG5vZGUpOwotICAgICAgICByZXR1cm4gcmVuZGVyZXItPnBvc2l0
aW9uRm9yUG9pbnQocG9pbnRJbkxpbmUpOworICAgICAgICBJbmxpbmVCb3gqIGxlYWZDaGlsZCA9
IHJvb3QtPmNsb3Nlc3RMZWFmQ2hpbGRGb3JQb2ludChwb2ludEluTGluZSwgaXNFZGl0YWJsZVBv
c2l0aW9uKHApKTsKKyAgICAgICAgaWYgKGxlYWZDaGlsZCA9PSAwKQorICAgICAgICAgICAgcm9v
dCA9IDA7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJl
ciA9IGxlYWZDaGlsZC0+cmVuZGVyZXIoKTsKKyAgICAgICAgICAgIE5vZGUqIG5vZGUgPSByZW5k
ZXJlci0+bm9kZSgpOworICAgICAgICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250
ZW50KG5vZGUpKQorICAgICAgICAgICAgICAgIHJldHVybiBwb3NpdGlvbkluUGFyZW50QmVmb3Jl
Tm9kZShub2RlKTsKKyAgICAgICAgICAgIHJldHVybiByZW5kZXJlci0+cG9zaXRpb25Gb3JQb2lu
dChwb2ludEluTGluZSk7CisgICAgICAgIH0KICAgICB9CiAgICAgCiAgICAgLy8gQ291bGQgbm90
IGZpbmQgYSBwcmV2aW91cyBsaW5lLiBUaGlzIG1lYW5zIHdlIG11c3QgYWxyZWFkeSBiZSBvbiB0
aGUgZmlyc3QgbGluZS4KQEAgLTcwOSwxMSArNzE0LDE2IEBAIFZpc2libGVQb3NpdGlvbiBuZXh0
TGluZVBvc2l0aW9uKGNvbnN0IFZpc2libGVQb3NpdGlvbiAmdmlzaWJsZVBvc2l0aW9uLCBpbnQg
bGluCiAgICAgaWYgKHJvb3QpIHsKICAgICAgICAgLy8gRklYTUU6IENhbiBiZSB3cm9uZyBmb3Ig
bXVsdGktY29sdW1uIGxheW91dCBhbmQgd2l0aCB0cmFuc2Zvcm1zLgogICAgICAgICBJbnRQb2lu
dCBwb2ludEluTGluZSA9IGFic29sdXRlTGluZURpcmVjdGlvblBvaW50VG9Mb2NhbFBvaW50SW5C
bG9jayhyb290LCBsaW5lRGlyZWN0aW9uUG9pbnQpOwotICAgICAgICBSZW5kZXJPYmplY3QqIHJl
bmRlcmVyID0gcm9vdC0+Y2xvc2VzdExlYWZDaGlsZEZvclBvaW50KHBvaW50SW5MaW5lLCBpc0Vk
aXRhYmxlUG9zaXRpb24ocCkpLT5yZW5kZXJlcigpOwotICAgICAgICBOb2RlKiBub2RlID0gcmVu
ZGVyZXItPm5vZGUoKTsKLSAgICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250ZW50
KG5vZGUpKQotICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uSW5QYXJlbnRCZWZvcmVOb2RlKG5v
ZGUpOwotICAgICAgICByZXR1cm4gcmVuZGVyZXItPnBvc2l0aW9uRm9yUG9pbnQocG9pbnRJbkxp
bmUpOworICAgICAgICBJbmxpbmVCb3gqIGxlYWZDaGlsZCA9IHJvb3QtPmNsb3Nlc3RMZWFmQ2hp
bGRGb3JQb2ludChwb2ludEluTGluZSwgaXNFZGl0YWJsZVBvc2l0aW9uKHApKTsKKyAgICAgICAg
aWYgKGxlYWZDaGlsZCA9PSAwKQorICAgICAgICAgICAgcm9vdCA9IDA7CisgICAgICAgIGVsc2Ug
eworICAgICAgICAgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IGxlYWZDaGlsZC0+cmVuZGVy
ZXIoKTsKKyAgICAgICAgICAgIE5vZGUqIG5vZGUgPSByZW5kZXJlci0+bm9kZSgpOworICAgICAg
ICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250ZW50KG5vZGUpKQorICAgICAgICAg
ICAgICAgIHJldHVybiBwb3NpdGlvbkluUGFyZW50QmVmb3JlTm9kZShub2RlKTsKKyAgICAgICAg
ICAgIHJldHVybiByZW5kZXJlci0+cG9zaXRpb25Gb3JQb2ludChwb2ludEluTGluZSk7CisgICAg
ICAgIH0KICAgICB9CiAKICAgICAvLyBDb3VsZCBub3QgZmluZCBhIG5leHQgbGluZS4gVGhpcyBt
ZWFucyB3ZSBtdXN0IGFscmVhZHkgYmUgb24gdGhlIGxhc3QgbGluZS4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290SW5saW5lQm94LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9Sb290SW5saW5lQm94LmNwcAppbmRleCBlZmRlZmE3Li4wODIwMjM1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCkBAIC00ODIsNyArNDgy
LDcgQEAgSW5saW5lQm94KiBSb290SW5saW5lQm94OjpjbG9zZXN0TGVhZkNoaWxkRm9yTG9naWNh
bExlZnRQb3NpdGlvbihpbnQgbGVmdFBvc2l0aW8KIHsKICAgICBJbmxpbmVCb3gqIGZpcnN0TGVh
ZiA9IGZpcnN0TGVhZkNoaWxkKCk7CiAgICAgSW5saW5lQm94KiBsYXN0TGVhZiA9IGxhc3RMZWFm
Q2hpbGQoKTsKLSAgICBpZiAoZmlyc3RMZWFmID09IGxhc3RMZWFmICYmICghb25seUVkaXRhYmxl
TGVhdmVzIHx8IGlzRWRpdGFibGVMZWFmKGZpcnN0TGVhZikpKQorICAgIGlmICghZmlyc3RMZWFm
IHx8IChmaXJzdExlYWYgPT0gbGFzdExlYWYgJiYgKCFvbmx5RWRpdGFibGVMZWF2ZXMgfHwgaXNF
ZGl0YWJsZUxlYWYoZmlyc3RMZWFmKSkpKQogICAgICAgICByZXR1cm4gZmlyc3RMZWFmOwogCiAg
ICAgLy8gQXZvaWQgcmV0dXJuaW5nIGEgbGlzdCBtYXJrZXIgd2hlbiBwb3NzaWJsZS4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>120809</attachid>
            <date>2011-12-30 11:37:06 -0800</date>
            <delta_ts>2011-12-30 11:50:28 -0800</delta_ts>
            <desc>Patch take two</desc>
            <filename>PreventNavigationCrashV2.patch</filename>
            <type>text/plain</type>
            <size>6410</size>
            <attacher name="Daniel Jalkut">jalkut</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAzMDJjYWE2Li45ZTYxNDU5
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTEtMTItMzAgIERhbmllbCBKYWxrdXQgIDxqYWxrdXRAcmVkLXN3ZWF0ZXIuY29tPgorCisg
ICAgICAgIENyYXNoIHdoZW4gbmF2aWdhdGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5IGFu
Y2hvciBibG9jayB3aXRoIHBhZGRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTc0NTg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBNYW51YWxUZXN0cy9jcmFzaC1vbi1hcnJvdy1pbnRvLWVtcHR5LWFu
Y2hvci5odG1sOiBBZGRlZC4KKwogMjAxMS0xMi0yOCAgQ2hhbmdTZW9rIE9oICA8c2hpdmFtaWRv
d0BnbWFpbC5jb20+CiAKICAgICAgICAgW0dUS10gRml4IGNvbXBpbGF0aW9uIGlzc3VlIHdoZW4g
c2VsZWN0aW5nIG9wZW5nbCBmb3IgQWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcKZGlmZiAtLWdpdCBh
L01hbnVhbFRlc3RzL2NyYXNoLW9uLWFycm93LWludG8tZW1wdHktYW5jaG9yLmh0bWwgYi9NYW51
YWxUZXN0cy9jcmFzaC1vbi1hcnJvdy1pbnRvLWVtcHR5LWFuY2hvci5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkwZTUxN2QKLS0tIC9kZXYvbnVsbAorKysgYi9NYW51
YWxUZXN0cy9jcmFzaC1vbi1hcnJvdy1pbnRvLWVtcHR5LWFuY2hvci5odG1sCkBAIC0wLDAgKzEs
MjkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxwPjxiPkJVRyBJRDo8L2I+
IDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDU4NSI+
NzQ1ODU8L2E+IENyYXNoIHdoZW4gbmF2aWdhdGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5
IGFuY2hvciBibG9jayB3aXRoIHBhZGRpbmc8L3A+CisKKzxwIGlkPSJ0ZXN0IiBzdHlsZT0iYmFj
a2dyb3VuZC1jb2xvcjpza3libHVlOyBwYWRkaW5nOjNweDsiPjxiPlNURVBTIFRPIFRFU1Q6PC9i
PiAKKzxvbD4KKzxsaT5DbGljayBpbiB0aGUgY29udGVudCBhYm92ZSBvciBiZWxvdyB0aGUgcmVk
IHJlY3RhbmdsZSB0byBlc3RhYmxpc2ggdGhlIGN1cnNvciBsb2NhdGlvbi48L2xpPgorPGxpPlBy
ZXNzIHRoZSB1cCBvciBkb3duIGFycm93IGtleSB0byBhdHRlbXB0IHRvIGVudGVyIHRoZSByZWQg
cmVjdGFuZ2xlLjwvbGk+Cis8L29sPgorPC9wPgorCis8cCBpZD0ic3VjY2VzcyIgc3R5bGU9ImJh
Y2tncm91bmQtY29sb3I6cGFsZWdyZWVuOyBwYWRkaW5nOjNweDsiPjxiPlRFU1QgUEFTUzo8L2I+
IAorV2ViS2l0IHNob3VsZCBub3QgY3Jhc2guIFRoZSBpbnNlcnRpb24gcG9pbnQgc2hvdWxkIG1v
dmUgYXMgZmFyIGFzIGl0IGNhbiBpbiB0aGUgZGlyZWN0aW9uIG9mIHRoZSByZWQgcmVjdGFuZ2xl
LCBpZiBpdCBpcyBub3QgYWJsZSB0byBlbnRlciB0aGUgcmVjdGFuZ2xlIGl0c2VsZi4KKzwvcD4K
KworPHAgaWQ9ImZhaWx1cmUiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNGRjMzMDA7IHBhZGRp
bmc6M3B4OyI+PGI+VEVTVCBGQUlMOjwvYj4gIAorV2ViS2l0IGNyYXNoZXMuIEluIFNhZmFyaSB0
aGlzIGlzIHR5cGljYWxseSByZXBvcnRlZCBhcyAiU2FmYXJpIFdlYiBDb250ZW50IENyYXNoZWQu
IgorPC9wPgorCis8ZGl2IGNvbnRlbnRFZGl0YWJsZT0idHJ1ZSI+CitDbGljayB0byBwbGFjZSB0
aGUgZWRpdGluZyBjdXJzb3IgYW55d2hlcmUgb24gdGhpcyBsaW5lIC4uLiB0aGVuIGNsaWNrIHRo
ZSBET1dOIGFycm93LjxiciAvPgorPGEgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmVkOyBwYWRk
aW5nLWxlZnQ6MjAwcHg7Ij48L2E+Cis8YnIgLz4KK0NsaWNrIHRvIHBsYWNlIHRoZSBlZGl0aW5n
IGN1cnNvciBhbnl3aGVyZSBvbiB0aGlzIGxpbmUgLi4uIHRoZW4gY2xpY2sgdGhlIFVQIGFycm93
LgorPC9kaXY+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBiNWNiYWRjLi4yNzAy
NTFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTItMzAgIERhbmllbCBKYWxr
dXQgIDxqYWxrdXRAcmVkLXN3ZWF0ZXIuY29tPgorCisgICAgICAgIENyYXNoIHdoZW4gbmF2aWdh
dGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5IGFuY2hvciBibG9jayB3aXRoIHBhZGRpbmcK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NTg1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmV0dXJuIDAg
ZnJvbSBjbG9zZXN0TGVhZkNoaWxkRm9yTG9naWNhbExlZnRQb3NpdGlvbiBpbnN0ZWFkIG9mIGNy
YXNoaW5nIHdoZW4gYSBub24tbGVhZiBib3ggd2l0aCBubyBjaGlsZHJlbiBpcyBiZWluZyBhc2tl
ZCBmb3IgaXRzIGxlYWYgY2hpbGRyZW4uIEFkanVzdCBsb2dpYyBmb3IgY2FsbGVycyBpbiBwcmV2
aW91c0xpbmVQb3NpdGlvbiBhbmQgbmV4dExpbmVQb3NpdGlvbiB0byBkZXRlY3QgMCByZXNwb25z
ZSBhbmQgdHJlYXQgdGhlIGJveCBhcyBub24tbmF2aWdhYmxlLgorCisgICAgICAgIE1hbnVhbCB0
ZXN0IGFkZGVkIHRvIHRydW5rL01hbnVhbFRlc3RzL2NyYXNoLW9uLWFycm93LWludG8tZW1wdHkt
YW5jaG9yLmh0bWwKKworICAgICAgICAqIGVkaXRpbmcvdmlzaWJsZV91bml0cy5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpwcmV2aW91c0xpbmVQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpu
ZXh0TGluZVBvc2l0aW9uKToKKyAgICAgICAgKiByZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSb290SW5saW5lQm94OjpjbG9zZXN0TGVhZkNoaWxkRm9yTG9n
aWNhbExlZnRQb3NpdGlvbik6CisKIDIwMTEtMTItMjkgIFBhdmVsIFBvZGl2aWxvdiAgPHBvZGl2
aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3Rvcjogc3VwcG9ydCBzb3Vy
Y2VNYXBwaW5nVVJMIG1hZ2ljIGNvbW1lbnQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy92aXNpYmxl
X3VuaXRzLmNwcAppbmRleCBjOTE3M2NiLi43ZGI4ZmIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvdmlzaWJsZV91bml0cy5jcHAKQEAgLTYwOCwxMSArNjA4LDE2IEBAIFZpc2libGVQb3NpdGlv
biBwcmV2aW91c0xpbmVQb3NpdGlvbihjb25zdCBWaXNpYmxlUG9zaXRpb24gJnZpc2libGVQb3Np
dGlvbiwgaW50CiAgICAgaWYgKHJvb3QpIHsKICAgICAgICAgLy8gRklYTUU6IENhbiBiZSB3cm9u
ZyBmb3IgbXVsdGktY29sdW1uIGxheW91dCBhbmQgd2l0aCB0cmFuc2Zvcm1zLgogICAgICAgICBJ
bnRQb2ludCBwb2ludEluTGluZSA9IGFic29sdXRlTGluZURpcmVjdGlvblBvaW50VG9Mb2NhbFBv
aW50SW5CbG9jayhyb290LCBsaW5lRGlyZWN0aW9uUG9pbnQpOwotICAgICAgICBSZW5kZXJPYmpl
Y3QqIHJlbmRlcmVyID0gcm9vdC0+Y2xvc2VzdExlYWZDaGlsZEZvclBvaW50KHBvaW50SW5MaW5l
LCBpc0VkaXRhYmxlUG9zaXRpb24ocCkpLT5yZW5kZXJlcigpOwotICAgICAgICBOb2RlKiBub2Rl
ID0gcmVuZGVyZXItPm5vZGUoKTsKLSAgICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXND
b250ZW50KG5vZGUpKQotICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uSW5QYXJlbnRCZWZvcmVO
b2RlKG5vZGUpOwotICAgICAgICByZXR1cm4gcmVuZGVyZXItPnBvc2l0aW9uRm9yUG9pbnQocG9p
bnRJbkxpbmUpOworICAgICAgICBJbmxpbmVCb3gqIGxlYWZDaGlsZCA9IHJvb3QtPmNsb3Nlc3RM
ZWFmQ2hpbGRGb3JQb2ludChwb2ludEluTGluZSwgaXNFZGl0YWJsZVBvc2l0aW9uKHApKTsKKyAg
ICAgICAgaWYgKGxlYWZDaGlsZCkgeworICAgICAgICAgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJl
ciA9IGxlYWZDaGlsZC0+cmVuZGVyZXIoKTsKKyAgICAgICAgICAgIE5vZGUqIG5vZGUgPSByZW5k
ZXJlci0+bm9kZSgpOworICAgICAgICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250
ZW50KG5vZGUpKQorICAgICAgICAgICAgICAgIHJldHVybiBwb3NpdGlvbkluUGFyZW50QmVmb3Jl
Tm9kZShub2RlKTsKKyAgICAgICAgICAgIHJldHVybiByZW5kZXJlci0+cG9zaXRpb25Gb3JQb2lu
dChwb2ludEluTGluZSk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcm9v
dCA9IDA7CiAgICAgfQogICAgIAogICAgIC8vIENvdWxkIG5vdCBmaW5kIGEgcHJldmlvdXMgbGlu
ZS4gVGhpcyBtZWFucyB3ZSBtdXN0IGFscmVhZHkgYmUgb24gdGhlIGZpcnN0IGxpbmUuCkBAIC03
MDksMTEgKzcxNCwxNiBAQCBWaXNpYmxlUG9zaXRpb24gbmV4dExpbmVQb3NpdGlvbihjb25zdCBW
aXNpYmxlUG9zaXRpb24gJnZpc2libGVQb3NpdGlvbiwgaW50IGxpbgogICAgIGlmIChyb290KSB7
CiAgICAgICAgIC8vIEZJWE1FOiBDYW4gYmUgd3JvbmcgZm9yIG11bHRpLWNvbHVtbiBsYXlvdXQg
YW5kIHdpdGggdHJhbnNmb3Jtcy4KICAgICAgICAgSW50UG9pbnQgcG9pbnRJbkxpbmUgPSBhYnNv
bHV0ZUxpbmVEaXJlY3Rpb25Qb2ludFRvTG9jYWxQb2ludEluQmxvY2socm9vdCwgbGluZURpcmVj
dGlvblBvaW50KTsKLSAgICAgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IHJvb3QtPmNsb3Nl
c3RMZWFmQ2hpbGRGb3JQb2ludChwb2ludEluTGluZSwgaXNFZGl0YWJsZVBvc2l0aW9uKHApKS0+
cmVuZGVyZXIoKTsKLSAgICAgICAgTm9kZSogbm9kZSA9IHJlbmRlcmVyLT5ub2RlKCk7Ci0gICAg
ICAgIGlmIChub2RlICYmIGVkaXRpbmdJZ25vcmVzQ29udGVudChub2RlKSkKLSAgICAgICAgICAg
IHJldHVybiBwb3NpdGlvbkluUGFyZW50QmVmb3JlTm9kZShub2RlKTsKLSAgICAgICAgcmV0dXJu
IHJlbmRlcmVyLT5wb3NpdGlvbkZvclBvaW50KHBvaW50SW5MaW5lKTsKKyAgICAgICAgSW5saW5l
Qm94KiBsZWFmQ2hpbGQgPSByb290LT5jbG9zZXN0TGVhZkNoaWxkRm9yUG9pbnQocG9pbnRJbkxp
bmUsIGlzRWRpdGFibGVQb3NpdGlvbihwKSk7CisgICAgICAgIGlmIChsZWFmQ2hpbGQpIHsKKyAg
ICAgICAgICAgIFJlbmRlck9iamVjdCogcmVuZGVyZXIgPSBsZWFmQ2hpbGQtPnJlbmRlcmVyKCk7
CisgICAgICAgICAgICBOb2RlKiBub2RlID0gcmVuZGVyZXItPm5vZGUoKTsKKyAgICAgICAgICAg
IGlmIChub2RlICYmIGVkaXRpbmdJZ25vcmVzQ29udGVudChub2RlKSkKKyAgICAgICAgICAgICAg
ICByZXR1cm4gcG9zaXRpb25JblBhcmVudEJlZm9yZU5vZGUobm9kZSk7CisgICAgICAgICAgICBy
ZXR1cm4gcmVuZGVyZXItPnBvc2l0aW9uRm9yUG9pbnQocG9pbnRJbkxpbmUpOworICAgICAgICB9
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJvb3QgPSAwOwogICAgIH0KIAogICAgIC8vIENv
dWxkIG5vdCBmaW5kIGEgbmV4dCBsaW5lLiBUaGlzIG1lYW5zIHdlIG11c3QgYWxyZWFkeSBiZSBv
biB0aGUgbGFzdCBsaW5lLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jv
b3RJbmxpbmVCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3gu
Y3BwCmluZGV4IGVmZGVmYTcuLjA4MjAyMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9Sb290SW5saW5lQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
Um9vdElubGluZUJveC5jcHAKQEAgLTQ4Miw3ICs0ODIsNyBAQCBJbmxpbmVCb3gqIFJvb3RJbmxp
bmVCb3g6OmNsb3Nlc3RMZWFmQ2hpbGRGb3JMb2dpY2FsTGVmdFBvc2l0aW9uKGludCBsZWZ0UG9z
aXRpbwogewogICAgIElubGluZUJveCogZmlyc3RMZWFmID0gZmlyc3RMZWFmQ2hpbGQoKTsKICAg
ICBJbmxpbmVCb3gqIGxhc3RMZWFmID0gbGFzdExlYWZDaGlsZCgpOwotICAgIGlmIChmaXJzdExl
YWYgPT0gbGFzdExlYWYgJiYgKCFvbmx5RWRpdGFibGVMZWF2ZXMgfHwgaXNFZGl0YWJsZUxlYWYo
Zmlyc3RMZWFmKSkpCisgICAgaWYgKCFmaXJzdExlYWYgfHwgKGZpcnN0TGVhZiA9PSBsYXN0TGVh
ZiAmJiAoIW9ubHlFZGl0YWJsZUxlYXZlcyB8fCBpc0VkaXRhYmxlTGVhZihmaXJzdExlYWYpKSkp
CiAgICAgICAgIHJldHVybiBmaXJzdExlYWY7CiAKICAgICAvLyBBdm9pZCByZXR1cm5pbmcgYSBs
aXN0IG1hcmtlciB3aGVuIHBvc3NpYmxlLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>120810</attachid>
            <date>2011-12-30 11:49:18 -0800</date>
            <delta_ts>2011-12-30 13:03:34 -0800</delta_ts>
            <desc>Patch take three</desc>
            <filename>PreventNavigationCrashV3.patch</filename>
            <type>text/plain</type>
            <size>6336</size>
            <attacher name="Daniel Jalkut">jalkut</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAzMDJjYWE2Li45ZTYxNDU5
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTEtMTItMzAgIERhbmllbCBKYWxrdXQgIDxqYWxrdXRAcmVkLXN3ZWF0ZXIuY29tPgorCisg
ICAgICAgIENyYXNoIHdoZW4gbmF2aWdhdGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5IGFu
Y2hvciBibG9jayB3aXRoIHBhZGRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTc0NTg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBNYW51YWxUZXN0cy9jcmFzaC1vbi1hcnJvdy1pbnRvLWVtcHR5LWFu
Y2hvci5odG1sOiBBZGRlZC4KKwogMjAxMS0xMi0yOCAgQ2hhbmdTZW9rIE9oICA8c2hpdmFtaWRv
d0BnbWFpbC5jb20+CiAKICAgICAgICAgW0dUS10gRml4IGNvbXBpbGF0aW9uIGlzc3VlIHdoZW4g
c2VsZWN0aW5nIG9wZW5nbCBmb3IgQWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcKZGlmZiAtLWdpdCBh
L01hbnVhbFRlc3RzL2NyYXNoLW9uLWFycm93LWludG8tZW1wdHktYW5jaG9yLmh0bWwgYi9NYW51
YWxUZXN0cy9jcmFzaC1vbi1hcnJvdy1pbnRvLWVtcHR5LWFuY2hvci5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkwZTUxN2QKLS0tIC9kZXYvbnVsbAorKysgYi9NYW51
YWxUZXN0cy9jcmFzaC1vbi1hcnJvdy1pbnRvLWVtcHR5LWFuY2hvci5odG1sCkBAIC0wLDAgKzEs
MjkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxwPjxiPkJVRyBJRDo8L2I+
IDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDU4NSI+
NzQ1ODU8L2E+IENyYXNoIHdoZW4gbmF2aWdhdGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5
IGFuY2hvciBibG9jayB3aXRoIHBhZGRpbmc8L3A+CisKKzxwIGlkPSJ0ZXN0IiBzdHlsZT0iYmFj
a2dyb3VuZC1jb2xvcjpza3libHVlOyBwYWRkaW5nOjNweDsiPjxiPlNURVBTIFRPIFRFU1Q6PC9i
PiAKKzxvbD4KKzxsaT5DbGljayBpbiB0aGUgY29udGVudCBhYm92ZSBvciBiZWxvdyB0aGUgcmVk
IHJlY3RhbmdsZSB0byBlc3RhYmxpc2ggdGhlIGN1cnNvciBsb2NhdGlvbi48L2xpPgorPGxpPlBy
ZXNzIHRoZSB1cCBvciBkb3duIGFycm93IGtleSB0byBhdHRlbXB0IHRvIGVudGVyIHRoZSByZWQg
cmVjdGFuZ2xlLjwvbGk+Cis8L29sPgorPC9wPgorCis8cCBpZD0ic3VjY2VzcyIgc3R5bGU9ImJh
Y2tncm91bmQtY29sb3I6cGFsZWdyZWVuOyBwYWRkaW5nOjNweDsiPjxiPlRFU1QgUEFTUzo8L2I+
IAorV2ViS2l0IHNob3VsZCBub3QgY3Jhc2guIFRoZSBpbnNlcnRpb24gcG9pbnQgc2hvdWxkIG1v
dmUgYXMgZmFyIGFzIGl0IGNhbiBpbiB0aGUgZGlyZWN0aW9uIG9mIHRoZSByZWQgcmVjdGFuZ2xl
LCBpZiBpdCBpcyBub3QgYWJsZSB0byBlbnRlciB0aGUgcmVjdGFuZ2xlIGl0c2VsZi4KKzwvcD4K
KworPHAgaWQ9ImZhaWx1cmUiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNGRjMzMDA7IHBhZGRp
bmc6M3B4OyI+PGI+VEVTVCBGQUlMOjwvYj4gIAorV2ViS2l0IGNyYXNoZXMuIEluIFNhZmFyaSB0
aGlzIGlzIHR5cGljYWxseSByZXBvcnRlZCBhcyAiU2FmYXJpIFdlYiBDb250ZW50IENyYXNoZWQu
IgorPC9wPgorCis8ZGl2IGNvbnRlbnRFZGl0YWJsZT0idHJ1ZSI+CitDbGljayB0byBwbGFjZSB0
aGUgZWRpdGluZyBjdXJzb3IgYW55d2hlcmUgb24gdGhpcyBsaW5lIC4uLiB0aGVuIGNsaWNrIHRo
ZSBET1dOIGFycm93LjxiciAvPgorPGEgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmVkOyBwYWRk
aW5nLWxlZnQ6MjAwcHg7Ij48L2E+Cis8YnIgLz4KK0NsaWNrIHRvIHBsYWNlIHRoZSBlZGl0aW5n
IGN1cnNvciBhbnl3aGVyZSBvbiB0aGlzIGxpbmUgLi4uIHRoZW4gY2xpY2sgdGhlIFVQIGFycm93
LgorPC9kaXY+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBiNWNiYWRjLi4yNzAy
NTFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTItMzAgIERhbmllbCBKYWxr
dXQgIDxqYWxrdXRAcmVkLXN3ZWF0ZXIuY29tPgorCisgICAgICAgIENyYXNoIHdoZW4gbmF2aWdh
dGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5IGFuY2hvciBibG9jayB3aXRoIHBhZGRpbmcK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NTg1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmV0dXJuIDAg
ZnJvbSBjbG9zZXN0TGVhZkNoaWxkRm9yTG9naWNhbExlZnRQb3NpdGlvbiBpbnN0ZWFkIG9mIGNy
YXNoaW5nIHdoZW4gYSBub24tbGVhZiBib3ggd2l0aCBubyBjaGlsZHJlbiBpcyBiZWluZyBhc2tl
ZCBmb3IgaXRzIGxlYWYgY2hpbGRyZW4uIEFkanVzdCBsb2dpYyBmb3IgY2FsbGVycyBpbiBwcmV2
aW91c0xpbmVQb3NpdGlvbiBhbmQgbmV4dExpbmVQb3NpdGlvbiB0byBkZXRlY3QgMCByZXNwb25z
ZSBhbmQgdHJlYXQgdGhlIGJveCBhcyBub24tbmF2aWdhYmxlLgorCisgICAgICAgIE1hbnVhbCB0
ZXN0IGFkZGVkIHRvIHRydW5rL01hbnVhbFRlc3RzL2NyYXNoLW9uLWFycm93LWludG8tZW1wdHkt
YW5jaG9yLmh0bWwKKworICAgICAgICAqIGVkaXRpbmcvdmlzaWJsZV91bml0cy5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpwcmV2aW91c0xpbmVQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpu
ZXh0TGluZVBvc2l0aW9uKToKKyAgICAgICAgKiByZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpSb290SW5saW5lQm94OjpjbG9zZXN0TGVhZkNoaWxkRm9yTG9n
aWNhbExlZnRQb3NpdGlvbik6CisKIDIwMTEtMTItMjkgIFBhdmVsIFBvZGl2aWxvdiAgPHBvZGl2
aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3Rvcjogc3VwcG9ydCBzb3Vy
Y2VNYXBwaW5nVVJMIG1hZ2ljIGNvbW1lbnQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy92aXNpYmxl
X3VuaXRzLmNwcAppbmRleCBjOTE3M2NiLi44Y2QzMTVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvdmlzaWJsZV91bml0cy5jcHAKQEAgLTYwOCwxMSArNjA4LDE0IEBAIFZpc2libGVQb3NpdGlv
biBwcmV2aW91c0xpbmVQb3NpdGlvbihjb25zdCBWaXNpYmxlUG9zaXRpb24gJnZpc2libGVQb3Np
dGlvbiwgaW50CiAgICAgaWYgKHJvb3QpIHsKICAgICAgICAgLy8gRklYTUU6IENhbiBiZSB3cm9u
ZyBmb3IgbXVsdGktY29sdW1uIGxheW91dCBhbmQgd2l0aCB0cmFuc2Zvcm1zLgogICAgICAgICBJ
bnRQb2ludCBwb2ludEluTGluZSA9IGFic29sdXRlTGluZURpcmVjdGlvblBvaW50VG9Mb2NhbFBv
aW50SW5CbG9jayhyb290LCBsaW5lRGlyZWN0aW9uUG9pbnQpOwotICAgICAgICBSZW5kZXJPYmpl
Y3QqIHJlbmRlcmVyID0gcm9vdC0+Y2xvc2VzdExlYWZDaGlsZEZvclBvaW50KHBvaW50SW5MaW5l
LCBpc0VkaXRhYmxlUG9zaXRpb24ocCkpLT5yZW5kZXJlcigpOwotICAgICAgICBOb2RlKiBub2Rl
ID0gcmVuZGVyZXItPm5vZGUoKTsKLSAgICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXND
b250ZW50KG5vZGUpKQotICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uSW5QYXJlbnRCZWZvcmVO
b2RlKG5vZGUpOwotICAgICAgICByZXR1cm4gcmVuZGVyZXItPnBvc2l0aW9uRm9yUG9pbnQocG9p
bnRJbkxpbmUpOworICAgICAgICBJbmxpbmVCb3gqIGxlYWZDaGlsZCA9IHJvb3QtPmNsb3Nlc3RM
ZWFmQ2hpbGRGb3JQb2ludChwb2ludEluTGluZSwgaXNFZGl0YWJsZVBvc2l0aW9uKHApKTsKKyAg
ICAgICAgaWYgKGxlYWZDaGlsZCkgeworICAgICAgICAgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJl
ciA9IGxlYWZDaGlsZC0+cmVuZGVyZXIoKTsKKyAgICAgICAgICAgIE5vZGUqIG5vZGUgPSByZW5k
ZXJlci0+bm9kZSgpOworICAgICAgICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250
ZW50KG5vZGUpKQorICAgICAgICAgICAgICAgIHJldHVybiBwb3NpdGlvbkluUGFyZW50QmVmb3Jl
Tm9kZShub2RlKTsKKyAgICAgICAgICAgIHJldHVybiByZW5kZXJlci0+cG9zaXRpb25Gb3JQb2lu
dChwb2ludEluTGluZSk7CisgICAgICAgIH0KICAgICB9CiAgICAgCiAgICAgLy8gQ291bGQgbm90
IGZpbmQgYSBwcmV2aW91cyBsaW5lLiBUaGlzIG1lYW5zIHdlIG11c3QgYWxyZWFkeSBiZSBvbiB0
aGUgZmlyc3QgbGluZS4KQEAgLTcwOSwxMSArNzEyLDE0IEBAIFZpc2libGVQb3NpdGlvbiBuZXh0
TGluZVBvc2l0aW9uKGNvbnN0IFZpc2libGVQb3NpdGlvbiAmdmlzaWJsZVBvc2l0aW9uLCBpbnQg
bGluCiAgICAgaWYgKHJvb3QpIHsKICAgICAgICAgLy8gRklYTUU6IENhbiBiZSB3cm9uZyBmb3Ig
bXVsdGktY29sdW1uIGxheW91dCBhbmQgd2l0aCB0cmFuc2Zvcm1zLgogICAgICAgICBJbnRQb2lu
dCBwb2ludEluTGluZSA9IGFic29sdXRlTGluZURpcmVjdGlvblBvaW50VG9Mb2NhbFBvaW50SW5C
bG9jayhyb290LCBsaW5lRGlyZWN0aW9uUG9pbnQpOwotICAgICAgICBSZW5kZXJPYmplY3QqIHJl
bmRlcmVyID0gcm9vdC0+Y2xvc2VzdExlYWZDaGlsZEZvclBvaW50KHBvaW50SW5MaW5lLCBpc0Vk
aXRhYmxlUG9zaXRpb24ocCkpLT5yZW5kZXJlcigpOwotICAgICAgICBOb2RlKiBub2RlID0gcmVu
ZGVyZXItPm5vZGUoKTsKLSAgICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250ZW50
KG5vZGUpKQotICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uSW5QYXJlbnRCZWZvcmVOb2RlKG5v
ZGUpOwotICAgICAgICByZXR1cm4gcmVuZGVyZXItPnBvc2l0aW9uRm9yUG9pbnQocG9pbnRJbkxp
bmUpOworICAgICAgICBJbmxpbmVCb3gqIGxlYWZDaGlsZCA9IHJvb3QtPmNsb3Nlc3RMZWFmQ2hp
bGRGb3JQb2ludChwb2ludEluTGluZSwgaXNFZGl0YWJsZVBvc2l0aW9uKHApKTsKKyAgICAgICAg
aWYgKGxlYWZDaGlsZCkgeworICAgICAgICAgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IGxl
YWZDaGlsZC0+cmVuZGVyZXIoKTsKKyAgICAgICAgICAgIE5vZGUqIG5vZGUgPSByZW5kZXJlci0+
bm9kZSgpOworICAgICAgICAgICAgaWYgKG5vZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250ZW50KG5v
ZGUpKQorICAgICAgICAgICAgICAgIHJldHVybiBwb3NpdGlvbkluUGFyZW50QmVmb3JlTm9kZShu
b2RlKTsKKyAgICAgICAgICAgIHJldHVybiByZW5kZXJlci0+cG9zaXRpb25Gb3JQb2ludChwb2lu
dEluTGluZSk7CisgICAgICAgIH0KICAgICB9CiAKICAgICAvLyBDb3VsZCBub3QgZmluZCBhIG5l
eHQgbGluZS4gVGhpcyBtZWFucyB3ZSBtdXN0IGFscmVhZHkgYmUgb24gdGhlIGxhc3QgbGluZS4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290SW5saW5lQm94LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290SW5saW5lQm94LmNwcAppbmRleCBlZmRlZmE3
Li4wODIwMjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUm9vdElubGlu
ZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3Bw
CkBAIC00ODIsNyArNDgyLDcgQEAgSW5saW5lQm94KiBSb290SW5saW5lQm94OjpjbG9zZXN0TGVh
ZkNoaWxkRm9yTG9naWNhbExlZnRQb3NpdGlvbihpbnQgbGVmdFBvc2l0aW8KIHsKICAgICBJbmxp
bmVCb3gqIGZpcnN0TGVhZiA9IGZpcnN0TGVhZkNoaWxkKCk7CiAgICAgSW5saW5lQm94KiBsYXN0
TGVhZiA9IGxhc3RMZWFmQ2hpbGQoKTsKLSAgICBpZiAoZmlyc3RMZWFmID09IGxhc3RMZWFmICYm
ICghb25seUVkaXRhYmxlTGVhdmVzIHx8IGlzRWRpdGFibGVMZWFmKGZpcnN0TGVhZikpKQorICAg
IGlmICghZmlyc3RMZWFmIHx8IChmaXJzdExlYWYgPT0gbGFzdExlYWYgJiYgKCFvbmx5RWRpdGFi
bGVMZWF2ZXMgfHwgaXNFZGl0YWJsZUxlYWYoZmlyc3RMZWFmKSkpKQogICAgICAgICByZXR1cm4g
Zmlyc3RMZWFmOwogCiAgICAgLy8gQXZvaWQgcmV0dXJuaW5nIGEgbGlzdCBtYXJrZXIgd2hlbiBw
b3NzaWJsZS4K
</data>
<flag name="review"
          id="121140"
          type_id="1"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>120815</attachid>
            <date>2011-12-30 13:03:34 -0800</date>
            <delta_ts>2011-12-30 13:10:59 -0800</delta_ts>
            <desc>Patch take four</desc>
            <filename>PreventNavigationCrashV4.patch</filename>
            <type>text/plain</type>
            <size>6303</size>
            <attacher name="Daniel Jalkut">jalkut</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhNTVkMWU3Li4xNWVmMDM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMTIt
MzAgIERhbmllbCBKYWxrdXQgIDxqYWxrdXRAcmVkLXN3ZWF0ZXIuY29tPgorCisgICAgICAgIENy
YXNoIHdoZW4gbmF2aWdhdGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5IGFuY2hvciBibG9j
ayB3aXRoIHBhZGRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTc0NTg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLXRvLWVtcHR5LWFuY2hvci1saW5lLWNyYXNo
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vbW92ZS10
by1lbXB0eS1hbmNob3ItbGluZS1jcmFzaC5odG1sOiBBZGRlZC4KKwogMjAxMS0xMi0yOSAgUGF2
ZWwgUG9kaXZpbG92ICA8cG9kaXZpbG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5z
cGVjdG9yOiBzdXBwb3J0IHNvdXJjZU1hcHBpbmdVUkwgbWFnaWMgY29tbWVudC4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtdG8tZW1wdHktYW5jaG9yLWxp
bmUtY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92
ZS10by1lbXB0eS1hbmNob3ItbGluZS1jcmFzaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYzk4MjRmMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtdG8tZW1wdHktYW5jaG9yLWxpbmUtY3Jhc2gtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorQ3Jhc2ggdGVzdCBwYXNzZWQKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS10by1lbXB0eS1hbmNob3ItbGlu
ZS1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS10by1lbXB0
eS1hbmNob3ItbGluZS1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjFkZDA3ZjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9tb3ZlLXRvLWVtcHR5LWFuY2hvci1saW5lLWNyYXNoLmh0bWwKQEAgLTAsMCArMSwyNyBA
QAorPGh0bWw+IAorPGhlYWQ+CisKKzxzY3JpcHQgc3JjPS4uL2VkaXRpbmcuanMgbGFuZ3VhZ2U9
IkphdmFTY3JpcHQiIHR5cGU9InRleHQvSmF2YVNjcmlwdCI+PC9zY3JpcHQ+CisKKzxzY3JpcHQ+
CisKK2Z1bmN0aW9uIGVkaXRpbmdUZXN0KCkgeworICAgIHZhciB0ZXN0Tm9kZSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0ZXN0Jyk7CisgICAgc2V0U2VsZWN0aW9uQ29tbWFuZCh0ZXN0Tm9k
ZSwgMCwgdGVzdE5vZGUsIDApOworICAgIG1vdmVTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQ29tbWFu
ZCgpOworICAgIGRvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gIkNyYXNoIHRlc3QgcGFzc2VkIjsK
K30KKworPC9zY3JpcHQ+CisKKzx0aXRsZT5FZGl0aW5nIFRlc3Q8L3RpdGxlPiAKKzwvaGVhZD4g
Cis8Ym9keT4KKzxkaXYgaWQ9InRlc3QiIGNvbnRlbnRFZGl0YWJsZT0idHJ1ZSI+UG9zaXRpb24g
ZWRpdGluZyBjdXJzb3IgaGVyZSwgdGhlbiBwcmVzcyBkb3duIGFycm93LjxiciAvPiA8YSBzdHls
ZT0iYmFja2dyb3VuZC1jb2xvcjogcmVkOyBwYWRkaW5nLWxlZnQ6IDIwMHB4OyI+PC9hPjwvZGl2
PgorCis8c2NyaXB0PgorcnVuRHVtcEFzVGV4dEVkaXRpbmdUZXN0KCk7Cis8L3NjcmlwdD4KKwor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGI1Y2JhZGMuLmZhNWRkOGYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMS0xMi0zMCAgRGFuaWVsIEphbGt1dCAgPGphbGt1dEBy
ZWQtc3dlYXRlci5jb20+CisKKyAgICAgICAgQ3Jhc2ggd2hlbiBuYXZpZ2F0aW5nIHdpdGggYXJy
b3cga2V5IGludG8gZW1wdHkgYW5jaG9yIGJsb2NrIHdpdGggcGFkZGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ1ODUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZXR1cm4gMCBmcm9tIGNsb3Nlc3RM
ZWFmQ2hpbGRGb3JMb2dpY2FsTGVmdFBvc2l0aW9uIGluc3RlYWQgb2YgCisgICAgICAgIGNyYXNo
aW5nIHdoZW4gYSBub24tbGVhZiBib3ggd2l0aCBubyBjaGlsZHJlbiBpcyBiZWluZyBhc2tlZCBm
b3IKKyAgICAgICAgaXRzIGxlYWYgY2hpbGRyZW4uIEFkanVzdCBsb2dpYyBmb3IgY2FsbGVycyBp
biBwcmV2aW91c0xpbmVQb3NpdGlvbgorICAgICAgICBhbmQgbmV4dExpbmVQb3NpdGlvbiB0byBk
ZXRlY3QgMCByZXNwb25zZSBhbmQgdHJlYXQgdGhlIGJveCBhcworICAgICAgICBub24tbmF2aWdh
YmxlLgorCisgICAgICAgIE1hbnVhbCB0ZXN0IGFkZGVkIHRvIHRydW5rL01hbnVhbFRlc3RzL2Ny
YXNoLW9uLWFycm93LWludG8tZW1wdHktYW5jaG9yLmh0bWwKKworICAgICAgICAqIGVkaXRpbmcv
dmlzaWJsZV91bml0cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpwcmV2aW91c0xpbmVQb3NpdGlv
bik6CisgICAgICAgIChXZWJDb3JlOjpuZXh0TGluZVBvc2l0aW9uKToKKyAgICAgICAgKiByZW5k
ZXJpbmcvUm9vdElubGluZUJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSb290SW5saW5lQm94
OjpjbG9zZXN0TGVhZkNoaWxkRm9yTG9naWNhbExlZnRQb3NpdGlvbik6CisKIDIwMTEtMTItMjkg
IFBhdmVsIFBvZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2Vi
IEluc3BlY3Rvcjogc3VwcG9ydCBzb3VyY2VNYXBwaW5nVVJMIG1hZ2ljIGNvbW1lbnQuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy92aXNpYmxlX3VuaXRzLmNwcAppbmRleCBjOTE3M2NiLi44Y2QzMTVk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvdmlzaWJsZV91bml0cy5jcHAKQEAgLTYwOCwxMSAr
NjA4LDE0IEBAIFZpc2libGVQb3NpdGlvbiBwcmV2aW91c0xpbmVQb3NpdGlvbihjb25zdCBWaXNp
YmxlUG9zaXRpb24gJnZpc2libGVQb3NpdGlvbiwgaW50CiAgICAgaWYgKHJvb3QpIHsKICAgICAg
ICAgLy8gRklYTUU6IENhbiBiZSB3cm9uZyBmb3IgbXVsdGktY29sdW1uIGxheW91dCBhbmQgd2l0
aCB0cmFuc2Zvcm1zLgogICAgICAgICBJbnRQb2ludCBwb2ludEluTGluZSA9IGFic29sdXRlTGlu
ZURpcmVjdGlvblBvaW50VG9Mb2NhbFBvaW50SW5CbG9jayhyb290LCBsaW5lRGlyZWN0aW9uUG9p
bnQpOwotICAgICAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gcm9vdC0+Y2xvc2VzdExlYWZD
aGlsZEZvclBvaW50KHBvaW50SW5MaW5lLCBpc0VkaXRhYmxlUG9zaXRpb24ocCkpLT5yZW5kZXJl
cigpOwotICAgICAgICBOb2RlKiBub2RlID0gcmVuZGVyZXItPm5vZGUoKTsKLSAgICAgICAgaWYg
KG5vZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250ZW50KG5vZGUpKQotICAgICAgICAgICAgcmV0dXJu
IHBvc2l0aW9uSW5QYXJlbnRCZWZvcmVOb2RlKG5vZGUpOwotICAgICAgICByZXR1cm4gcmVuZGVy
ZXItPnBvc2l0aW9uRm9yUG9pbnQocG9pbnRJbkxpbmUpOworICAgICAgICBJbmxpbmVCb3gqIGxl
YWZDaGlsZCA9IHJvb3QtPmNsb3Nlc3RMZWFmQ2hpbGRGb3JQb2ludChwb2ludEluTGluZSwgaXNF
ZGl0YWJsZVBvc2l0aW9uKHApKTsKKyAgICAgICAgaWYgKGxlYWZDaGlsZCkgeworICAgICAgICAg
ICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IGxlYWZDaGlsZC0+cmVuZGVyZXIoKTsKKyAgICAg
ICAgICAgIE5vZGUqIG5vZGUgPSByZW5kZXJlci0+bm9kZSgpOworICAgICAgICAgICAgaWYgKG5v
ZGUgJiYgZWRpdGluZ0lnbm9yZXNDb250ZW50KG5vZGUpKQorICAgICAgICAgICAgICAgIHJldHVy
biBwb3NpdGlvbkluUGFyZW50QmVmb3JlTm9kZShub2RlKTsKKyAgICAgICAgICAgIHJldHVybiBy
ZW5kZXJlci0+cG9zaXRpb25Gb3JQb2ludChwb2ludEluTGluZSk7CisgICAgICAgIH0KICAgICB9
CiAgICAgCiAgICAgLy8gQ291bGQgbm90IGZpbmQgYSBwcmV2aW91cyBsaW5lLiBUaGlzIG1lYW5z
IHdlIG11c3QgYWxyZWFkeSBiZSBvbiB0aGUgZmlyc3QgbGluZS4KQEAgLTcwOSwxMSArNzEyLDE0
IEBAIFZpc2libGVQb3NpdGlvbiBuZXh0TGluZVBvc2l0aW9uKGNvbnN0IFZpc2libGVQb3NpdGlv
biAmdmlzaWJsZVBvc2l0aW9uLCBpbnQgbGluCiAgICAgaWYgKHJvb3QpIHsKICAgICAgICAgLy8g
RklYTUU6IENhbiBiZSB3cm9uZyBmb3IgbXVsdGktY29sdW1uIGxheW91dCBhbmQgd2l0aCB0cmFu
c2Zvcm1zLgogICAgICAgICBJbnRQb2ludCBwb2ludEluTGluZSA9IGFic29sdXRlTGluZURpcmVj
dGlvblBvaW50VG9Mb2NhbFBvaW50SW5CbG9jayhyb290LCBsaW5lRGlyZWN0aW9uUG9pbnQpOwot
ICAgICAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gcm9vdC0+Y2xvc2VzdExlYWZDaGlsZEZv
clBvaW50KHBvaW50SW5MaW5lLCBpc0VkaXRhYmxlUG9zaXRpb24ocCkpLT5yZW5kZXJlcigpOwot
ICAgICAgICBOb2RlKiBub2RlID0gcmVuZGVyZXItPm5vZGUoKTsKLSAgICAgICAgaWYgKG5vZGUg
JiYgZWRpdGluZ0lnbm9yZXNDb250ZW50KG5vZGUpKQotICAgICAgICAgICAgcmV0dXJuIHBvc2l0
aW9uSW5QYXJlbnRCZWZvcmVOb2RlKG5vZGUpOwotICAgICAgICByZXR1cm4gcmVuZGVyZXItPnBv
c2l0aW9uRm9yUG9pbnQocG9pbnRJbkxpbmUpOworICAgICAgICBJbmxpbmVCb3gqIGxlYWZDaGls
ZCA9IHJvb3QtPmNsb3Nlc3RMZWFmQ2hpbGRGb3JQb2ludChwb2ludEluTGluZSwgaXNFZGl0YWJs
ZVBvc2l0aW9uKHApKTsKKyAgICAgICAgaWYgKGxlYWZDaGlsZCkgeworICAgICAgICAgICAgUmVu
ZGVyT2JqZWN0KiByZW5kZXJlciA9IGxlYWZDaGlsZC0+cmVuZGVyZXIoKTsKKyAgICAgICAgICAg
IE5vZGUqIG5vZGUgPSByZW5kZXJlci0+bm9kZSgpOworICAgICAgICAgICAgaWYgKG5vZGUgJiYg
ZWRpdGluZ0lnbm9yZXNDb250ZW50KG5vZGUpKQorICAgICAgICAgICAgICAgIHJldHVybiBwb3Np
dGlvbkluUGFyZW50QmVmb3JlTm9kZShub2RlKTsKKyAgICAgICAgICAgIHJldHVybiByZW5kZXJl
ci0+cG9zaXRpb25Gb3JQb2ludChwb2ludEluTGluZSk7CisgICAgICAgIH0KICAgICB9CiAKICAg
ICAvLyBDb3VsZCBub3QgZmluZCBhIG5leHQgbGluZS4gVGhpcyBtZWFucyB3ZSBtdXN0IGFscmVh
ZHkgYmUgb24gdGhlIGxhc3QgbGluZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9Sb290SW5saW5lQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290SW5s
aW5lQm94LmNwcAppbmRleCBlZmRlZmE3Li4wODIwMjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCkBAIC00ODIsNyArNDgyLDcgQEAgSW5saW5lQm94KiBS
b290SW5saW5lQm94OjpjbG9zZXN0TGVhZkNoaWxkRm9yTG9naWNhbExlZnRQb3NpdGlvbihpbnQg
bGVmdFBvc2l0aW8KIHsKICAgICBJbmxpbmVCb3gqIGZpcnN0TGVhZiA9IGZpcnN0TGVhZkNoaWxk
KCk7CiAgICAgSW5saW5lQm94KiBsYXN0TGVhZiA9IGxhc3RMZWFmQ2hpbGQoKTsKLSAgICBpZiAo
Zmlyc3RMZWFmID09IGxhc3RMZWFmICYmICghb25seUVkaXRhYmxlTGVhdmVzIHx8IGlzRWRpdGFi
bGVMZWFmKGZpcnN0TGVhZikpKQorICAgIGlmICghZmlyc3RMZWFmIHx8IChmaXJzdExlYWYgPT0g
bGFzdExlYWYgJiYgKCFvbmx5RWRpdGFibGVMZWF2ZXMgfHwgaXNFZGl0YWJsZUxlYWYoZmlyc3RM
ZWFmKSkpKQogICAgICAgICByZXR1cm4gZmlyc3RMZWFmOwogCiAgICAgLy8gQXZvaWQgcmV0dXJu
aW5nIGEgbGlzdCBtYXJrZXIgd2hlbiBwb3NzaWJsZS4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>120817</attachid>
            <date>2011-12-30 13:10:59 -0800</date>
            <delta_ts>2011-12-30 13:10:59 -0800</delta_ts>
            <desc>Patch take five: amend ChangeLog to reference the automated layout test</desc>
            <filename>PreventNavigationCrashV5.patch</filename>
            <type>text/plain</type>
            <size>6287</size>
            <attacher name="Daniel Jalkut">jalkut</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhNTVkMWU3Li4xNWVmMDM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMTIt
MzAgIERhbmllbCBKYWxrdXQgIDxqYWxrdXRAcmVkLXN3ZWF0ZXIuY29tPgorCisgICAgICAgIENy
YXNoIHdoZW4gbmF2aWdhdGluZyB3aXRoIGFycm93IGtleSBpbnRvIGVtcHR5IGFuY2hvciBibG9j
ayB3aXRoIHBhZGRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTc0NTg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLXRvLWVtcHR5LWFuY2hvci1saW5lLWNyYXNo
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9zZWxlY3Rpb24vbW92ZS10
by1lbXB0eS1hbmNob3ItbGluZS1jcmFzaC5odG1sOiBBZGRlZC4KKwogMjAxMS0xMi0yOSAgUGF2
ZWwgUG9kaXZpbG92ICA8cG9kaXZpbG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5z
cGVjdG9yOiBzdXBwb3J0IHNvdXJjZU1hcHBpbmdVUkwgbWFnaWMgY29tbWVudC4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtdG8tZW1wdHktYW5jaG9yLWxp
bmUtY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92
ZS10by1lbXB0eS1hbmNob3ItbGluZS1jcmFzaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYzk4MjRmMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtdG8tZW1wdHktYW5jaG9yLWxpbmUtY3Jhc2gtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorQ3Jhc2ggdGVzdCBwYXNzZWQKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS10by1lbXB0eS1hbmNob3ItbGlu
ZS1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vbW92ZS10by1lbXB0
eS1hbmNob3ItbGluZS1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjNiYTc4NzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9tb3ZlLXRvLWVtcHR5LWFuY2hvci1saW5lLWNyYXNoLmh0bWwKQEAgLTAsMCArMSwyNyBA
QAorPGh0bWw+IAorPGhlYWQ+CisKKzxzY3JpcHQgc3JjPS4uL2VkaXRpbmcuanMgbGFuZ3VhZ2U9
IkphdmFTY3JpcHQiIHR5cGU9InRleHQvSmF2YVNjcmlwdCI+PC9zY3JpcHQ+CisKKzxzY3JpcHQ+
CisKK2Z1bmN0aW9uIGVkaXRpbmdUZXN0KCkgeworICAgIHZhciB0ZXN0Tm9kZSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCd0ZXN0Jyk7CisgICAgc2V0U2VsZWN0aW9uQ29tbWFuZCh0ZXN0Tm9k
ZSwgMCwgdGVzdE5vZGUsIDApOworICAgIG1vdmVTZWxlY3Rpb25Gb3J3YXJkQnlMaW5lQ29tbWFu
ZCgpOworICAgIGRvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gIkNyYXNoIHRlc3QgcGFzc2VkIjsK
K30KKworPC9zY3JpcHQ+CisKKzx0aXRsZT5FZGl0aW5nIFRlc3Q8L3RpdGxlPiAKKzwvaGVhZD4g
Cis8Ym9keT4KKzxkaXYgaWQ9InRlc3QiIGNvbnRlbnRFZGl0YWJsZT0idHJ1ZSI+UG9zaXRpb24g
ZWRpdGluZyBjdXJzb3IgaGVyZSwgdGhlbiBwcmVzcyBkb3duIGFycm93LjxiciAvPiA8YSBzdHls
ZT0iYmFja2dyb3VuZC1jb2xvcjogcmVkOyBwYWRkaW5nLWxlZnQ6IDIwMHB4OyI+PC9hPjwvZGl2
PgorCis8c2NyaXB0PgorcnVuRHVtcEFzVGV4dEVkaXRpbmdUZXN0KCk7Cis8L3NjcmlwdD4KKwor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGI1Y2JhZGMuLjc1OTU2MTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMS0xMi0zMCAgRGFuaWVsIEphbGt1dCAgPGphbGt1dEBy
ZWQtc3dlYXRlci5jb20+CisKKyAgICAgICAgQ3Jhc2ggd2hlbiBuYXZpZ2F0aW5nIHdpdGggYXJy
b3cga2V5IGludG8gZW1wdHkgYW5jaG9yIGJsb2NrIHdpdGggcGFkZGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ1ODUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZXR1cm4gMCBmcm9tIGNsb3Nlc3RM
ZWFmQ2hpbGRGb3JMb2dpY2FsTGVmdFBvc2l0aW9uIGluc3RlYWQgb2YgCisgICAgICAgIGNyYXNo
aW5nIHdoZW4gYSBub24tbGVhZiBib3ggd2l0aCBubyBjaGlsZHJlbiBpcyBiZWluZyBhc2tlZCBm
b3IKKyAgICAgICAgaXRzIGxlYWYgY2hpbGRyZW4uIEFkanVzdCBsb2dpYyBmb3IgY2FsbGVycyBp
biBwcmV2aW91c0xpbmVQb3NpdGlvbgorICAgICAgICBhbmQgbmV4dExpbmVQb3NpdGlvbiB0byBk
ZXRlY3QgMCByZXNwb25zZSBhbmQgdHJlYXQgdGhlIGJveCBhcworICAgICAgICBub24tbmF2aWdh
YmxlLgorCisgICAgICAgIFRlc3Q6IGVkaXRpbmcvc2VsZWN0aW9uL21vdmUtdG8tZW1wdHktYW5j
aG9yLWxpbmUtY3Jhc2guaHRtbAorCisgICAgICAgICogZWRpdGluZy92aXNpYmxlX3VuaXRzLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OnByZXZpb3VzTGluZVBvc2l0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6Om5leHRMaW5lUG9zaXRpb24pOgorICAgICAgICAqIHJlbmRlcmluZy9Sb290SW5saW5l
Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6OmNsb3Nlc3RMZWFmQ2hp
bGRGb3JMb2dpY2FsTGVmdFBvc2l0aW9uKToKKwogMjAxMS0xMi0yOSAgUGF2ZWwgUG9kaXZpbG92
ICA8cG9kaXZpbG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBzdXBw
b3J0IHNvdXJjZU1hcHBpbmdVUkwgbWFnaWMgY29tbWVudC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvdmlzaWJsZV91bml0cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L3Zpc2libGVfdW5pdHMuY3BwCmluZGV4IGM5MTczY2IuLjhjZDMxNWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvdmlzaWJsZV91bml0cy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy92aXNpYmxlX3VuaXRzLmNwcApAQCAtNjA4LDExICs2MDgsMTQgQEAgVmlzaWJs
ZVBvc2l0aW9uIHByZXZpb3VzTGluZVBvc2l0aW9uKGNvbnN0IFZpc2libGVQb3NpdGlvbiAmdmlz
aWJsZVBvc2l0aW9uLCBpbnQKICAgICBpZiAocm9vdCkgewogICAgICAgICAvLyBGSVhNRTogQ2Fu
IGJlIHdyb25nIGZvciBtdWx0aS1jb2x1bW4gbGF5b3V0IGFuZCB3aXRoIHRyYW5zZm9ybXMuCiAg
ICAgICAgIEludFBvaW50IHBvaW50SW5MaW5lID0gYWJzb2x1dGVMaW5lRGlyZWN0aW9uUG9pbnRU
b0xvY2FsUG9pbnRJbkJsb2NrKHJvb3QsIGxpbmVEaXJlY3Rpb25Qb2ludCk7Ci0gICAgICAgIFJl
bmRlck9iamVjdCogcmVuZGVyZXIgPSByb290LT5jbG9zZXN0TGVhZkNoaWxkRm9yUG9pbnQocG9p
bnRJbkxpbmUsIGlzRWRpdGFibGVQb3NpdGlvbihwKSktPnJlbmRlcmVyKCk7Ci0gICAgICAgIE5v
ZGUqIG5vZGUgPSByZW5kZXJlci0+bm9kZSgpOwotICAgICAgICBpZiAobm9kZSAmJiBlZGl0aW5n
SWdub3Jlc0NvbnRlbnQobm9kZSkpCi0gICAgICAgICAgICByZXR1cm4gcG9zaXRpb25JblBhcmVu
dEJlZm9yZU5vZGUobm9kZSk7Ci0gICAgICAgIHJldHVybiByZW5kZXJlci0+cG9zaXRpb25Gb3JQ
b2ludChwb2ludEluTGluZSk7CisgICAgICAgIElubGluZUJveCogbGVhZkNoaWxkID0gcm9vdC0+
Y2xvc2VzdExlYWZDaGlsZEZvclBvaW50KHBvaW50SW5MaW5lLCBpc0VkaXRhYmxlUG9zaXRpb24o
cCkpOworICAgICAgICBpZiAobGVhZkNoaWxkKSB7CisgICAgICAgICAgICBSZW5kZXJPYmplY3Qq
IHJlbmRlcmVyID0gbGVhZkNoaWxkLT5yZW5kZXJlcigpOworICAgICAgICAgICAgTm9kZSogbm9k
ZSA9IHJlbmRlcmVyLT5ub2RlKCk7CisgICAgICAgICAgICBpZiAobm9kZSAmJiBlZGl0aW5nSWdu
b3Jlc0NvbnRlbnQobm9kZSkpCisgICAgICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uSW5QYXJl
bnRCZWZvcmVOb2RlKG5vZGUpOworICAgICAgICAgICAgcmV0dXJuIHJlbmRlcmVyLT5wb3NpdGlv
bkZvclBvaW50KHBvaW50SW5MaW5lKTsKKyAgICAgICAgfQogICAgIH0KICAgICAKICAgICAvLyBD
b3VsZCBub3QgZmluZCBhIHByZXZpb3VzIGxpbmUuIFRoaXMgbWVhbnMgd2UgbXVzdCBhbHJlYWR5
IGJlIG9uIHRoZSBmaXJzdCBsaW5lLgpAQCAtNzA5LDExICs3MTIsMTQgQEAgVmlzaWJsZVBvc2l0
aW9uIG5leHRMaW5lUG9zaXRpb24oY29uc3QgVmlzaWJsZVBvc2l0aW9uICZ2aXNpYmxlUG9zaXRp
b24sIGludCBsaW4KICAgICBpZiAocm9vdCkgewogICAgICAgICAvLyBGSVhNRTogQ2FuIGJlIHdy
b25nIGZvciBtdWx0aS1jb2x1bW4gbGF5b3V0IGFuZCB3aXRoIHRyYW5zZm9ybXMuCiAgICAgICAg
IEludFBvaW50IHBvaW50SW5MaW5lID0gYWJzb2x1dGVMaW5lRGlyZWN0aW9uUG9pbnRUb0xvY2Fs
UG9pbnRJbkJsb2NrKHJvb3QsIGxpbmVEaXJlY3Rpb25Qb2ludCk7Ci0gICAgICAgIFJlbmRlck9i
amVjdCogcmVuZGVyZXIgPSByb290LT5jbG9zZXN0TGVhZkNoaWxkRm9yUG9pbnQocG9pbnRJbkxp
bmUsIGlzRWRpdGFibGVQb3NpdGlvbihwKSktPnJlbmRlcmVyKCk7Ci0gICAgICAgIE5vZGUqIG5v
ZGUgPSByZW5kZXJlci0+bm9kZSgpOwotICAgICAgICBpZiAobm9kZSAmJiBlZGl0aW5nSWdub3Jl
c0NvbnRlbnQobm9kZSkpCi0gICAgICAgICAgICByZXR1cm4gcG9zaXRpb25JblBhcmVudEJlZm9y
ZU5vZGUobm9kZSk7Ci0gICAgICAgIHJldHVybiByZW5kZXJlci0+cG9zaXRpb25Gb3JQb2ludChw
b2ludEluTGluZSk7CisgICAgICAgIElubGluZUJveCogbGVhZkNoaWxkID0gcm9vdC0+Y2xvc2Vz
dExlYWZDaGlsZEZvclBvaW50KHBvaW50SW5MaW5lLCBpc0VkaXRhYmxlUG9zaXRpb24ocCkpOwor
ICAgICAgICBpZiAobGVhZkNoaWxkKSB7CisgICAgICAgICAgICBSZW5kZXJPYmplY3QqIHJlbmRl
cmVyID0gbGVhZkNoaWxkLT5yZW5kZXJlcigpOworICAgICAgICAgICAgTm9kZSogbm9kZSA9IHJl
bmRlcmVyLT5ub2RlKCk7CisgICAgICAgICAgICBpZiAobm9kZSAmJiBlZGl0aW5nSWdub3Jlc0Nv
bnRlbnQobm9kZSkpCisgICAgICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uSW5QYXJlbnRCZWZv
cmVOb2RlKG5vZGUpOworICAgICAgICAgICAgcmV0dXJuIHJlbmRlcmVyLT5wb3NpdGlvbkZvclBv
aW50KHBvaW50SW5MaW5lKTsKKyAgICAgICAgfQogICAgIH0KIAogICAgIC8vIENvdWxkIG5vdCBm
aW5kIGEgbmV4dCBsaW5lLiBUaGlzIG1lYW5zIHdlIG11c3QgYWxyZWFkeSBiZSBvbiB0aGUgbGFz
dCBsaW5lLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVC
b3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCmluZGV4
IGVmZGVmYTcuLjA4MjAyMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
b290SW5saW5lQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUm9vdElubGlu
ZUJveC5jcHAKQEAgLTQ4Miw3ICs0ODIsNyBAQCBJbmxpbmVCb3gqIFJvb3RJbmxpbmVCb3g6OmNs
b3Nlc3RMZWFmQ2hpbGRGb3JMb2dpY2FsTGVmdFBvc2l0aW9uKGludCBsZWZ0UG9zaXRpbwogewog
ICAgIElubGluZUJveCogZmlyc3RMZWFmID0gZmlyc3RMZWFmQ2hpbGQoKTsKICAgICBJbmxpbmVC
b3gqIGxhc3RMZWFmID0gbGFzdExlYWZDaGlsZCgpOwotICAgIGlmIChmaXJzdExlYWYgPT0gbGFz
dExlYWYgJiYgKCFvbmx5RWRpdGFibGVMZWF2ZXMgfHwgaXNFZGl0YWJsZUxlYWYoZmlyc3RMZWFm
KSkpCisgICAgaWYgKCFmaXJzdExlYWYgfHwgKGZpcnN0TGVhZiA9PSBsYXN0TGVhZiAmJiAoIW9u
bHlFZGl0YWJsZUxlYXZlcyB8fCBpc0VkaXRhYmxlTGVhZihmaXJzdExlYWYpKSkpCiAgICAgICAg
IHJldHVybiBmaXJzdExlYWY7CiAKICAgICAvLyBBdm9pZCByZXR1cm5pbmcgYSBsaXN0IG1hcmtl
ciB3aGVuIHBvc3NpYmxlLgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>