<?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>157442</bug_id>
          
          <creation_ts>2016-05-06 19:13:39 -0700</creation_ts>
          <short_desc>Web Inspector: CRASH under JSC::DebuggerCallFrame::thisValue when hitting breakpoint</short_desc>
          <delta_ts>2016-05-10 01:53:52 -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>Web Inspector</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>bburg</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>graouts</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mattbaker</cc>
    
    <cc>msaboff</cc>
    
    <cc>nvasilyev</cc>
    
    <cc>saam</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1190867</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-05-06 19:13:39 -0700</bug_when>
    <thetext>* SUMMARY
CRASH under JSC::DebuggerCallFrame::thisValue when hitting breakpoint

* STEPS TO REPRODUCE
1. Inspect about:blank
2. Right click in the toolbar and select Inspect Element to open inspector²
3. In inspector²: Do a global search for “class CallFrameView”
4. In inspector²: Set a breakpoint on the first line of the constructor
5. In inspector¹: js&gt; console.count()
  =&gt; Inspector Processes crash

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

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

External Modification Warnings:
Debugger attached to process.

VM Regions Near 0:
--&gt; 
    __TEXT                 000000010fd12000-000000010fd14000 [    8K] r-x/rwx SM=COW  /Users/USER/*/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.WebContent.Development.xpc/Contents/MacOS/com.apple.WebKit.WebContent.Development

Global Trace Buffer (reverse chronological seconds):
390.605015   CFNetwork                 	0x00007fff93162ddf Explicitly setting CF cookie storage singleton
390.605302   CFNetwork                 	0x00007fff9319978d Explicitly setting cookie storage singleton

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.JavaScriptCore      	0x00000001133b9cdc JSC::JSCell::structure(JSC::VM&amp;) const + 44 (JSCellInlines.h:107)
1   com.apple.JavaScriptCore      	0x00000001134bcdfd JSC::JSCell::methodTable(JSC::VM&amp;) const + 29 (JSCellInlines.h:213)
2   com.apple.JavaScriptCore      	0x00000001134bcac2 JSC::JSValue::toThis(JSC::ExecState*, JSC::ECMAMode) const + 82 (JSCJSValueInlines.h:756)
3   com.apple.JavaScriptCore      	0x00000001136ff9b4 JSC::DebuggerCallFrame::thisValueForCallFrame(JSC::ExecState*) + 132 (DebuggerCallFrame.cpp:265)
4   com.apple.JavaScriptCore      	0x00000001136ff91b JSC::DebuggerCallFrame::thisValue() const + 91 (DebuggerCallFrame.cpp:174)
5   com.apple.JavaScriptCore      	0x0000000113e62f54 Inspector::JavaScriptCallFrame::thisValue() const + 36 (JavaScriptCallFrame.h:57)
6   com.apple.JavaScriptCore      	0x0000000113e628d1 Inspector::JSJavaScriptCallFrame::thisObject(JSC::ExecState*) const + 33 (JSJavaScriptCallFrame.cpp:175)
7   com.apple.JavaScriptCore      	0x0000000113e68906 Inspector::jsJavaScriptCallFrameAttributeThisObject(JSC::ExecState*) + 358 (JSJavaScriptCallFramePrototype.cpp:171)
8   com.apple.JavaScriptCore      	0x0000000113f89eda vmEntryToNative + 340
9   com.apple.JavaScriptCore      	0x0000000113d282cc JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;) + 1164 (Interpreter.cpp:1022)
10  com.apple.JavaScriptCore      	0x00000001135fd23e JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;) + 190 (CallData.cpp:40)
11  com.apple.JavaScriptCore      	0x0000000113c481ed JSC::callGetter(JSC::ExecState*, JSC::JSValue, JSC::JSValue) + 221 (GetterSetter.cpp:85)
12  com.apple.JavaScriptCore      	0x000000011413a840 JSC::PropertySlot::functionGetter(JSC::ExecState*) const + 144 (PropertySlot.cpp:33)
13  com.apple.JavaScriptCore      	0x00000001134c15c2 JSC::PropertySlot::getValue(JSC::ExecState*, JSC::PropertyName) const + 98 (PropertySlot.h:297)
14  com.apple.JavaScriptCore      	0x00000001134c13cb JSC::JSValue::get(JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&amp;) const + 91 (JSCJSValueInlines.h:768)
15  com.apple.JavaScriptCore      	0x0000000113f800cc llint_slow_path_get_by_id + 236 (LLIntSlowPaths.cpp:569)
16  com.apple.JavaScriptCore      	0x0000000113f8ceac llint_entry + 12120
17  com.apple.JavaScriptCore      	0x0000000113f90c4e llint_entry + 27898
18  com.apple.JavaScriptCore      	0x0000000113f89d3e vmEntryToJavaScript + 334
19  com.apple.JavaScriptCore      	0x0000000113d950ea JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 218 (JITCode.cpp:80)
20  com.apple.JavaScriptCore      	0x0000000113d2828c JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;) + 1100 (Interpreter.cpp:1020)
21  com.apple.JavaScriptCore      	0x00000001135fd23e JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;) + 190 (CallData.cpp:40)
22  com.apple.JavaScriptCore      	0x00000001135fd2a3 JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 83 (CallData.cpp:45)
23  com.apple.WebCore             	0x00000001177d827b WebCore::JSMainThreadExecState::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 107 (JSMainThreadExecState.h:57)
24  com.apple.WebCore             	0x0000000117a6c18d WebCore::functionCallHandlerFromAnyThread(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;) + 109 (JSMainThreadExecState.cpp:44)
25  com.apple.JavaScriptCore      	0x000000011418f5be Deprecated::ScriptFunctionCall::call(bool&amp;) + 478 (ScriptFunctionCall.cpp:124)
26  com.apple.JavaScriptCore      	0x0000000113c7bfdf Inspector::InjectedScriptBase::callFunctionWithEvalEnabled(Deprecated::ScriptFunctionCall&amp;, bool&amp;) const + 95 (InjectedScriptBase.cpp:80)
27  com.apple.JavaScriptCore      	0x0000000113c788f6 Inspector::InjectedScript::wrapCallFrames(JSC::JSValue) const + 310 (InjectedScript.cpp:221)
28  com.apple.JavaScriptCore      	0x0000000113ce73bb Inspector::InspectorDebuggerAgent::currentCallFrames(Inspector::InjectedScript const&amp;) + 187 (InspectorDebuggerAgent.cpp:612)
29  com.apple.JavaScriptCore      	0x0000000113ce81f5 Inspector::InspectorDebuggerAgent::didPause(JSC::ExecState&amp;, JSC::JSValue, JSC::JSValue) + 821 (InspectorDebuggerAgent.cpp:721)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190868</commentid>
    <comment_count>1</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-05-06 19:13:49 -0700</bug_when>
    <thetext>&lt;rdar://problem/24172015&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190869</commentid>
    <comment_count>2</comment_count>
      <attachid>278311</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-05-06 19:15:00 -0700</bug_when>
    <thetext>Created attachment 278311
[PATCH] Fix Without Test

This fixes the issue and things look alright. But I really need to understand what is going wrong, and ideally write a test so that this won&apos;t happen again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1191119</commentid>
    <comment_count>3</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2016-05-08 17:11:07 -0700</bug_when>
    <thetext>&quot;this&quot; can be JSValue() in a constructor before calling super().
Is that what&apos;s happening here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1191221</commentid>
    <comment_count>4</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-05-09 11:05:33 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; &quot;this&quot; can be JSValue() in a constructor before calling super().
&gt; Is that what&apos;s happening here?

Those were my thoughts exactly!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1191314</commentid>
    <comment_count>5</comment_count>
      <attachid>278439</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-05-09 14:32:39 -0700</bug_when>
    <thetext>Created attachment 278439
[PATCH] Proposed Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1191330</commentid>
    <comment_count>6</comment_count>
      <attachid>278439</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2016-05-09 15:09:48 -0700</bug_when>
    <thetext>Comment on attachment 278439
[PATCH] Proposed Fix

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

r=me

&gt; Source/JavaScriptCore/ChangeLog:12
&gt; +        When the thisValue is JSValue() return undefined and avoid calling
&gt; +        toThisValue which would lead to a crash.

I think it&apos;s worth stating why this was the case in the change log. I.e, we were in a ES6 class constructor</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1191455</commentid>
    <comment_count>7</comment_count>
      <attachid>278479</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-05-09 23:06:25 -0700</bug_when>
    <thetext>Created attachment 278479
[PATCH] For Landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1191461</commentid>
    <comment_count>8</comment_count>
      <attachid>278479</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-05-09 23:35:55 -0700</bug_when>
    <thetext>Comment on attachment 278479
[PATCH] For Landing

Clearing flags on attachment: 278479

Committed r200617: &lt;http://trac.webkit.org/changeset/200617&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>278311</attachid>
            <date>2016-05-06 19:15:00 -0700</date>
            <delta_ts>2016-05-09 14:32:39 -0700</delta_ts>
            <desc>[PATCH] Fix Without Test</desc>
            <filename>quick-fix.patch</filename>
            <type>text/plain</type>
            <size>837</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxG
cmFtZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJh
bWUuY3BwCmluZGV4IGM0ZmRhNWEuLjE1ZjUyZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcApAQCAtMjU4LDEyICsyNTgs
MTUgQEAgSlNWYWx1ZSBEZWJ1Z2dlckNhbGxGcmFtZTo6dGhpc1ZhbHVlRm9yQ2FsbEZyYW1lKENh
bGxGcmFtZSogY2FsbEZyYW1lKQogICAgIGlmICghY2FsbEZyYW1lKQogICAgICAgICByZXR1cm4g
anNOdWxsKCk7CiAKKyAgICBpZiAoIWNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkpCisgICAgICAgIHJl
dHVybiBqc051bGwoKTsKKwogICAgIEVDTUFNb2RlIGVjbWFNb2RlID0gTm90U3RyaWN0TW9kZTsK
ICAgICBDb2RlQmxvY2sqIGNvZGVCbG9jayA9IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCk7CiAgICAg
aWYgKGNvZGVCbG9jayAmJiBjb2RlQmxvY2stPmlzU3RyaWN0TW9kZSgpKQogICAgICAgICBlY21h
TW9kZSA9IFN0cmljdE1vZGU7Ci0gICAgSlNWYWx1ZSB0aGlzVmFsdWUgPSBjYWxsRnJhbWUtPnRo
aXNWYWx1ZSgpLnRvVGhpcyhjYWxsRnJhbWUsIGVjbWFNb2RlKTsKLSAgICByZXR1cm4gdGhpc1Zh
bHVlOworCisgICAgcmV0dXJuIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkudG9UaGlzKGNhbGxGcmFt
ZSwgZWNtYU1vZGUpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>278439</attachid>
            <date>2016-05-09 14:32:39 -0700</date>
            <delta_ts>2016-05-09 15:09:48 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>with-test.patch</filename>
            <type>text/plain</type>
            <size>5388</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0MzY0Yzk2Li5jNzE0YTE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTYtMDUt
MDkgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIg
SW5zcGVjdG9yOiBDUkFTSCB1bmRlciBKU0M6OkRlYnVnZ2VyQ2FsbEZyYW1lOjp0aGlzVmFsdWUg
d2hlbiBoaXR0aW5nIGJyZWFrcG9pbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE1NzQ0MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjQxNzIwMTU+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBpbnNw
ZWN0b3IvZGVidWdnZXIvYnJlYWstaW4tY29uc3RydWN0b3ItYmVmb3JlLXN1cGVyLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrLWluLWNvbnN0
cnVjdG9yLWJlZm9yZS1zdXBlci5odG1sOiBBZGRlZC4KKwogMjAxNi0wNS0wNiAgUGVyIEFybmUg
Vm9sbGFuICA8cGVhdm9Ab3V0bG9vay5jb20+CiAKICAgICAgICAgW1dpbl0gU2tpcCBmYWlsaW5n
IElOVEwgdGVzdC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9i
cmVhay1pbi1jb25zdHJ1Y3Rvci1iZWZvcmUtc3VwZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrLWluLWNvbnN0cnVjdG9yLWJlZm9yZS1zdXBlci1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWI3ODQ1ZQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVhay1p
bi1jb25zdHJ1Y3Rvci1iZWZvcmUtc3VwZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAK
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAxNjogYmVmb3JlIHN1cGVyCitDT05TT0xFIE1FU1NBR0U6
IGxpbmUgMTk6IGFmdGVyIHN1cGVyCitQYXVzZSBpbiBjb25zdHJ1Y3RvciBiZWZvcmUgc3VwZXIg
c2hvdWxkIG5vdCBjcmFzaC4KKworCis9PSBSdW5uaW5nIHRlc3Qgc3VpdGU6IFBhdXNlSW5Db25z
dHJ1Y3RvckJlZm9yZVN1cGVyCistLSBSdW5uaW5nIHRlc3QgY2FzZTogVHJpZ2dlclBhdXNlSW5D
b25zdHJ1Y3RvckJlZm9yZVN1cGVyCitQQVNTOiBQYXVzZWQKK1BBU1M6IGB0aGlzYCBzaG91bGQg
YmUgdW5kZWZpbmVkIGFuZCBub3QgY2F1c2UgYSBjcmFzaC4KK1BBU1M6IFJlc3VtZWQKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrLWluLWNvbnN0cnVj
dG9yLWJlZm9yZS1zdXBlci5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2Jy
ZWFrLWluLWNvbnN0cnVjdG9yLWJlZm9yZS1zdXBlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjA4YzAyNmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvZGVidWdnZXIvYnJlYWstaW4tY29uc3RydWN0b3ItYmVmb3JlLXN1cGVyLmh0bWwK
QEAgLTAsMCArMSw2NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlw
dCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291cmNlcy9wcm90b2NvbC10ZXN0
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitjbGFzcyBQYXJlbnQgeworICAgIGNvbnN0cnVjdG9y
KCkKKyAgICB7CisgICAgICAgIHRoaXMueCA9IDE7CisgICAgfQorfTsKKworY2xhc3MgQ2hpbGQg
ZXh0ZW5kcyBQYXJlbnQgeworICAgIGNvbnN0cnVjdG9yKCkKKyAgICB7CisgICAgICAgIGNvbnNv
bGUubG9nKCJiZWZvcmUgc3VwZXIiKTsKKyAgICAgICAgZGVidWdnZXI7CisgICAgICAgIHN1cGVy
KCk7CisgICAgICAgIGNvbnNvbGUubG9nKCJhZnRlciBzdXBlciIpOworICAgIH0KK307CisKK2Z1
bmN0aW9uIHRyaWdnZXJQYXVzZSgpIHsKKyAgICBuZXcgQ2hpbGQ7Cit9CisKK2Z1bmN0aW9uIHRl
c3QoKQoreworICAgIEluc3BlY3RvclByb3RvY29sLnNlbmRDb21tYW5kKCJEZWJ1Z2dlci5lbmFi
bGUiLCB7fSk7CisgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIkRlYnVnZ2VyLnNl
dEJyZWFrcG9pbnRzQWN0aXZlIiwge2FjdGl2ZTogdHJ1ZX0pOworCisgICAgbGV0IHN1aXRlID0g
UHJvdG9jb2xUZXN0LmNyZWF0ZUFzeW5jU3VpdGUoIlBhdXNlSW5Db25zdHJ1Y3RvckJlZm9yZVN1
cGVyIik7CisKKyAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CisgICAgICAgIG5hbWU6ICJUcmlnZ2Vy
UGF1c2VJbkNvbnN0cnVjdG9yQmVmb3JlU3VwZXIiLAorICAgICAgICBkZXNjcmlwdGlvbjogIlRy
aWdnZXIgYSBwYXVzZSBpbiBhIGNvbnN0cnVjdG9yIGJlZm9yZSBjYWxsaW5nIHN1cGVyIHNob3Vs
ZCBub3QgY3Jhc2guIiwKKyAgICAgICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4geworICAg
ICAgICAgICAgUHJvdG9jb2xUZXN0LmV2YWx1YXRlSW5QYWdlKCJ0cmlnZ2VyUGF1c2UoKSIpOwor
CisgICAgICAgICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIkRlYnVnZ2VyLnBh
dXNlZCJdID0gKG1lc3NhZ2VPYmplY3QpID0+IHsKKyAgICAgICAgICAgICAgICBQcm90b2NvbFRl
c3QucGFzcygiUGF1c2VkIik7CisKKyAgICAgICAgICAgICAgICBsZXQgY2FsbEZyYW1lSWRlbnRp
ZmllciA9IG1lc3NhZ2VPYmplY3QucGFyYW1zLmNhbGxGcmFtZXNbMF0uY2FsbEZyYW1lSWQ7Cisg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIkRlYnVnZ2VyLmV2
YWx1YXRlT25DYWxsRnJhbWUiLCB7Y2FsbEZyYW1lSWQ6IGNhbGxGcmFtZUlkZW50aWZpZXIsIGV4
cHJlc3Npb246ICJ0aGlzIn0sIChtZXNzYWdlT2JqZWN0KSA9PiB7CisgICAgICAgICAgICAgICAg
ICAgIFByb3RvY29sVGVzdC5leHBlY3RUaGF0KG1lc3NhZ2VPYmplY3QucmVzdWx0LnJlc3VsdC50
eXBlID09PSAidW5kZWZpbmVkIiwgImB0aGlzYCBzaG91bGQgYmUgdW5kZWZpbmVkIGFuZCBub3Qg
Y2F1c2UgYSBjcmFzaC4iKTsKKyAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgICAg
IEluc3BlY3RvclByb3RvY29sLnNlbmRDb21tYW5kKCJEZWJ1Z2dlci5yZXN1bWUiKTsKKyAgICAg
ICAgICAgIH07CisKKyAgICAgICAgICAgIEluc3BlY3RvclByb3RvY29sLmV2ZW50SGFuZGxlclsi
RGVidWdnZXIucmVzdW1lZCJdID0gKG1lc3NhZ2VPYmplY3QpID0+IHsKKyAgICAgICAgICAgICAg
ICBQcm90b2NvbFRlc3QucGFzcygiUmVzdW1lZCIpOworICAgICAgICAgICAgICAgIHJlc29sdmUo
KTsKKyAgICAgICAgICAgIH07CisgICAgICAgIH0KKyAgICB9KTsKKworICAgIHN1aXRlLnJ1blRl
c3RDYXNlc0FuZEZpbmlzaCgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9
InJ1blRlc3QoKSI+Cis8cD5QYXVzZSBpbiBjb25zdHJ1Y3RvciBiZWZvcmUgc3VwZXIgc2hvdWxk
IG5vdCBjcmFzaC48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpp
bmRleCBlZjM4MDlkLi45ZmQ0NjRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNiBAQAorMjAxNi0wNS0wOSAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29t
PgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IENSQVNIIHVuZGVyIEpTQzo6RGVidWdnZXJDYWxs
RnJhbWU6OnRoaXNWYWx1ZSB3aGVuIGhpdHRpbmcgYnJlYWtwb2ludAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3NDQyCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8yNDE3MjAxNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcDoKKyAgICAgICAgKEpT
Qzo6RGVidWdnZXJDYWxsRnJhbWU6OnRoaXNWYWx1ZUZvckNhbGxGcmFtZSk6CisgICAgICAgIFdo
ZW4gdGhlIHRoaXNWYWx1ZSBpcyBKU1ZhbHVlKCkgcmV0dXJuIHVuZGVmaW5lZCBhbmQgYXZvaWQg
Y2FsbGluZworICAgICAgICB0b1RoaXNWYWx1ZSB3aGljaCB3b3VsZCBsZWFkIHRvIGEgY3Jhc2gu
CisKIDIwMTYtMDUtMDYgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAog
ICAgICAgICBXZWIgSW5zcGVjdG9yOiBNaXNjIENvbW1hbmRMaW5lQVBJIGNsZWFudXAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3Bw
CmluZGV4IGM0ZmRhNWEuLjkyNzdiNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcApAQCAtMjU2LDE0ICsyNTYsMTcgQEAg
U291cmNlSUQgRGVidWdnZXJDYWxsRnJhbWU6OnNvdXJjZUlERm9yQ2FsbEZyYW1lKENhbGxGcmFt
ZSogY2FsbEZyYW1lKQogSlNWYWx1ZSBEZWJ1Z2dlckNhbGxGcmFtZTo6dGhpc1ZhbHVlRm9yQ2Fs
bEZyYW1lKENhbGxGcmFtZSogY2FsbEZyYW1lKQogewogICAgIGlmICghY2FsbEZyYW1lKQotICAg
ICAgICByZXR1cm4ganNOdWxsKCk7CisgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworCisg
ICAgaWYgKCFjYWxsRnJhbWUtPnRoaXNWYWx1ZSgpKQorICAgICAgICByZXR1cm4ganNVbmRlZmlu
ZWQoKTsKIAogICAgIEVDTUFNb2RlIGVjbWFNb2RlID0gTm90U3RyaWN0TW9kZTsKICAgICBDb2Rl
QmxvY2sqIGNvZGVCbG9jayA9IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCk7CiAgICAgaWYgKGNvZGVC
bG9jayAmJiBjb2RlQmxvY2stPmlzU3RyaWN0TW9kZSgpKQogICAgICAgICBlY21hTW9kZSA9IFN0
cmljdE1vZGU7Ci0gICAgSlNWYWx1ZSB0aGlzVmFsdWUgPSBjYWxsRnJhbWUtPnRoaXNWYWx1ZSgp
LnRvVGhpcyhjYWxsRnJhbWUsIGVjbWFNb2RlKTsKLSAgICByZXR1cm4gdGhpc1ZhbHVlOworCisg
ICAgcmV0dXJuIGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkudG9UaGlzKGNhbGxGcmFtZSwgZWNtYU1v
ZGUpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MK
</data>
<flag name="review"
          id="302524"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>278479</attachid>
            <date>2016-05-09 23:06:25 -0700</date>
            <delta_ts>2016-05-09 23:35:55 -0700</delta_ts>
            <desc>[PATCH] For Landing</desc>
            <filename>for-landing-1.patch</filename>
            <type>text/plain</type>
            <size>5476</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA2OWJmZmUzLi45MDZlN2VmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTYtMDUt
MDkgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIg
SW5zcGVjdG9yOiBDUkFTSCB1bmRlciBKU0M6OkRlYnVnZ2VyQ2FsbEZyYW1lOjp0aGlzVmFsdWUg
d2hlbiBoaXR0aW5nIGJyZWFrcG9pbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE1NzQ0MgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjQxNzIwMTU+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisKKyAgICAgICAgKiBpbnNwZWN0
b3IvZGVidWdnZXIvYnJlYWstaW4tY29uc3RydWN0b3ItYmVmb3JlLXN1cGVyLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrLWluLWNvbnN0cnVj
dG9yLWJlZm9yZS1zdXBlci5odG1sOiBBZGRlZC4KKwogMjAxNi0wNS0wOSAgU2ltb24gRnJhc2Vy
ICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBpT1Mtc2Nyb2xsaW5nIHRlc3Qg
Y2xlYW51cC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVh
ay1pbi1jb25zdHJ1Y3Rvci1iZWZvcmUtc3VwZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrLWluLWNvbnN0cnVjdG9yLWJlZm9yZS1zdXBlci1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWI3ODQ1ZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVhay1pbi1j
b25zdHJ1Y3Rvci1iZWZvcmUtc3VwZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK0NP
TlNPTEUgTUVTU0FHRTogbGluZSAxNjogYmVmb3JlIHN1cGVyCitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgMTk6IGFmdGVyIHN1cGVyCitQYXVzZSBpbiBjb25zdHJ1Y3RvciBiZWZvcmUgc3VwZXIgc2hv
dWxkIG5vdCBjcmFzaC4KKworCis9PSBSdW5uaW5nIHRlc3Qgc3VpdGU6IFBhdXNlSW5Db25zdHJ1
Y3RvckJlZm9yZVN1cGVyCistLSBSdW5uaW5nIHRlc3QgY2FzZTogVHJpZ2dlclBhdXNlSW5Db25z
dHJ1Y3RvckJlZm9yZVN1cGVyCitQQVNTOiBQYXVzZWQKK1BBU1M6IGB0aGlzYCBzaG91bGQgYmUg
dW5kZWZpbmVkIGFuZCBub3QgY2F1c2UgYSBjcmFzaC4KK1BBU1M6IFJlc3VtZWQKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrLWluLWNvbnN0cnVjdG9y
LWJlZm9yZS1zdXBlci5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFr
LWluLWNvbnN0cnVjdG9yLWJlZm9yZS1zdXBlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjA4YzAyNmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZGVidWdnZXIvYnJlYWstaW4tY29uc3RydWN0b3ItYmVmb3JlLXN1cGVyLmh0bWwKQEAg
LTAsMCArMSw2NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBz
cmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291cmNlcy9wcm90b2NvbC10ZXN0Lmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQ+CitjbGFzcyBQYXJlbnQgeworICAgIGNvbnN0cnVjdG9yKCkK
KyAgICB7CisgICAgICAgIHRoaXMueCA9IDE7CisgICAgfQorfTsKKworY2xhc3MgQ2hpbGQgZXh0
ZW5kcyBQYXJlbnQgeworICAgIGNvbnN0cnVjdG9yKCkKKyAgICB7CisgICAgICAgIGNvbnNvbGUu
bG9nKCJiZWZvcmUgc3VwZXIiKTsKKyAgICAgICAgZGVidWdnZXI7CisgICAgICAgIHN1cGVyKCk7
CisgICAgICAgIGNvbnNvbGUubG9nKCJhZnRlciBzdXBlciIpOworICAgIH0KK307CisKK2Z1bmN0
aW9uIHRyaWdnZXJQYXVzZSgpIHsKKyAgICBuZXcgQ2hpbGQ7Cit9CisKK2Z1bmN0aW9uIHRlc3Qo
KQoreworICAgIEluc3BlY3RvclByb3RvY29sLnNlbmRDb21tYW5kKCJEZWJ1Z2dlci5lbmFibGUi
LCB7fSk7CisgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIkRlYnVnZ2VyLnNldEJy
ZWFrcG9pbnRzQWN0aXZlIiwge2FjdGl2ZTogdHJ1ZX0pOworCisgICAgbGV0IHN1aXRlID0gUHJv
dG9jb2xUZXN0LmNyZWF0ZUFzeW5jU3VpdGUoIlBhdXNlSW5Db25zdHJ1Y3RvckJlZm9yZVN1cGVy
Iik7CisKKyAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CisgICAgICAgIG5hbWU6ICJUcmlnZ2VyUGF1
c2VJbkNvbnN0cnVjdG9yQmVmb3JlU3VwZXIiLAorICAgICAgICBkZXNjcmlwdGlvbjogIlRyaWdn
ZXIgYSBwYXVzZSBpbiBhIGNvbnN0cnVjdG9yIGJlZm9yZSBjYWxsaW5nIHN1cGVyIHNob3VsZCBu
b3QgY3Jhc2guIiwKKyAgICAgICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAg
ICAgICAgUHJvdG9jb2xUZXN0LmV2YWx1YXRlSW5QYWdlKCJ0cmlnZ2VyUGF1c2UoKSIpOworCisg
ICAgICAgICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIkRlYnVnZ2VyLnBhdXNl
ZCJdID0gKG1lc3NhZ2VPYmplY3QpID0+IHsKKyAgICAgICAgICAgICAgICBQcm90b2NvbFRlc3Qu
cGFzcygiUGF1c2VkIik7CisKKyAgICAgICAgICAgICAgICBsZXQgY2FsbEZyYW1lSWRlbnRpZmll
ciA9IG1lc3NhZ2VPYmplY3QucGFyYW1zLmNhbGxGcmFtZXNbMF0uY2FsbEZyYW1lSWQ7CisgICAg
ICAgICAgICAgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIkRlYnVnZ2VyLmV2YWx1
YXRlT25DYWxsRnJhbWUiLCB7Y2FsbEZyYW1lSWQ6IGNhbGxGcmFtZUlkZW50aWZpZXIsIGV4cHJl
c3Npb246ICJ0aGlzIn0sIChtZXNzYWdlT2JqZWN0KSA9PiB7CisgICAgICAgICAgICAgICAgICAg
IFByb3RvY29sVGVzdC5leHBlY3RUaGF0KG1lc3NhZ2VPYmplY3QucmVzdWx0LnJlc3VsdC50eXBl
ID09PSAidW5kZWZpbmVkIiwgImB0aGlzYCBzaG91bGQgYmUgdW5kZWZpbmVkIGFuZCBub3QgY2F1
c2UgYSBjcmFzaC4iKTsKKyAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgICAgIElu
c3BlY3RvclByb3RvY29sLnNlbmRDb21tYW5kKCJEZWJ1Z2dlci5yZXN1bWUiKTsKKyAgICAgICAg
ICAgIH07CisKKyAgICAgICAgICAgIEluc3BlY3RvclByb3RvY29sLmV2ZW50SGFuZGxlclsiRGVi
dWdnZXIucmVzdW1lZCJdID0gKG1lc3NhZ2VPYmplY3QpID0+IHsKKyAgICAgICAgICAgICAgICBQ
cm90b2NvbFRlc3QucGFzcygiUmVzdW1lZCIpOworICAgICAgICAgICAgICAgIHJlc29sdmUoKTsK
KyAgICAgICAgICAgIH07CisgICAgICAgIH0KKyAgICB9KTsKKworICAgIHN1aXRlLnJ1blRlc3RD
YXNlc0FuZEZpbmlzaCgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1
blRlc3QoKSI+Cis8cD5QYXVzZSBpbiBjb25zdHJ1Y3RvciBiZWZvcmUgc3VwZXIgc2hvdWxkIG5v
dCBjcmFzaC48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRl
eCAyNGM1YTliLi5mMTBkNDQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
OCBAQAorMjAxNi0wNS0wOSAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgor
CisgICAgICAgIFdlYiBJbnNwZWN0b3I6IENSQVNIIHVuZGVyIEpTQzo6RGVidWdnZXJDYWxsRnJh
bWU6OnRoaXNWYWx1ZSB3aGVuIGhpdHRpbmcgYnJlYWtwb2ludAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3NDQyCisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS8yNDE3MjAxNT4KKworICAgICAgICBSZXZpZXdlZCBieSBTYWFtIEJhcmF0aS4KKworICAg
ICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcDoKKyAgICAgICAgKEpTQzo6RGVi
dWdnZXJDYWxsRnJhbWU6OnRoaXNWYWx1ZUZvckNhbGxGcmFtZSk6CisgICAgICAgIFdoZW4gdGhl
IHRoaXNWYWx1ZSBpcyBKU1ZhbHVlKCkgcmV0dXJuIHVuZGVmaW5lZCBhbmQgYXZvaWQgY2FsbGlu
ZworICAgICAgICB0b1RoaXNWYWx1ZSB3aGljaCB3b3VsZCBsZWFkIHRvIGEgY3Jhc2guIEhhdmlu
ZyBgdGhpc2AgYmUgYW4gZW1wdHkKKyAgICAgICAgSlNWYWx1ZSBjb3VsZCBoYXBwZW4gaW5zaWRl
IGFuIEVTNiBjbGFzcyBjb25zdHJ1Y3RvciwgYmVmb3JlCisgICAgICAgIGNhbGxpbmcgc3VwZXIu
CisKIDIwMTYtMDUtMDkgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4KIAogICAgICAg
ICBVbnJldmlld2VkLCBmaXggY2xvb3AuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcAppbmRleCBjNGZkYTVhLi45Mjc3YjU5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJh
bWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxG
cmFtZS5jcHAKQEAgLTI1NiwxNCArMjU2LDE3IEBAIFNvdXJjZUlEIERlYnVnZ2VyQ2FsbEZyYW1l
Ojpzb3VyY2VJREZvckNhbGxGcmFtZShDYWxsRnJhbWUqIGNhbGxGcmFtZSkKIEpTVmFsdWUgRGVi
dWdnZXJDYWxsRnJhbWU6OnRoaXNWYWx1ZUZvckNhbGxGcmFtZShDYWxsRnJhbWUqIGNhbGxGcmFt
ZSkKIHsKICAgICBpZiAoIWNhbGxGcmFtZSkKLSAgICAgICAgcmV0dXJuIGpzTnVsbCgpOworICAg
ICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIGlmICghY2FsbEZyYW1lLT50aGlzVmFs
dWUoKSkKKyAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiAKICAgICBFQ01BTW9kZSBlY21h
TW9kZSA9IE5vdFN0cmljdE1vZGU7CiAgICAgQ29kZUJsb2NrKiBjb2RlQmxvY2sgPSBjYWxsRnJh
bWUtPmNvZGVCbG9jaygpOwogICAgIGlmIChjb2RlQmxvY2sgJiYgY29kZUJsb2NrLT5pc1N0cmlj
dE1vZGUoKSkKICAgICAgICAgZWNtYU1vZGUgPSBTdHJpY3RNb2RlOwotICAgIEpTVmFsdWUgdGhp
c1ZhbHVlID0gY2FsbEZyYW1lLT50aGlzVmFsdWUoKS50b1RoaXMoY2FsbEZyYW1lLCBlY21hTW9k
ZSk7Ci0gICAgcmV0dXJuIHRoaXNWYWx1ZTsKKworICAgIHJldHVybiBjYWxsRnJhbWUtPnRoaXNW
YWx1ZSgpLnRvVGhpcyhjYWxsRnJhbWUsIGVjbWFNb2RlKTsKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
SlNDCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>