<?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>133500</bug_id>
          
          <creation_ts>2014-06-03 20:54:06 -0700</creation_ts>
          <short_desc>Regression(r169547): Crash in WebCore::styleForFirstLetter() while loading http://thenextweb.com/apple/2014/02/21/apple-confirms-acquired-testflight-creator-burstly/</short_desc>
          <delta_ts>2014-06-04 15:09:17 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://thenextweb.com/apple/2014/02/21/apple-confirms-acquired-testflight-creator-burstly/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>georgij.michaliutin</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1013214</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2014-06-03 20:54:06 -0700</bug_when>
    <thetext>WebKit crashes while loading http://thenextweb.com/apple/2014/02/21/apple-confirms-acquired-testflight-creator-burstly/ 

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

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x00000001074e24b1 WebCore::styleForFirstLetter(WebCore::RenderObject*, WebCore::RenderObject*) + 113
1   com.apple.WebCore             	0x00000001074e24f6 WebCore::RenderBlock::createFirstLetterRenderer(WebCore::RenderObject*, WebCore::RenderText*) + 38
2   com.apple.WebCore             	0x0000000106a6ecb6 WebCore::RenderBlock::updateFirstLetter() + 150
3   com.apple.WebCore             	0x0000000106a6e9c6 WebCore::RenderBlock::layout() + 38
4   com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
5   com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
6   com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
7   com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
8   com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
9   com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
10  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
11  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
12  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
13  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
14  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
15  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
16  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
17  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
18  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
19  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
20  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
21  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
22  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
23  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
24  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
25  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
26  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
27  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
28  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
29  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
30  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
31  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
32  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
33  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
34  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
35  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
36  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
37  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
38  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
39  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
40  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
41  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
42  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
43  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
44  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
45  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
46  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
47  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
48  com.apple.WebCore             	0x00000001074eaa75 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&amp;, WebCore::RenderBlockFlow::MarginInfo&amp;, WebCore::LayoutUnit&amp;, WebCore::LayoutUnit&amp;) + 725
49  com.apple.WebCore             	0x00000001074e9bda WebCore::RenderBlockFlow::layoutBlockChildren(bool, WebCore::LayoutUnit&amp;) + 442
50  com.apple.WebCore             	0x00000001074e8fe8 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit) + 728
51  com.apple.WebCore             	0x0000000106a6e9d6 WebCore::RenderBlock::layout() + 54
52  com.apple.WebCore             	0x0000000106a6e835 WebCore::RenderView::layout() + 725
53  com.apple.WebCore             	0x0000000106a69e1c WebCore::FrameView::layout(bool) + 1996
54  com.apple.WebCore             	0x0000000106b071ff WebCore::Document::updateLayout() + 175
55  com.apple.WebCore             	0x0000000106e785d6 WebCore::Document::updateLayoutIgnorePendingStylesheets(WebCore::Document::RunPostLayoutTasks) + 262
56  com.apple.WebCore             	0x0000000106ba884d WebCore::Element::clientHeight() + 29
57  com.apple.WebCore             	0x00000001071797c6 WebCore::jsElementClientHeight(JSC::ExecState*, JSC::JSObject*, long long, JSC::PropertyName) + 166
58  com.apple.JavaScriptCore      	0x0000000108345f34 JSC::JSValue::get(JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&amp;) const + 532
59  com.apple.JavaScriptCore      	0x00000001084c38f1 llint_slow_path_get_by_id + 273
60  com.apple.JavaScriptCore      	0x00000001086a2fb1 llint_entry + 10037
61  com.apple.JavaScriptCore      	0x00000001086a614c llint_entry + 22736
62  com.apple.JavaScriptCore      	0x00000001086a614c llint_entry + 22736
63  com.apple.JavaScriptCore      	0x00000001086a614c llint_entry + 22736
64  com.apple.JavaScriptCore      	0x00000001086a614c llint_entry + 22736
65  com.apple.JavaScriptCore      	0x00000001086a614c llint_entry + 22736
66  com.apple.JavaScriptCore      	0x00000001086a064d callToJavaScript + 321
67  com.apple.JavaScriptCore      	0x0000000108635563 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 35
68  com.apple.JavaScriptCore      	0x000000010830942b JSC::Interpreter::execute(JSC::ProgramExecutable*, JSC::ExecState*, JSC::JSObject*) + 4747
69  com.apple.JavaScriptCore      	0x0000000108307fc8 JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&amp;, JSC::JSValue, JSC::JSValue*) + 488
70  com.apple.WebCore             	0x00000001075cfa00 WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&amp;, WebCore::DOMWrapperWorld&amp;) + 304
71  com.apple.WebCore             	0x0000000106aba3d9 WebCore::ScriptController::evaluate(WebCore::ScriptSourceCode const&amp;) + 41
72  com.apple.WebCore             	0x0000000106aba26f WebCore::ScriptElement::executeScript(WebCore::ScriptSourceCode const&amp;) + 447
73  com.apple.WebCore             	0x0000000106b0e2ea WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent(WebCore::PendingScript&amp;) + 234
74  com.apple.WebCore             	0x0000000106b0e1db WebCore::HTMLScriptRunner::executeParsingBlockingScript() + 267
75  com.apple.WebCore             	0x0000000106ad0a0f WebCore::HTMLScriptRunner::executeParsingBlockingScripts() + 95
76  com.apple.WebCore             	0x0000000106ab8994 WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder() + 84
77  com.apple.WebCore             	0x0000000106a2a8f8 WebCore::HTMLDocumentParser::canTakeNextToken(WebCore::HTMLDocumentParser::SynchronousMode, WebCore::PumpSession&amp;) + 88
78  com.apple.WebCore             	0x0000000106a299c1 WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode) + 465
79  com.apple.WebCore             	0x0000000106b0ed79 WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution() + 121
80  com.apple.WebCore             	0x0000000106b92572 WebCore::HTMLDocumentParser::notifyFinished(WebCore::CachedResource*) + 82
81  com.apple.WebCore             	0x0000000106ad1bb6 WebCore::CachedResource::checkNotify() + 166
82  com.apple.WebCore             	0x0000000106ad18fc WebCore::SubresourceLoader::didFinishLoading(double) + 92
83  com.apple.WebKit              	0x000000010668235d WebKit::WebResourceLoader::didReceiveWebResourceLoaderMessage(IPC::Connection*, IPC::MessageDecoder&amp;) + 549
84  com.apple.WebKit              	0x00000001065986dc WebKit::NetworkProcessConnection::didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&amp;) + 138
85  com.apple.WebKit              	0x0000000106548aaa IPC::Connection::dispatchMessage(std::__1::unique_ptr&lt;IPC::MessageDecoder, std::__1::default_delete&lt;IPC::MessageDecoder&gt; &gt;) + 94
86  com.apple.WebKit              	0x000000010654ac24 IPC::Connection::dispatchOneMessage() + 106
87  com.apple.JavaScriptCore      	0x000000010873c3a5 WTF::RunLoop::performWork() + 421
88  com.apple.JavaScriptCore      	0x000000010873ca82 WTF::RunLoop::performWork(void*) + 34
89  com.apple.CoreFoundation      	0x00007fff81de6731 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
90  com.apple.CoreFoundation      	0x00007fff81dd7ea2 __CFRunLoopDoSources0 + 242
91  com.apple.CoreFoundation      	0x00007fff81dd762f __CFRunLoopRun + 831
92  com.apple.CoreFoundation      	0x00007fff81dd70b5 CFRunLoopRunSpecific + 309
93  com.apple.HIToolbox           	0x00007fff8cadea0d RunCurrentEventLoopInMode + 226
94  com.apple.HIToolbox           	0x00007fff8cade7b7 ReceiveNextEventCommon + 479
95  com.apple.HIToolbox           	0x00007fff8cade5bc _BlockUntilNextEventMatchingListInModeWithFilter + 65
96  com.apple.AppKit              	0x00007fff81ffa3de _DPSNextEvent + 1434
97  com.apple.AppKit              	0x00007fff81ff9a2b -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122
98  com.apple.AppKit              	0x00007fff81fedb2c -[NSApplication run] + 553
99  com.apple.AppKit              	0x00007fff81fd8913 NSApplicationMain + 940
100 com.apple.XPCService          	0x00007fff8e282c0f _xpc_main + 385
101 libxpc.dylib                  	0x00007fff85720bde xpc_main + 399
102 com.apple.WebKit.WebContent.Development	0x00000001021fe630 0x1021fd000 + 5680
103 libdyld.dylib                 	0x00007fff87d1d5fd start + 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013225</commentid>
    <comment_count>1</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-03 21:46:43 -0700</bug_when>
    <thetext>Ok, I have an idea of what is going on.

