<?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>110359</bug_id>
          
          <creation_ts>2013-02-20 11:20:12 -0800</creation_ts>
          <short_desc>Web Inspector: CSSAgent.setStyleSheetText crashes on inline styles</short_desc>
          <delta_ts>2013-02-26 01:17:12 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Timothy Hatcher">timothy</reporter>
          <assigned_to name="Alexander Pavlov (apavlov)">apavlov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>graouts</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>837596</commentid>
    <comment_count>0</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-02-20 11:20:12 -0800</bug_when>
    <thetext>While experimenting with style editing I found that calling CSSAgent.setStyleSheetText on an inline style&apos;s StyleSheetId will cause a crash.

This happens because m_pageStyleSheet is always null for InspectorStyleSheetForInlineStyle.

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

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.WebCore             	0x0000000101af332e WebCore::InspectorStyleSheet::reparseStyleSheet(WTF::String const&amp;) + 62 (RefPtr.h:58)
1   com.apple.WebCore             	0x0000000101a953aa WebCore::InspectorCSSAgent::SetStyleSheetTextAction::redo(int&amp;) + 42 (InspectorCSSAgent.cpp:334)
2   com.apple.WebCore             	0x0000000101a9532b WebCore::InspectorCSSAgent::SetStyleSheetTextAction::perform(int&amp;) + 43 (InspectorCSSAgent.cpp:319)
3   com.apple.WebCore             	0x0000000101aca931 WebCore::InspectorHistory::perform(WTF::PassOwnPtr&lt;WebCore::InspectorHistory::Action&gt;, int&amp;) + 33 (InspectorHistory.cpp:92)
4   com.apple.WebCore             	0x0000000101a8cc1c WebCore::InspectorCSSAgent::setStyleSheetText(WTF::String*, WTF::String const&amp;, WTF::String const&amp;) + 108 (PassOwnPtr.h:56)
5   com.apple.WebCore             	0x0000000101a609e2 WebCore::InspectorBackendDispatcherImpl::CSS_setStyleSheetText(long, WebCore::InspectorObject*) + 882 (PassRefPtr.h:97)
6   com.apple.WebCore             	0x0000000101a7e507 WebCore::InspectorBackendDispatcherImpl::dispatch(WTF::String const&amp;) + 1687 (RefPtr.h:56)
7   com.apple.WebCore             	0x0000000101ac7ad5 WebCore::InspectorBackendDispatchTask::onTimer(WebCore::Timer&lt;WebCore::InspectorBackendDispatchTask&gt;*) + 69 (RefPtr.h:56)
8   com.apple.WebCore             	0x0000000102243c6f WebCore::ThreadTimers::sharedTimerFiredInternal() + 175 (ThreadTimers.cpp:132)
9   com.apple.WebCore             	0x00000001020cbeda WebCore::timerFired(__CFRunLoopTimer*, void*) + 58 (SharedTimerMac.mm:167)
10  com.apple.CoreFoundation      	0x00007fff902e4804 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
11  com.apple.CoreFoundation      	0x00007fff902e431d __CFRunLoopDoTimer + 557
12  com.apple.CoreFoundation      	0x00007fff902c9ad9 __CFRunLoopRun + 1529
13  com.apple.CoreFoundation      	0x00007fff902c90e2 CFRunLoopRunSpecific + 290
14  com.apple.HIToolbox           	0x00007fff95e3eeb4 RunCurrentEventLoopInMode + 209
15  com.apple.HIToolbox           	0x00007fff95e3ec52 ReceiveNextEventCommon + 356
16  com.apple.HIToolbox           	0x00007fff95e3eae3 BlockUntilNextEventMatchingListInMode + 62
17  com.apple.AppKit              	0x00007fff93bf5563 _DPSNextEvent + 685
18  com.apple.AppKit              	0x00007fff93bf4e22 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 128
19  com.apple.AppKit              	0x00007fff93bec1d3 -[NSApplication run] + 517
20  com.apple.WebCore             	0x0000000102076e8c WebCore::RunLoop::run() + 76 (RunLoopMac.mm:43)
21  com.apple.WebKit2             	0x000000010029d29c int WebKit::ChildProcessMain&lt;WebKit::WebProcess, WebKit::WebContentProcessMainDelegate&gt;(int, char**) + 702 (ChildProcessEntryPoint.h:100)
22  com.apple.WebProcess          	0x0000000100000df7 main + 228 (ChildProcessMain.mm:73)
23  libdyld.dylib                 	0x00007fff8e0c07e1 start + 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>837642</commentid>
    <comment_count>1</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2013-02-20 12:13:31 -0800</bug_when>
    <thetext>In fact, as you figure InspectorStyleSheetForInlineStyle is not intended to be given a new stylesheet text. How did you extract the styleSheetId for that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>837690</commentid>
    <comment_count>2</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-02-20 13:21:22 -0800</bug_when>
    <thetext>The styleSheetId property on the CSSStyleId.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>838151</commentid>
    <comment_count>3</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2013-02-20 22:24:29 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; The styleSheetId property on the CSSStyleId.