Some selector must have ::first-letter, but does not actually match. When matching the rightmost fragment, we set the FIRST_LETTER flag on the style.

When generating the blocks for layout, RenderBlock find that one block has FIRST_LETTER, and try to get its style. Since the selector does not actually match, the style never resolve and the code continue with a null style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013378</commentid>
    <comment_count>2</comment_count>
      <attachid>232501</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-04 14:37:12 -0700</bug_when>
    <thetext>Created attachment 232501
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013379</commentid>
    <comment_count>3</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-04 14:37:49 -0700</bug_when>
    <thetext>&lt;rdar://problem/17154371&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013392</commentid>
    <comment_count>4</comment_count>
      <attachid>232501</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-04 15:09:11 -0700</bug_when>
    <thetext>Comment on attachment 232501
Patch

Clearing flags on attachment: 232501

Committed r169599: &lt;http://trac.webkit.org/changeset/169599&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013393</commentid>
    <comment_count>5</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-04 15:09:17 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>232501</attachid>
            <date>2014-06-04 14:37:12 -0700</date>
            <delta_ts>2014-06-04 15:09:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-133500-20140604143607.patch</filename>
            <type>text/plain</type>
            <size>7678</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2OTU5NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMyIEBACisyMDE0LTA2LTA0ICBCZW5qYW1p