OK, so you didn&apos;t get it through getAllStyleSheets() or something. Do you think the best option is to make setStyleSheetText() (and some other operations, like addRule()) a no-op (return error) for these stylesheets? Or can you think of some special semantics for [some of] those?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>838294</commentid>
    <comment_count>4</comment_count>
      <attachid>189499</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2013-02-21 03:36:41 -0800</bug_when>
    <thetext>Created attachment 189499
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>838727</commentid>
    <comment_count>5</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-02-21 12:55:37 -0800</bug_when>
    <thetext>Returning an error is fine. Setting the text for any style declaration is tracked by bug 109340. And that should work for inline styles.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841773</commentid>
    <comment_count>6</comment_count>
      <attachid>189499</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-26 01:17:08 -0800</bug_when>
    <thetext>Comment on attachment 189499
Patch

Clearing flags on attachment: 189499

Committed r144025: &lt;http://trac.webkit.org/changeset/144025&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841774</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-26 01:17:12 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189499</attachid>
            <date>2013-02-21 03:36:41 -0800</date>
            <delta_ts>2013-02-26 01:17:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110359-20130221153301.patch</filename>
            <type>text/plain</type>
            <size>9845</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQzNTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzcwNjI0YzRiMjNhYWFl
ZDVlOWVmODUyYTg3ZTFhNDMxYTI3OTE2Ni4uOGQ0N2U4MzQxMjZjZmZkZTNkYzc0NjViYzg3ZDQz
ZGI5NWU5ZTUxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAyLTIxICBBbGV4
YW5kZXIgUGF2bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3Bl
Y3RvcjogQ1NTQWdlbnQuc2V0U3R5bGVTaGVldFRleHQgY3Jhc2hlcyBvbiBpbmxpbmUgc3R5bGVz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTAzNTkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGluc3Bl
Y3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JD
U1NBZ2VudDo6U2V0U3R5bGVTaGVldFRleHRBY3Rpb246OnVuZG8pOiBQYXNzIEV4Y2VwdGlvbkNv
ZGUgaW50byBzZXRUZXh0KCkuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDU1NBZ2VudDo6
U2V0U3R5bGVTaGVldFRleHRBY3Rpb246OnJlZG8pOiBEaXR0by4KKyAgICAgICAgKiBpbnNwZWN0
b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JT
dHlsZVNoZWV0OjpzZXRUZXh0KTogTWFrZSB1c2Ugb2YgY2hlY2tQYWdlU3R5bGVTaGVldCgpLgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yU3R5bGVTaGVldDo6c2V0UnVsZVNlbGVjdG9yKTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHlsZVNoZWV0OjphZGRSdWxlKTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHlsZVNoZWV0OjpkZWxldGVSdWxl
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHlsZVNoZWV0OjpjaGVja1Bh
Z2VTdHlsZVNoZWV0KToKKyAgICAgICAgICBSZXR1cm4gTk9UX1NVUFBPUlRFRF9FUlIgaWYgbm8g
bV9wYWdlU3R5bGVTaGVldC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclN0eWxlU2hlZXQ6
OnNldFN0eWxlVGV4dCk6IENoZWNrIGZpZWxkIGRpcmVjdGx5LgorICAgICAgICAqIGluc3BlY3Rv
ci9JbnNwZWN0b3JTdHlsZVNoZWV0Lmg6CisKIDIwMTMtMDItMjAgIFZzZXZvbG9kIFZsYXNvdiAg
PHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogVGFiYmVkRWRp
dG9yQ29udGFpbmVyIGFuZCBPcGVuUmVzb3VyY2VEaWFsb2cgc2hvdWxkIHNob3cgdWlTb3VyY2VD
b2RlIHBhdGggYW5kIG5hbWUgaW5zdGVhZCBvZiBwYXJzZWRVUkwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwCmluZGV4IDZkNzA1YWUxZWRlZGVlZmFk
YTlhMmQwMTMyZTZhZmY3Y2VmMTNjOWYuLjUxOTk2YTNjMzUzMDcyYWI4ODYwZTE0ZmE5MGVkNmY2
ZTJlODM2MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JD
U1NBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNTU0Fn
ZW50LmNwcApAQCAtMzE4LDE4ICszMTgsMTggQEAgcHVibGljOgogICAgICAgICByZXR1cm4gcmVk
byhlYyk7CiAgICAgfQogCi0gICAgdmlydHVhbCBib29sIHVuZG8oRXhjZXB0aW9uQ29kZSYpCisg
ICAgdmlydHVhbCBib29sIHVuZG8oRXhjZXB0aW9uQ29kZSYgZWMpCiAgICAgewotICAgICAgICBp
ZiAobV9zdHlsZVNoZWV0LT5zZXRUZXh0KG1fb2xkVGV4dCkpIHsKKyAgICAgICAgaWYgKG1fc3R5
bGVTaGVldC0+c2V0VGV4dChtX29sZFRleHQsIGVjKSkgewogICAgICAgICAgICAgbV9zdHlsZVNo
ZWV0LT5yZXBhcnNlU3R5bGVTaGVldChtX29sZFRleHQpOwogICAgICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIAotICAgIHZpcnR1
YWwgYm9vbCByZWRvKEV4Y2VwdGlvbkNvZGUmKQorICAgIHZpcnR1YWwgYm9vbCByZWRvKEV4Y2Vw
dGlvbkNvZGUmIGVjKQogICAgIHsKLSAgICAgICAgaWYgKG1fc3R5bGVTaGVldC0+c2V0VGV4dCht
X3RleHQpKSB7CisgICAgICAgIGlmIChtX3N0eWxlU2hlZXQtPnNldFRleHQobV90ZXh0LCBlYykp
IHsKICAgICAgICAgICAgIG1fc3R5bGVTaGVldC0+cmVwYXJzZVN0eWxlU2hlZXQobV90ZXh0KTsK
ICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5jcHAKaW5kZXggZGFhY2I5NzA4NGU3MTFh
NmY1ODYxYWFiYjFkMmI1NGQwMmIzODE0MS4uOWFhNzZiZGUzOThjMGEzYmVmMDJlYWExNGMwOGYx
NDhmNmE2OWViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
clN0eWxlU2hlZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JT
dHlsZVNoZWV0LmNwcApAQCAtNzc5LDggKzc3OSwxMCBAQCB2b2lkIEluc3BlY3RvclN0eWxlU2hl
ZXQ6OnJlcGFyc2VTdHlsZVNoZWV0KGNvbnN0IFN0cmluZyYgdGV4dCkKICAgICB9CiB9CiAKLWJv
b2wgSW5zcGVjdG9yU3R5bGVTaGVldDo6c2V0VGV4dChjb25zdCBTdHJpbmcmIHRleHQpCitib29s
IEluc3BlY3RvclN0eWxlU2hlZXQ6OnNldFRleHQoY29uc3QgU3RyaW5nJiB0ZXh0LCBFeGNlcHRp
b25Db2RlJiBlYykKIHsKKyAgICBpZiAoIWNoZWNrUGFnZVN0eWxlU2hlZXQoZWMpKQorICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFtX3BhcnNlZFN0eWxlU2hlZXQpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKIApAQCAtODAyLDYgKzgwNCw4IEBAIFN0cmluZyBJbnNwZWN0b3JTdHlsZVNo
ZWV0OjpydWxlU2VsZWN0b3IoY29uc3QgSW5zcGVjdG9yQ1NTSWQmIGlkLCBFeGNlcHRpb25Db2Rl
CiAKIGJvb2wgSW5zcGVjdG9yU3R5bGVTaGVldDo6c2V0UnVsZVNlbGVjdG9yKGNvbnN0IEluc3Bl
Y3RvckNTU0lkJiBpZCwgY29uc3QgU3RyaW5nJiBzZWxlY3RvciwgRXhjZXB0aW9uQ29kZSYgZWMp
CiB7CisgICAgaWYgKCFjaGVja1BhZ2VTdHlsZVNoZWV0KGVjKSkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIENTU1N0eWxlUnVsZSogcnVsZSA9IHJ1bGVGb3JJZChpZCk7CiAgICAgaWYgKCFy
dWxlKSB7CiAgICAgICAgIGVjID0gTk9UX0ZPVU5EX0VSUjsKQEAgLTgzNiw2ICs4NDAsOCBAQCBz
dGF0aWMgYm9vbCBjaGVja1N0eWxlUnVsZVNlbGVjdG9yKERvY3VtZW50KiBkb2N1bWVudCwgY29u
c3QgU3RyaW5nJiBzZWxlY3RvcikKIAogQ1NTU3R5bGVSdWxlKiBJbnNwZWN0b3JTdHlsZVNoZWV0
OjphZGRSdWxlKGNvbnN0IFN0cmluZyYgc2VsZWN0b3IsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewor
ICAgIGlmICghY2hlY2tQYWdlU3R5bGVTaGVldChlYykpCisgICAgICAgIHJldHVybiAwOwogICAg
IGlmICghY2hlY2tTdHlsZVJ1bGVTZWxlY3RvcihtX3BhZ2VTdHlsZVNoZWV0LT5vd25lckRvY3Vt
ZW50KCksIHNlbGVjdG9yKSkgewogICAgICAgICBlYyA9IFNZTlRBWF9FUlI7CiAgICAgICAgIHJl
dHVybiAwOwpAQCAtODczLDcgKzg3OSw3IEBAIENTU1N0eWxlUnVsZSogSW5zcGVjdG9yU3R5bGVT
aGVldDo6YWRkUnVsZShjb25zdCBTdHJpbmcmIHNlbGVjdG9yLCBFeGNlcHRpb25Db2RlCiAgICAg
c3R5bGVTaGVldFRleHQuYXBwZW5kKHNlbGVjdG9yKTsKICAgICBzdHlsZVNoZWV0VGV4dC5hcHBl
bmRMaXRlcmFsKCIge30iKTsKICAgICAvLyBVc2luZyBzZXRUZXh0KCkgYXMgdGhpcyBvcGVyYXRp
b24gY2hhbmdlcyB0aGUgc3R5bGUgc2hlZXQgcnVsZSBzZXQuCi0gICAgc2V0VGV4dChzdHlsZVNo
ZWV0VGV4dC50b1N0cmluZygpKTsKKyAgICBzZXRUZXh0KHN0eWxlU2hlZXRUZXh0LnRvU3RyaW5n
KCksIEFTU0VSVF9OT19FWENFUFRJT04pOwogCiAgICAgZmlyZVN0eWxlU2hlZXRDaGFuZ2VkKCk7
CiAKQEAgLTg4Miw2ICs4ODgsOCBAQCBDU1NTdHlsZVJ1bGUqIEluc3BlY3RvclN0eWxlU2hlZXQ6
OmFkZFJ1bGUoY29uc3QgU3RyaW5nJiBzZWxlY3RvciwgRXhjZXB0aW9uQ29kZQogCiBib29sIElu
c3BlY3RvclN0eWxlU2hlZXQ6OmRlbGV0ZVJ1bGUoY29uc3QgSW5zcGVjdG9yQ1NTSWQmIGlkLCBF
eGNlcHRpb25Db2RlJiBlYykKIHsKKyAgICBpZiAoIWNoZWNrUGFnZVN0eWxlU2hlZXQoZWMpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgUmVmUHRyPENTU1N0eWxlUnVsZT4gcnVsZSA9IHJ1
bGVGb3JJZChpZCk7CiAgICAgaWYgKCFydWxlKSB7CiAgICAgICAgIGVjID0gTk9UX0ZPVU5EX0VS
UjsKQEAgLTkwNyw3ICs5MTUsNyBAQCBib29sIEluc3BlY3RvclN0eWxlU2hlZXQ6OmRlbGV0ZVJ1
bGUoY29uc3QgSW5zcGVjdG9yQ1NTSWQmIGlkLCBFeGNlcHRpb25Db2RlJiBlYwogCiAgICAgU3Ry
aW5nIHNoZWV0VGV4dCA9IG1fcGFyc2VkU3R5bGVTaGVldC0+dGV4dCgpOwogICAgIHNoZWV0VGV4
dC5yZW1vdmUoc291cmNlRGF0YS0+cnVsZUhlYWRlclJhbmdlLnN0YXJ0LCBzb3VyY2VEYXRhLT5y
dWxlQm9keVJhbmdlLmVuZCAtIHNvdXJjZURhdGEtPnJ1bGVIZWFkZXJSYW5nZS5zdGFydCArIDEp
OwotICAgIHNldFRleHQoc2hlZXRUZXh0KTsKKyAgICBzZXRUZXh0KHNoZWV0VGV4dCwgQVNTRVJU
X05PX0VYQ0VQVElPTik7CiAgICAgZmlyZVN0eWxlU2hlZXRDaGFuZ2VkKCk7CiAgICAgcmV0dXJu
IHRydWU7CiB9CkBAIC0xMTc2LDYgKzExODQsMTUgQEAgdW5zaWduZWQgSW5zcGVjdG9yU3R5bGVT
aGVldDo6cnVsZUluZGV4QnlTdHlsZShDU1NTdHlsZURlY2xhcmF0aW9uKiBwYWdlU3R5bGUpIGMK
ICAgICByZXR1cm4gVUlOVF9NQVg7CiB9CiAKK2Jvb2wgSW5zcGVjdG9yU3R5bGVTaGVldDo6Y2hl
Y2tQYWdlU3R5bGVTaGVldChFeGNlcHRpb25Db2RlJiBlYykgY29uc3QKK3sKKyAgICBpZiAoIW1f
cGFnZVN0eWxlU2hlZXQpIHsKKyAgICAgICAgZWMgPSBOT1RfU1VQUE9SVEVEX0VSUjsKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogYm9vbCBJbnNw
ZWN0b3JTdHlsZVNoZWV0OjplbnN1cmVQYXJzZWREYXRhUmVhZHkoKQogewogICAgIHJldHVybiBl
bnN1cmVUZXh0KCkgJiYgZW5zdXJlU291cmNlRGF0YSgpOwpAQCAtMTIyMSw3ICsxMjM4LDcgQEAg
dm9pZCBJbnNwZWN0b3JTdHlsZVNoZWV0OjplbnN1cmVGbGF0UnVsZXMoKSBjb25zdAogCiBib29s
IEluc3BlY3RvclN0eWxlU2hlZXQ6OnNldFN0eWxlVGV4dChDU1NTdHlsZURlY2xhcmF0aW9uKiBz
dHlsZSwgY29uc3QgU3RyaW5nJiB0ZXh0KQogewotICAgIGlmICghcGFnZVN0eWxlU2hlZXQoKSkK
KyAgICBpZiAoIW1fcGFnZVN0eWxlU2hlZXQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBp
ZiAoIWVuc3VyZVBhcnNlZERhdGFSZWFkeSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5oIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuaAppbmRleCA4MWNk
Nzc4ODFkNWY4ZDZhNTE5ZTAyNDVkOGI5Yjk2MmU3NDRlZjYxLi43Y2I3ZDQ2YWVhMGE0ZjEyM2Vh
ZWFmMTYxZmQzZTBlYjY5Y2QwNTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JTdHlsZVNoZWV0LmgKQEAgLTE4NSw3ICsxODUsNyBAQCBwdWJsaWM6CiAgICAgU3Ry
aW5nIGZpbmFsVVJMKCkgY29uc3Q7CiAgICAgQ1NTU3R5bGVTaGVldCogcGFnZVN0eWxlU2hlZXQo
KSBjb25zdCB7IHJldHVybiBtX3BhZ2VTdHlsZVNoZWV0LmdldCgpOyB9CiAgICAgdm9pZCByZXBh
cnNlU3R5bGVTaGVldChjb25zdCBTdHJpbmcmKTsKLSAgICBib29sIHNldFRleHQoY29uc3QgU3Ry
aW5nJik7CisgICAgYm9vbCBzZXRUZXh0KGNvbnN0IFN0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKTsK
ICAgICBTdHJpbmcgcnVsZVNlbGVjdG9yKGNvbnN0IEluc3BlY3RvckNTU0lkJiwgRXhjZXB0aW9u
Q29kZSYpOwogICAgIGJvb2wgc2V0UnVsZVNlbGVjdG9yKGNvbnN0IEluc3BlY3RvckNTU0lkJiwg
Y29uc3QgU3RyaW5nJiBzZWxlY3RvciwgRXhjZXB0aW9uQ29kZSYpOwogICAgIENTU1N0eWxlUnVs
ZSogYWRkUnVsZShjb25zdCBTdHJpbmcmIHNlbGVjdG9yLCBFeGNlcHRpb25Db2RlJik7CkBAIC0y
MjYsNiArMjI2LDcgQEAgcHJpdmF0ZToKICAgICBmcmllbmQgY2xhc3MgSW5zcGVjdG9yU3R5bGU7
CiAKICAgICBzdGF0aWMgdm9pZCBjb2xsZWN0RmxhdFJ1bGVzKFBhc3NSZWZQdHI8Q1NTUnVsZUxp
c3Q+LCBDU1NTdHlsZVJ1bGVWZWN0b3IqIHJlc3VsdCk7CisgICAgYm9vbCBjaGVja1BhZ2VTdHls
ZVNoZWV0KEV4Y2VwdGlvbkNvZGUmKSBjb25zdDsKICAgICBib29sIGVuc3VyZVRleHQoKSBjb25z
dDsKICAgICBib29sIGVuc3VyZVNvdXJjZURhdGEoKTsKICAgICB2b2lkIGVuc3VyZUZsYXRSdWxl
cygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDYzZGM1N2U2NzMwMGRhNTIxZDg2Y2FlOTEyMjYzZGFmODFjMjJm
OTcuLjFmMmJmNjE2MjM2YmE0NGUzMmRiMWM0YWIyMTRmN2M2YzliYTVjNzUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAxMy0wMi0yMSAgQWxleGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IENTU0FnZW50LnNldFN0eWxlU2hlZXRU
ZXh0IGNyYXNoZXMgb24gaW5saW5lIHN0eWxlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwMzU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBpbnNwZWN0b3Ivc3R5bGVzL3N0eWxlcy1uZXctQVBJLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0b3Ivc3R5bGVzL3N0eWxlcy1uZXctQVBJLmh0
bWw6CisKIDIwMTMtMDItMjAgIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogVGFiYmVkRWRpdG9yQ29udGFpbmVyIGFuZCBPcGVu
UmVzb3VyY2VEaWFsb2cgc2hvdWxkIHNob3cgdWlTb3VyY2VDb2RlIHBhdGggYW5kIG5hbWUgaW5z
dGVhZCBvZiBwYXJzZWRVUkwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHls
ZXMvc3R5bGVzLW5ldy1BUEktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0
eWxlcy9zdHlsZXMtbmV3LUFQSS1leHBlY3RlZC50eHQKaW5kZXggMjgxYThkYTRiNzJjNGZlNWE1
YTM2MzExNmNhZGM0ZDE4YmRiMTc2NC4uMzE2YTNhN2Y0YmJmNTUzMDI5NmNmM2FhMjQ3OGUyYzNm
ZjcwNmYwOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy9zdHlsZXMt
bmV3LUFQSS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy9z
dHlsZXMtbmV3LUFQSS1leHBlY3RlZC50eHQKQEAgLTEzNCw2ICsxMzQsMTIgQEAgYm9keTpob3Zl
cjogW3JlZ3VsYXJdIHsKID09PSBBdHRyaWJ1dGVzIHN0eWxlIGZvciB0YWJsZSA9PT0KIFsnd2lk
dGgnOic1MCUnXSBAW3VuZGVmaW5lZC11bmRlZmluZWRdIHN0eWxlCiAKKz09PSBTdHlsZXNoZWV0
LWZvci1pbmxpbmUtc3R5bGUgdGV4dCA9PT0KKworCis9PT0gU3R5bGVzaGVldC1mb3ItaW5saW5l
LXN0eWxlIG1vZGlmaWNhdGlvbiByZXN1bHQgPT09CitOb3RTdXBwb3J0ZWRFcnJvcgorCiA9PT0g
QWxsIHN0eWxlc2hlZXRzID09PQogCiBTdHlsZVNoZWV0OiAnQGNoYXJzZXQgIlVURi04IjsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc3R5bGVzLW5ldy1BUEkuaHRt
bCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc3R5bGVzLW5ldy1BUEkuaHRtbAppbmRl
eCA5MGJjNDQwOGE4MjBhM2ZlMWM2M2NlNWU2ZjE4MGM0YmMzYTZhODNlLi41NjdlNzhiNTgxNTYz
NDM3YzM3MjNhYjEzZGQwNzUxNmNhZGUyMzI3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3Ivc3R5bGVzL3N0eWxlcy1uZXctQVBJLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVj
dG9yL3N0eWxlcy9zdHlsZXMtbmV3LUFQSS5odG1sCkBAIC0xMTgsNyArMTE4LDcgQEAgZnVuY3Rp
b24gdGVzdCgpCiAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiIik7CiAgICAg
ICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiPT09IEF0dHJpYnV0ZXMgc3R5bGUgZm9y
IHRhYmxlID09PSIpOwogICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wU3R5bGUoYXR0cmli
dXRlc1N0eWxlKTsKLSAgICAgICAgICAgIHRlc3Rfc3R5bGVTaGVldHMoKTsKKyAgICAgICAgICAg
IHRlc3RfaW5saW5lU3R5bGVTaGVldE1vZGlmaWNhdGlvbihpbmxpbmVTdHlsZSk7CiAgICAgICAg
IH0KIAogICAgICAgICBmdW5jdGlvbiBub2RlQ2FsbGJhY2sobm9kZSkKQEAgLTEyOCw2ICsxMjgs
MjcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAgIEluc3BlY3RvclRlc3Qubm9kZVdpdGhJZCgi
dGhldGFibGUiLCBub2RlQ2FsbGJhY2spOwogICAgIH0KIAorICAgIGZ1bmN0aW9uIHRlc3RfaW5s
aW5lU3R5bGVTaGVldE1vZGlmaWNhdGlvbihpbmxpbmVTdHlsZSkKKyAgICB7CisgICAgICAgIENT
U0FnZW50LmdldFN0eWxlU2hlZXRUZXh0KGlubGluZVN0eWxlLnN0eWxlSWQuc3R5bGVTaGVldElk
LCB0ZXh0Q2FsbGJhY2spOworCisgICAgICAgIGZ1bmN0aW9uIHRleHRDYWxsYmFjayhlcnJvciwg
cmVzdWx0KQorICAgICAgICB7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgi
Iik7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiPT09IFN0eWxlc2hlZXQt
Zm9yLWlubGluZS1zdHlsZSB0ZXh0ID09PSIpOworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5h
ZGRSZXN1bHQocmVzdWx0KTsKKyAgICAgICAgICAgIENTU0FnZW50LnNldFN0eWxlU2hlZXRUZXh0
KGlubGluZVN0eWxlLnN0eWxlSWQuc3R5bGVTaGVldElkLCAiIiwgc2V0VGV4dENhbGxiYWNrKTsK
KyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIHNldFRleHRDYWxsYmFjayhlcnJvciwgcmVz
dWx0KQorICAgICAgICB7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiIik7
CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiPT09IFN0eWxlc2hlZXQtZm9y
LWlubGluZS1zdHlsZSBtb2RpZmljYXRpb24gcmVzdWx0ID09PSIpOworICAgICAgICAgICAgSW5z
cGVjdG9yVGVzdC5hZGRSZXN1bHQoZXJyb3IpOworICAgICAgICAgICAgdGVzdF9zdHlsZVNoZWV0
cygpOworICAgICAgICB9CisgICAgfQorCiAgICAgZnVuY3Rpb24gdGVzdF9zdHlsZVNoZWV0cygp
CiAgICAgewogICAgICAgICB2YXIgbmV3U3R5bGVTaGVldFRleHQgPQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>