biBQb3VsYWluICA8YmVuamFtaW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZWdyZXNzaW9uKHIx
Njk1NDcpOiBDcmFzaCBpbiBXZWJDb3JlOjpzdHlsZUZvckZpcnN0TGV0dGVyKCkgd2hpbGUgbG9h
ZGluZyBodHRwOi8vdGhlbmV4dHdlYi5jb20vYXBwbGUvMjAxNC8wMi8yMS9hcHBsZS1jb25maXJt
cy1hY3F1aXJlZC10ZXN0ZmxpZ2h0LWNyZWF0b3ItYnVyc3RseS8KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMzUwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVubGlrZSB0aGUgb3RoZXIgdHJlZSBtYXJr
aW5nIG9wdGltaXphdGlvbiwgYWRkaW5nIEhhc1BzZXVkb1N0eWxlKCkgb24gYW4gZWxlbWVudCBz
dHlsZQorICAgICAgICBkdXJpbmcgc3R5bGUgcmVzb2x1dGlvbiBtdXN0IGJlIGNvbnNlcnZhdGl2
ZSBhbmQgbm90IHNldCB0aGUgZmxhZyB1bmxlc3MgZXZlcnkgb3RoZXIgZmlsdGVyCisgICAgICAg
IG1hdGNoZWQgZmlyc3QuCisKKyAgICAgICAgQWZ0ZXIgcjE2OTU0NywgdGhlIFNlbGVjdG9yQ2hl
Y2tlciB3YXMgc2V0dGluZyBmbGFncyBvbiBIYXNQc2V1ZG9TdHlsZSgpIGR1cmluZyB0aGUgcHNl
dWRvCisgICAgICAgIGVsZW1lbnQgbWF0Y2hpbmcuIElmIHRoYXQgcGFzc2VkIGJ1dCB0aGUgcmVt
YWluaW5nIGZpbHRlciBkaWQgbm90IG1hdGNoLCB0aGUgZWxlbWVudCBzdHlsZQorICAgICAgICBj
b3VsZCBoYXZlIHRoZSBmbGFnICJGSVJTVF9MRVRURVIiIHdoaWxlIG5vdCBiZWluZyBhYmxlIHRv
IHJlc29sdmUgYSBzdHlsZSBmb3IgIkZJUlNUX0xFVFRFUiIuCisKKyAgICAgICAgV2hlbiB0aGUg
bGF5b3V0IGNvZGUgd2FzIGNyZWF0aW5nIHRoZSByZW5kZXJlciwgaXQgd291bGQgZmluZCB0aGUg
RklSU1RfTEVUVEVSIGZsYWcgb24gdGhlIG1haW4gc3R5bGUKKyAgICAgICAgYW5kIHRyeSB0byBn
ZXQgdGhlIHNwZWNpZmljIHN0eWxlIGZvciBGSVJTVF9MRVRURVIuIFNpbmNlIG5vIHJ1bGUgd291
bGQgcmVzb2x2ZSBmb3IgRklSU1RfTEVUVEVSLAorICAgICAgICB0aGUgc3R5bGUgd291bGQgYmUg
bnVsbCBhbmQgdGhlIGNvZGUgd291bGQgYmUgY3Jhc2hpbmcgd2hlbiBhY2Nlc3NpbmcgaXRzIHBh
cmFtZXRlcnMuCisKKyAgICAgICAgVGhpcyBwYXRjaCBmaXhlcyB0aGUgaXNzdWUgYnkgbW92aW5n
IHRoZSBzdHlsZSBtYXJraW5nIGZvciBwc2V1ZG8gZWxlbWVudCBhdCB0aGUgZW5kIG9mIHRoZSBt
YXRjaGluZy4KKworICAgICAgICBUZXN0OiBmYXN0L2Nzcy9maXJzdC1sZXR0ZXItb24tbm9uLW1h
dGNoaW5nLXNlbGVjdG9ycy5odG1sCisKKyAgICAgICAgKiBjc3MvU2VsZWN0b3JDaGVja2VyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlNlbGVjdG9yQ2hlY2tlcjo6bWF0Y2gpOgorICAgICAgICAo
V2ViQ29yZTo6U2VsZWN0b3JDaGVja2VyOjptYXRjaFJlY3Vyc2l2ZWx5KToKKyAgICAgICAgKiBj
c3MvU2VsZWN0b3JDaGVja2VyLmg6CisgICAgICAgIChXZWJDb3JlOjpTZWxlY3RvckNoZWNrZXI6
Om1hdGNoKTogRGVsZXRlZC4KKwogMjAxNC0wNi0wMyAgSm9uIEhvbmV5Y3V0dCAgPGpob25leWN1
dHRAYXBwbGUuY29tPgogCiAgICAgICAgIFBhc3RpbmcgbXVsdGlwbGUgcGhvdG9zIG9uIGlPUyBv
bmx5IHBhc3RlcyBvbmUgcGhvdG8KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNo
ZWNrZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNr
ZXIuY3BwCShyZXZpc2lvbiAxNjk1OTApCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JD
aGVja2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM5LDYgKzEzOSwyMyBAQCBTZWxlY3RvckNo
ZWNrZXI6OlNlbGVjdG9yQ2hlY2tlcihEb2N1bWVuCiB7CiB9CiAKK2Jvb2wgU2VsZWN0b3JDaGVj
a2VyOjptYXRjaChjb25zdCBTZWxlY3RvckNoZWNraW5nQ29udGV4dCYgY29udGV4dCkgY29uc3QK
K3sKKyAgICBQc2V1ZG9JZCBwc2V1ZG9JZCA9IE5PUFNFVURPOworICAgIGlmIChtYXRjaFJlY3Vy
c2l2ZWx5KGNvbnRleHQsIHBzZXVkb0lkKSAhPSBTZWxlY3Rvck1hdGNoZXMpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBpZiAoY29udGV4dC5wc2V1ZG9JZCAhPSBOT1BTRVVETyAmJiBjb250
ZXh0LnBzZXVkb0lkICE9IHBzZXVkb0lkKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYg
KGNvbnRleHQucHNldWRvSWQgPT0gTk9QU0VVRE8gJiYgcHNldWRvSWQgIT0gTk9QU0VVRE8pIHsK
KyAgICAgICAgaWYgKG1fbW9kZSA9PSBSZXNvbHZpbmdTdHlsZSAmJiBwc2V1ZG9JZCA8IEZJUlNU
X0lOVEVSTkFMX1BTRVVET0lEKQorICAgICAgICAgICAgY29udGV4dC5lbGVtZW50U3R5bGUtPnNl
dEhhc1BzZXVkb1N0eWxlKHBzZXVkb0lkKTsKKworICAgICAgICAvLyBGb3IgU2hhcmluZ1J1bGVz
IHRlc3RpbmcsIGFueSBtYXRjaCBpcyBnb29kIGVub3VnaCwgd2UgZG9uJ3QgY2FyZSB3aGF0IGlz
IG1hdGNoZWQuCisgICAgICAgIHJldHVybiBtX21vZGUgPT0gU2hhcmluZ1J1bGVzIHx8IG1fbW9k
ZSA9PSBTdHlsZUludmFsaWRhdGlvbjsKKyAgICB9CisgICAgcmV0dXJuIHRydWU7Cit9CisKIC8v
IFJlY3Vyc2l2ZSBjaGVjayBvZiBzZWxlY3RvcnMgYW5kIGNvbWJpbmF0b3JzCiAvLyBJdCBjYW4g
cmV0dXJuIDQgZGlmZmVyZW50IHZhbHVlczoKIC8vICogU2VsZWN0b3JNYXRjaGVzICAgICAgICAg
IC0gdGhlIHNlbGVjdG9yIG1hdGNoZXMgdGhlIGVsZW1lbnQgZQpAQCAtMTcyLDExICsxODksNiBA
QCBTZWxlY3RvckNoZWNrZXI6Ok1hdGNoIFNlbGVjdG9yQ2hlY2tlcjo6CiAKICAgICAgICAgICAg
ICAgICBpZiAocHNldWRvSWQgPT0gRklSU1RfTEVUVEVSKQogICAgICAgICAgICAgICAgICAgICBj
b250ZXh0LmVsZW1lbnQtPmRvY3VtZW50KCkuc3R5bGVTaGVldENvbGxlY3Rpb24oKS5zZXRVc2Vz
Rmlyc3RMZXR0ZXJSdWxlcyh0cnVlKTsKLQotICAgICAgICAgICAgICAgIGlmIChjb250ZXh0LnBz
ZXVkb0lkID09IE5PUFNFVURPKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChtX21vZGUgPT0g
UmVzb2x2aW5nU3R5bGUgJiYgcHNldWRvSWQgPCBGSVJTVF9JTlRFUk5BTF9QU0VVRE9JRCkKLSAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuZWxlbWVudFN0eWxlLT5zZXRIYXNQc2V1ZG9T
dHlsZShwc2V1ZG9JZCk7Ci0gICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAg
ICB9CiAgICAgfQpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXIuaAkocmV2aXNp
b24gMTY5NTkwKQorKysgU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlci5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC04MiwxOSArODIsNyBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgaGFzU2Vs
ZWN0aW9uUHNldWRvOwogICAgIH07CiAKLSAgICBib29sIG1hdGNoKGNvbnN0IFNlbGVjdG9yQ2hl
Y2tpbmdDb250ZXh0JiBjb250ZXh0KSBjb25zdAotICAgIHsKLSAgICAgICAgUHNldWRvSWQgcHNl
dWRvSWQgPSBOT1BTRVVETzsKLSAgICAgICAgaWYgKG1hdGNoUmVjdXJzaXZlbHkoY29udGV4dCwg
cHNldWRvSWQpICE9IFNlbGVjdG9yTWF0Y2hlcykKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICAgICAgaWYgKGNvbnRleHQucHNldWRvSWQgIT0gTk9QU0VVRE8gJiYgY29udGV4dC5wc2V1
ZG9JZCAhPSBwc2V1ZG9JZCkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgaWYg
KGNvbnRleHQucHNldWRvSWQgPT0gTk9QU0VVRE8gJiYgcHNldWRvSWQgIT0gTk9QU0VVRE8pIHsK
LSAgICAgICAgICAgIC8vIEZvciBTaGFyaW5nUnVsZXMgdGVzdGluZywgYW55IG1hdGNoIGlzIGdv
b2QgZW5vdWdoLCB3ZSBkb24ndCBjYXJlIHdoYXQgaXMgbWF0Y2hlZC4KLSAgICAgICAgICAgIHJl
dHVybiBtX21vZGUgPT0gU2hhcmluZ1J1bGVzIHx8IG1fbW9kZSA9PSBTdHlsZUludmFsaWRhdGlv
bjsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9CisgICAgYm9vbCBtYXRj
aChjb25zdCBTZWxlY3RvckNoZWNraW5nQ29udGV4dCYpIGNvbnN0OwogCiAgICAgc3RhdGljIGJv
b2wgdGFnTWF0Y2hlcyhjb25zdCBFbGVtZW50KiwgY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogICAg
IHN0YXRpYyBib29sIGlzQ29tbW9uUHNldWRvQ2xhc3NTZWxlY3Rvcihjb25zdCBDU1NTZWxlY3Rv
ciopOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTY5NTk0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTQtMDYtMDQgIEJlbmphbWluIFBv
dWxhaW4gIDxiZW5qYW1pbkB3ZWJraXQub3JnPgorCisgICAgICAgIFJlZ3Jlc3Npb24ocjE2OTU0
Nyk6IENyYXNoIGluIFdlYkNvcmU6OnN0eWxlRm9yRmlyc3RMZXR0ZXIoKSB3aGlsZSBsb2FkaW5n
IGh0dHA6Ly90aGVuZXh0d2ViLmNvbS9hcHBsZS8yMDE0LzAyLzIxL2FwcGxlLWNvbmZpcm1zLWFj
cXVpcmVkLXRlc3RmbGlnaHQtY3JlYXRvci1idXJzdGx5LworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMzNTAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2Nzcy9maXJzdC1sZXR0ZXItb24tbm9u
LW1hdGNoaW5nLXNlbGVjdG9ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
Y3NzL2ZpcnN0LWxldHRlci1vbi1ub24tbWF0Y2hpbmctc2VsZWN0b3JzLmh0bWw6IEFkZGVkLgor
CiAyMDE0LTA1LTI3ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAK
ICAgICAgICAgTGlzdHMgc3R5bGVkIHdpdGggU1ZHIGZvbnRzIGFyZSBub3QgcmVuZGVyZWQgYXMg
ZXhwZWN0ZWQKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY3NzL2ZpcnN0LWxldHRlci1vbi1ub24t
bWF0Y2hpbmctc2VsZWN0b3JzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9mYXN0L2Nzcy9maXJzdC1sZXR0ZXItb24tbm9uLW1hdGNoaW5nLXNlbGVjdG9ycy1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Nzcy9maXJzdC1sZXR0ZXIt
b24tbm9uLW1hdGNoaW5nLXNlbGVjdG9ycy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSwxMSBAQAorVGhlIHN0eWxlIHJlc29sdXRpb24gaGFzIGFuIG9wdGltaXphdGlvbiB0
byBkZXRlY3QgaWYgYSBzZWxlY3RvciBoYXMgY2VydGFpbiBwc2V1ZG8gZWxlbWVudC4gVGhlIG9w
dGltaXphdGlvbiBzaG91bGQgb25seSBoYXBwZW4gaWYgdGhlIHNlbGVjdG9yIGNvbXBsZXRlbHkg
bWF0Y2ggd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBwc2V1ZG8gZWxlbWVudC4KKworVGhpcyB0
ZXN0IHBhc3MgaWYgYWxsIHRoZSBsaW5lcyByZWFkICJQQVNTIi4KKworUEFTUworCitQQVNTCisK
K1BBU1MKKworUEFTUwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jc3MvZmlyc3QtbGV0dGVyLW9u
LW5vbi1tYXRjaGluZy1zZWxlY3RvcnMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9m
YXN0L2Nzcy9maXJzdC1sZXR0ZXItb24tbm9uLW1hdGNoaW5nLXNlbGVjdG9ycy5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9jc3MvZmlyc3QtbGV0dGVyLW9uLW5vbi1tYXRj
aGluZy1zZWxlY3RvcnMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM5IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+PC90aXRsZT4KKzxzdHlsZSB0eXBl
PSJ0ZXh0L2NzcyI+Citkb2Vzbm90ZXhpc3Q6Zmlyc3QtbGV0dGVyIHsgY29sb3I6IHJlZDsgfQor
ZG9lc25vdGV4aXN0ID4gI3RhcmdldGE6Zmlyc3QtbGV0dGVyIHsgY29sb3I6IHJlZDsgfQorZG9l
c25vdGV4aXN0ICN0YXJnZXRiOmZpcnN0LWxldHRlciB7IGNvbG9yOiByZWQ7IH0KK2RvZXNub3Rl
eGlzdCArICN0YXJnZXRjOmZpcnN0LWxldHRlciB7IGNvbG9yOiByZWQ7IH0KK2RvZXNub3RleGlz
dCB+ICN0YXJnZXRkOmZpcnN0LWxldHRlciB7IGNvbG9yOiByZWQ7IH0KKzwvc3R5bGU+CisKKzxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAgZG9j
dW1lbnQuYm9keS5vZmZzZXRUb3A7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdl
dGEiKS5pbm5lckhUTUwgPSAiUEFTUyI7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRh
cmdldGIiKS5maXJzdENoaWxkLmRhdGEgPSAiUEFTUyI7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInRhcmdldGMiKS5yZXBsYWNlQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlBB
U1MiKSwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldGMiKS5maXJzdENoaWxkKTsKKyAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0ZCIpLnRleHRDb250ZW50ID0gIlBBU1Mi
OworfQorPC9zY3JpcHQ+CisKKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0idGVzdCgpIj4KKzxwPgor
VGhlIHN0eWxlIHJlc29sdXRpb24gaGFzIGFuIG9wdGltaXphdGlvbiB0byBkZXRlY3QgaWYgYSBz
ZWxlY3RvciBoYXMgY2VydGFpbiBwc2V1ZG8gZWxlbWVudC4gVGhlIG9wdGltaXphdGlvbiBzaG91
bGQgb25seSBoYXBwZW4gaWYgdGhlIHNlbGVjdG9yIGNvbXBsZXRlbHkgbWF0Y2ggd2l0aCB0aGUg
ZXhjZXB0aW9uIG9mIHRoZSBwc2V1ZG8gZWxlbWVudC4KKzwvcD4KKzxwPlRoaXMgdGVzdCBwYXNz
IGlmIGFsbCB0aGUgbGluZXMgcmVhZCAiUEFTUyIuPC9wPgorPGhyPgorPHAgaWQ9InRhcmdldGEi
PmRpZG4mcnNxdW87dCBydW48L3A+Cis8cCBpZD0idGFyZ2V0YiI+ZGlkbiZyc3F1bzt0IHJ1bjwv
cD4KKzxwIGlkPSJ0YXJnZXRjIj5kaWRuJnJzcXVvO3QgcnVuPC9wPgorPHAgaWQ9InRhcmdldGQi
PmRpZG4mcnNxdW87dCBydW48L3A+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>