<?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>172228</bug_id>
          
          <creation_ts>2017-05-17 11:16:33 -0700</creation_ts>
          <short_desc>A URL type is vended for a non-URL plain text string when starting data interaction</short_desc>
          <delta_ts>2017-05-22 09:40:24 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>aestes</cc>
    
    <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1309689</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-05-17 11:16:33 -0700</bug_when>
    <thetext>&lt;rdar://problem/32166729&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1309724</commentid>
    <comment_count>1</comment_count>
      <attachid>310421</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-05-17 12:00:10 -0700</bug_when>
    <thetext>Created attachment 310421
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1309756</commentid>
    <comment_count>2</comment_count>
      <attachid>310421</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-05-17 12:53:37 -0700</bug_when>
    <thetext>Comment on attachment 310421
Patch

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

&gt; Source/WebCore/platform/ios/PlatformPasteboardIOS.mm:203
&gt; +static void addRepresentationsForPlainText(RetainPtr&lt;WebItemProviderRegistrationInfoList&gt; itemsToRegister, const String&amp; plainText)

Passing a RetainPtr by value causes retain count churn. Why not just pass a WebItemProviderRegistrationInfoList *?

&gt; Source/WebCore/platform/ios/PlatformPasteboardIOS.mm:209
&gt; +    NSURL *platformURL = [NSURL URLWithString:plainText];
&gt; +    if (URL(platformURL).isValid())

Is this materially different than constructing a URL with plainText as the relative URL and an empty base URL? Just wondering if we can avoid creating a transient NSURL.

&gt; Source/WebCore/platform/ios/PlatformPasteboardIOS.mm:311
&gt; +            addRepresentationsForPlainText(itemsToRegister, textAsNSString);

Can you pass text as the second argument instead of textAsNSString to avoid an unnecessary NSString-to-WTFString conversion?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1309763</commentid>
    <comment_count>3</comment_count>
      <attachid>310421</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-05-17 13:03:56 -0700</bug_when>
    <thetext>Comment on attachment 310421
Patch

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

&gt;&gt; Source/WebCore/platform/ios/PlatformPasteboardIOS.mm:203
&gt;&gt; +static void addRepresentationsForPlainText(RetainPtr&lt;WebItemProviderRegistrationInfoList&gt; itemsToRegister, const String&amp; plainText)
&gt; 
&gt; Passing a RetainPtr by value causes retain count churn. Why not just pass a WebItemProviderRegistrationInfoList *?

Good point, the RetainPtr isn&apos;t doing much here -- fixed.

&gt;&gt; Source/WebCore/platform/ios/PlatformPasteboardIOS.mm:209
&gt;&gt; +    if (URL(platformURL).isValid())
&gt; 
&gt; Is this materially different than constructing a URL with plainText as the relative URL and an empty base URL? Just wondering if we can avoid creating a transient NSURL.

We&apos;ll have to create an NSURL anyways, since we want to use the platform way of writing to the UIItemProvider (which takes an NSURL *). The transient entity here is actually the URL, which I&apos;m creating so that we can gate the &quot;URL&quot;-ness of the plain text we&apos;re registering on what WebCore identifies as a valid URL rather than what is needed to create an NSURL.

&gt;&gt; Source/WebCore/platform/ios/PlatformPasteboardIOS.mm:311
&gt;&gt; +            addRepresentationsForPlainText(itemsToRegister, textAsNSString);
&gt; 
&gt; Can you pass text as the second argument instead of textAsNSString to avoid an unnecessary NSString-to-WTFString conversion?

Oh, good point -- removed textAsNSString altogether.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1309769</commentid>
    <comment_count>4</comment_count>
      <attachid>310433</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-05-17 13:15:54 -0700</bug_when>
    <thetext>Created attachment 310433
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1309797</commentid>
    <comment_count>5</comment_count>
      <attachid>310433</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-17 13:56:08 -0700</bug_when>
    <thetext>Comment on attachment 310433
Patch for landing

Clearing flags on attachment: 310433

Committed r216997: &lt;http://trac.webkit.org/changeset/216997&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>310421</attachid>
            <date>2017-05-17 12:00:10 -0700</date>
            <delta_ts>2017-05-17 12:53:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-172228-20170517120010.patch</filename>
            <type>text/plain</type>
            <size>8588</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE2OTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmQxMTcxY2RiNTM0Mzdl
OGU5YzExMjY1OTk4Y2JiMmYxZDE3ZDkyNi4uMjlkY2QxNjUwZmM3NzM0ZWVlMTFhMmEzMzUwYjEy
YjAwMDk2ODY0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE3LTA1LTE3ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIEEgVVJMIHR5cGUg
aXMgdmVuZGVkIGZvciBhIG5vbi1VUkwgcGxhaW4gdGV4dCBzdHJpbmcgd2hlbiBzdGFydGluZyBk
YXRhIGludGVyYWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNzIyMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMyMTY2NzI5PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFByZXZpb3VzbHksIHdo
ZW4gd3JpdGluZyBhIHBsYWluIHRleHQgc3RyaW5nIHRvIFdlYkl0ZW1Qcm92aWRlclBhc3RlYm9h
cmQsIHdlIHdvdWxkIHdyaXRlIGFuIE5TU3RyaW5nIGRpcmVjdGx5CisgICAgICAgIHRvIHRoZSBp
dGVtIHByb3ZpZGVyIGJ5IHVzaW5nIGJ1aWx0LWluIGZ1bmN0aW9uYWxpdHkgaW4gTlNTdHJpbmcr
VUlJdGVtUHJvdmlkZXIuIEhvd2V2ZXIsIHRoaXMgY2F1c2VzIHBsYWluCisgICAgICAgIHN0cmlu
Z3Mgc3VjaCBhcyAiYXBwbGUiIHRvIGJlIGNvbnNpZGVyZWQgVVJMcywgc2luY2UgLVtOU1VSTCBV
UkxXaXRoU3RyaW5nOl0gY3JlYXRlcyBhIG5vbi1udWxsIE5TVVJMLiBUbyBmaXgKKyAgICAgICAg
dGhpcywgd2UgaW5zdGVhZCB3cml0ZSB0aGUgc3RyaW5nIGFzIFVURjggZGF0YSwgZm9yIHRoZSBV
VEkga1VUVHlwZVVURjhQbGFpblRleHQsIGlmIHRoZSBwbGFpbiB0ZXh0IGlzIG5vdCBhCisgICAg
ICAgIFVSTC4gSWYgdGhlIHBsYWluIHRleHQgaXMgY2xlYXJseSBhIFVSTCAoZGV0ZXJtaW5lZCBi
eSBjb25zdHJ1Y3RpbmcgYSBuZXcgV2ViQ29yZSBVUkwgd2l0aCBubyBiYXNlIFVSTCBhbmQgdGhl
CisgICAgICAgIHBsYWludGV4dCBzdHJpbmcgYXMgdGhlIGFic29sdXRlIFVSTCkgdGhlbiB3ZSBh
ZGRpdGlvbmFsbHkgd3JpdGUgYW4gTlNVUkwgdG8gdGhlIHBhc3RlYm9hcmQuCisKKyAgICAgICAg
MiBuZXcgQVBJIHRlc3RzOgorICAgICAgICBEYXRhSW50ZXJhY3Rpb25UZXN0cy5TaW5nbGVQbGFp
blRleHRXb3JkVHlwZUlkZW50aWZpZXJzCisgICAgICAgIERhdGFJbnRlcmFjdGlvblRlc3RzLlNp
bmdsZVBsYWluVGV4dFVSTFR5cGVJZGVudGlmaWVycworCisgICAgICAgICogcGxhdGZvcm0vaW9z
L1BsYXRmb3JtUGFzdGVib2FyZElPUy5tbToKKyAgICAgICAgKFdlYkNvcmU6OmFkZFJlcHJlc2Vu
dGF0aW9uc0ZvclBsYWluVGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybVBhc3RlYm9h
cmQ6OndyaXRlT2JqZWN0UmVwcmVzZW50YXRpb25zKToKKwogMjAxNy0wNS0xNiAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVhbHRpbWVPdXRnb2luZ1ZpZGVv
U291cmNlIHNob3VsZCBzdXBwb3J0IHNpbmtXYW50cyBmb3Igcm90YXRpb24KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9QbGF0Zm9ybVBhc3RlYm9hcmRJT1MubW0gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZvcm1QYXN0ZWJvYXJkSU9TLm1tCmluZGV4
IDllYTY5YjdhODdkZDExYzE1NDRjMDBlNzg4NTRlNmU4ZGNkNTA5ZTYuLjAyN2E1OGQ1NTA4ZWE2
NjFkYzY4YzA5N2FhMGUwNjExZTM3NDRiNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2lvcy9QbGF0Zm9ybVBhc3RlYm9hcmRJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW9zL1BsYXRmb3JtUGFzdGVib2FyZElPUy5tbQpAQCAtMTk4LDYgKzE5OCwyMiBA
QCBzdGF0aWMgUmV0YWluUHRyPE5TRGljdGlvbmFyeT4gcmljaFRleHRSZXByZXNlbnRhdGlvbnNG
b3JQYXN0ZWJvYXJkV2ViQ29udGVudChjbwogICAgIHJldHVybiByZXByZXNlbnRhdGlvbnM7CiB9
CiAKKyNpZiBFTkFCTEUoREFUQV9JTlRFUkFDVElPTikKKworc3RhdGljIHZvaWQgYWRkUmVwcmVz
ZW50YXRpb25zRm9yUGxhaW5UZXh0KFJldGFpblB0cjxXZWJJdGVtUHJvdmlkZXJSZWdpc3RyYXRp
b25JbmZvTGlzdD4gaXRlbXNUb1JlZ2lzdGVyLCBjb25zdCBTdHJpbmcmIHBsYWluVGV4dCkKK3sK
KyAgICBpZiAocGxhaW5UZXh0LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgTlNV
UkwgKnBsYXRmb3JtVVJMID0gW05TVVJMIFVSTFdpdGhTdHJpbmc6cGxhaW5UZXh0XTsKKyAgICBp
ZiAoVVJMKHBsYXRmb3JtVVJMKS5pc1ZhbGlkKCkpCisgICAgICAgIFtpdGVtc1RvUmVnaXN0ZXIg
YWRkUmVwcmVzZW50aW5nT2JqZWN0OnBsYXRmb3JtVVJMXTsKKworICAgIFtpdGVtc1RvUmVnaXN0
ZXIgYWRkRGF0YTpbKE5TU3RyaW5nICopcGxhaW5UZXh0IGRhdGFVc2luZ0VuY29kaW5nOk5TVVRG
OFN0cmluZ0VuY29kaW5nXSBmb3JUeXBlOihOU1N0cmluZyAqKWtVVFR5cGVVVEY4UGxhaW5UZXh0
XTsKK30KKworI2VuZGlmCisKIHZvaWQgUGxhdGZvcm1QYXN0ZWJvYXJkOjp3cml0ZU9iamVjdFJl
cHJlc2VudGF0aW9ucyhjb25zdCBQYXN0ZWJvYXJkV2ViQ29udGVudCYgY29udGVudCkKIHsKICNp
ZiBFTkFCTEUoREFUQV9JTlRFUkFDVElPTikKQEAgLTIyMCw3ICsyMzYsNyBAQCB2b2lkIFBsYXRm
b3JtUGFzdGVib2FyZDo6d3JpdGVPYmplY3RSZXByZXNlbnRhdGlvbnMoY29uc3QgUGFzdGVib2Fy
ZFdlYkNvbnRlbnQmCiAgICAgICAgIFtpdGVtc1RvUmVnaXN0ZXIgYWRkRGF0YTpjb250ZW50LmRh
dGFJblJURkZvcm1hdC0+Y3JlYXRlTlNEYXRhKCkuZ2V0KCkgZm9yVHlwZTooTlNTdHJpbmcgKilr
VVRUeXBlUlRGXTsKIAogICAgIGlmICghY29udGVudC5kYXRhSW5TdHJpbmdGb3JtYXQuaXNFbXB0
eSgpKQotICAgICAgICBbaXRlbXNUb1JlZ2lzdGVyIGFkZFJlcHJlc2VudGluZ09iamVjdDooTlNT
dHJpbmcgKiljb250ZW50LmRhdGFJblN0cmluZ0Zvcm1hdF07CisgICAgICAgIGFkZFJlcHJlc2Vu
dGF0aW9uc0ZvclBsYWluVGV4dChpdGVtc1RvUmVnaXN0ZXIsIGNvbnRlbnQuZGF0YUluU3RyaW5n
Rm9ybWF0KTsKIAogICAgIFttX3Bhc3RlYm9hcmQgc2V0SXRlbXNVc2luZ1JlZ2lzdHJhdGlvbklu
Zm9MaXN0czpAWyBpdGVtc1RvUmVnaXN0ZXIuZ2V0KCkgXV07CiAjZWxzZQpAQCAtMjkxLDExICsz
MDcsOCBAQCB2b2lkIFBsYXRmb3JtUGFzdGVib2FyZDo6d3JpdGVPYmplY3RSZXByZXNlbnRhdGlv
bnMoY29uc3QgU3RyaW5nJiBwYXN0ZWJvYXJkVHlwZQogICAgIE5TU3RyaW5nICpwYXN0ZWJvYXJk
VHlwZUFzTlNTdHJpbmcgPSBwYXN0ZWJvYXJkVHlwZTsKICAgICBOU1N0cmluZyAqdGV4dEFzTlNT
dHJpbmcgPSB0ZXh0OwogICAgIGlmICh0ZXh0QXNOU1N0cmluZyAmJiBwYXN0ZWJvYXJkVHlwZUFz
TlNTdHJpbmcubGVuZ3RoKSB7Ci0gICAgICAgIGlmIChVVFR5cGVDb25mb3Jtc1RvKChfX2JyaWRn
ZSBDRlN0cmluZ1JlZilwYXN0ZWJvYXJkVHlwZUFzTlNTdHJpbmcsIGtVVFR5cGVVUkwpKQotICAg
ICAgICAgICAgW2l0ZW1zVG9SZWdpc3RlciBhZGRSZXByZXNlbnRpbmdPYmplY3Q6W1tbTlNVUkwg
YWxsb2NdIGluaXRXaXRoU3RyaW5nOnRleHRBc05TU3RyaW5nXSBhdXRvcmVsZWFzZV1dOwotCi0g
ICAgICAgIGlmIChVVFR5cGVDb25mb3Jtc1RvKChfX2JyaWRnZSBDRlN0cmluZ1JlZilwYXN0ZWJv
YXJkVHlwZUFzTlNTdHJpbmcsIGtVVFR5cGVUZXh0KSkKLSAgICAgICAgICAgIFtpdGVtc1RvUmVn
aXN0ZXIgYWRkUmVwcmVzZW50aW5nT2JqZWN0OnRleHRBc05TU3RyaW5nXTsKKyAgICAgICAgaWYg
KFVUVHlwZUNvbmZvcm1zVG8oKF9fYnJpZGdlIENGU3RyaW5nUmVmKXBhc3RlYm9hcmRUeXBlQXNO
U1N0cmluZywga1VUVHlwZVVSTCkgfHwgVVRUeXBlQ29uZm9ybXNUbygoX19icmlkZ2UgQ0ZTdHJp
bmdSZWYpcGFzdGVib2FyZFR5cGVBc05TU3RyaW5nLCBrVVRUeXBlVGV4dCkpCisgICAgICAgICAg
ICBhZGRSZXByZXNlbnRhdGlvbnNGb3JQbGFpblRleHQoaXRlbXNUb1JlZ2lzdGVyLCB0ZXh0QXNO
U1N0cmluZyk7CiAgICAgfQogCiAgICAgW21fcGFzdGVib2FyZCBzZXRJdGVtc1VzaW5nUmVnaXN0
cmF0aW9uSW5mb0xpc3RzOkBbIGl0ZW1zVG9SZWdpc3Rlci5nZXQoKSBdXTsKZGlmZiAtLWdpdCBh
L1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA2NmNlMmYyZDdlYzAwODI1
NGM3YWZlMWI0OGQ5ZGRkN2Q2OTU2OGQ2Li43YjM1ZWIxMGFkMmI4YTlmZGJmOWI5OGYyYzM2MzVi
OWNlNWJjZDg1IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTctMDUtMTcgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9o
c2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQSBVUkwgdHlwZSBpcyB2ZW5kZWQgZm9yIGEgbm9u
LVVSTCBwbGFpbiB0ZXh0IHN0cmluZyB3aGVuIHN0YXJ0aW5nIGRhdGEgaW50ZXJhY3Rpb24KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjIyOAorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vMzIxNjY3Mjk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkcyB0d28gbmV3IGRhdGEgaW50ZXJhY3Rpb24gdGVz
dHMsIFNpbmdsZVBsYWluVGV4dFdvcmRUeXBlSWRlbnRpZmllcnMgYW5kIFNpbmdsZVBsYWluVGV4
dFVSTFR5cGVJZGVudGlmaWVycywKKyAgICAgICAgdG8gdmVyaWZ5IHRoYXQgYSBVUkwgVVRJIGlz
IG5vdCB2ZW5kZWQgd2hlbiBiZWdpbm5pbmcgYSBkYXRhIGludGVyYWN0aW9uIG9uIGEgc2luZ2xl
IHdvcmQsIGJ1dCB0aGF0IGEgVVJMIGlzCisgICAgICAgIHN0aWxsIHZlbmRlZCB3aGVuIGJlZ2lu
bmluZyBkYXRhIGludGVyYWN0aW9uIG9uIHNvbWV0aGluZyB0aGF0IHJlc2VtYmxlcyBhIGxpbmsu
CisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9EYXRhSW50ZXJhY3Rpb25UZXN0
cy5tbToKKwogMjAxNy0wNS0xNiAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFwZXJlekBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIGFkZGluZyBteXNlbGYgdG8gY29udHJpYnV0
b3JzLmpzb24KZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvaW9zL0RhdGFJ
bnRlcmFjdGlvblRlc3RzLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRGF0YUlu
dGVyYWN0aW9uVGVzdHMubW0KaW5kZXggMDI1YWQ0ODM2YzYwZGIwOGZmNzZmNDlmYmYxMzA1NDI1
NGU0NzE3NS4uM2E5NWJkNzY0YjM5MTJhZWM5NzZiYjVmNzhmYmI4NWYyNGU1YzA4NCAxMDA2NDQK
LS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRGF0YUludGVyYWN0aW9uVGVzdHMu
bW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRGF0YUludGVyYWN0aW9uVGVz
dHMubW0KQEAgLTIzMiw2ICsyMzIsNDUgQEAgVEVTVChEYXRhSW50ZXJhY3Rpb25UZXN0cywgVGV4
dEFyZWFUb0lucHV0KQogICAgIGNoZWNrU2VsZWN0aW9uUmVjdHNXaXRoTG9nZ2luZyhAWyBtYWtl
Q0dSZWN0VmFsdWUoMTAxLCAyNDEsIDk5MCwgMjMyKSBdLCBbZGF0YUludGVyYWN0aW9uU2ltdWxh
dG9yIGZpbmFsU2VsZWN0aW9uUmVjdHNdKTsKIH0KIAorVEVTVChEYXRhSW50ZXJhY3Rpb25UZXN0
cywgU2luZ2xlUGxhaW5UZXh0V29yZFR5cGVJZGVudGlmaWVycykKK3sKKyAgICBSZXRhaW5QdHI8
VGVzdFdLV2ViVmlldz4gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBp
bml0V2l0aEZyYW1lOkNHUmVjdE1ha2UoMCwgMCwgMzIwLCA1MDApXSk7CisgICAgUmV0YWluUHRy
PERhdGFJbnRlcmFjdGlvblNpbXVsYXRvcj4gZGF0YUludGVyYWN0aW9uU2ltdWxhdG9yID0gYWRv
cHROUyhbW0RhdGFJbnRlcmFjdGlvblNpbXVsYXRvciBhbGxvY10gaW5pdFdpdGhXZWJWaWV3Ondl
YlZpZXcuZ2V0KCldKTsKKworICAgIFt3ZWJWaWV3IGxvYWRUZXN0UGFnZU5hbWVkOkAidGV4dGFy
ZWEtdG8taW5wdXQiXTsKKyAgICBbZGF0YUludGVyYWN0aW9uU2ltdWxhdG9yIHdhaXRGb3JJbnB1
dFNlc3Npb25dOworICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJz
b3VyY2UudmFsdWUgPSAncG5ldW1vbm91bHRyYW1pY3Jvc2NvcGljc2lsaWNvdm9sY2Fub2Nvbmlv
c2lzJyJdOworICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJzb3Vy
Y2Uuc2VsZWN0aW9uU3RhcnQgPSAwIl07CisgICAgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5n
SmF2YVNjcmlwdDpAInNvdXJjZS5zZWxlY3Rpb25FbmQgPSBzb3VyY2UudmFsdWUubGVuZ3RoIl07
CisgICAgW2RhdGFJbnRlcmFjdGlvblNpbXVsYXRvciBydW5Gcm9tOkNHUG9pbnRNYWtlKDEwMCwg
NTApIHRvOkNHUG9pbnRNYWtlKDEwMCwgMzAwKV07CisKKyAgICBOU0FycmF5ICpyZWdpc3RlcmVk
VHlwZXMgPSBbW2RhdGFJbnRlcmFjdGlvblNpbXVsYXRvciBzb3VyY2VJdGVtUHJvdmlkZXJzXS5m
aXJzdE9iamVjdCByZWdpc3RlcmVkVHlwZUlkZW50aWZpZXJzXTsKKyAgICBFWFBFQ1RfRVEoMVVM
LCByZWdpc3RlcmVkVHlwZXMuY291bnQpOworICAgIEVYUEVDVF9XS19TVFJFUShbKE5TU3RyaW5n
ICopa1VUVHlwZVVURjhQbGFpblRleHQgVVRGOFN0cmluZ10sIFtyZWdpc3RlcmVkVHlwZXMuZmly
c3RPYmplY3QgVVRGOFN0cmluZ10pOworICAgIEVYUEVDVF9FUShbd2ViVmlldyBzdHJpbmdCeUV2
YWx1YXRpbmdKYXZhU2NyaXB0OkAic291cmNlLnZhbHVlIl0ubGVuZ3RoLCAwVUwpOworICAgIEVY
UEVDVF9XS19TVFJFUSgicG5ldW1vbm91bHRyYW1pY3Jvc2NvcGljc2lsaWNvdm9sY2Fub2Nvbmlv
c2lzIiwgW3dlYlZpZXcgZWRpdG9yVmFsdWVdLlVURjhTdHJpbmcpOworfQorCitURVNUKERhdGFJ
bnRlcmFjdGlvblRlc3RzLCBTaW5nbGVQbGFpblRleHRVUkxUeXBlSWRlbnRpZmllcnMpCit7Cisg
ICAgUmV0YWluUHRyPFRlc3RXS1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2Vi
VmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwgNTAwKV0pOwor
ICAgIFJldGFpblB0cjxEYXRhSW50ZXJhY3Rpb25TaW11bGF0b3I+IGRhdGFJbnRlcmFjdGlvblNp
bXVsYXRvciA9IGFkb3B0TlMoW1tEYXRhSW50ZXJhY3Rpb25TaW11bGF0b3IgYWxsb2NdIGluaXRX
aXRoV2ViVmlldzp3ZWJWaWV3LmdldCgpXSk7CisKKyAgICBbd2ViVmlldyBsb2FkVGVzdFBhZ2VO
YW1lZDpAInRleHRhcmVhLXRvLWlucHV0Il07CisgICAgW2RhdGFJbnRlcmFjdGlvblNpbXVsYXRv
ciB3YWl0Rm9ySW5wdXRTZXNzaW9uXTsKKyAgICBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdK
YXZhU2NyaXB0OkAic291cmNlLnZhbHVlID0gJ2h0dHBzOi8vd2Via2l0Lm9yZy8nIl07CisgICAg
W3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAInNvdXJjZS5zZWxlY3Rpb25T
dGFydCA9IDAiXTsKKyAgICBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAi
c291cmNlLnNlbGVjdGlvbkVuZCA9IHNvdXJjZS52YWx1ZS5sZW5ndGgiXTsKKyAgICBbZGF0YUlu
dGVyYWN0aW9uU2ltdWxhdG9yIHJ1bkZyb206Q0dQb2ludE1ha2UoMTAwLCA1MCkgdG86Q0dQb2lu
dE1ha2UoMTAwLCAzMDApXTsKKworICAgIE5TQXJyYXkgKnJlZ2lzdGVyZWRUeXBlcyA9IFtbZGF0
YUludGVyYWN0aW9uU2ltdWxhdG9yIHNvdXJjZUl0ZW1Qcm92aWRlcnNdLmZpcnN0T2JqZWN0IHJl
Z2lzdGVyZWRUeXBlSWRlbnRpZmllcnNdOworICAgIEVYUEVDVF9FUSgyVUwsIHJlZ2lzdGVyZWRU
eXBlcy5jb3VudCk7CisgICAgRVhQRUNUX1dLX1NUUkVRKFsoTlNTdHJpbmcgKilrVVRUeXBlVVJM
IFVURjhTdHJpbmddLCBbcmVnaXN0ZXJlZFR5cGVzLmZpcnN0T2JqZWN0IFVURjhTdHJpbmddKTsK
KyAgICBFWFBFQ1RfV0tfU1RSRVEoWyhOU1N0cmluZyAqKWtVVFR5cGVVVEY4UGxhaW5UZXh0IFVU
RjhTdHJpbmddLCBbcmVnaXN0ZXJlZFR5cGVzLmxhc3RPYmplY3QgVVRGOFN0cmluZ10pOworICAg
IEVYUEVDVF9FUSgwVUwsIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHQ6QCJz
b3VyY2UudmFsdWUiXS5sZW5ndGgpOworICAgIEVYUEVDVF9XS19TVFJFUSgiaHR0cHM6Ly93ZWJr
aXQub3JnLyIsIFt3ZWJWaWV3IGVkaXRvclZhbHVlXS5VVEY4U3RyaW5nKTsKK30KKwogVEVTVChE
YXRhSW50ZXJhY3Rpb25UZXN0cywgTGlua1RvSW5wdXQpCiB7CiAgICAgUmV0YWluUHRyPFRlc3RX
S1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdp
dGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwgNTAwKV0pOwo=
</data>
<flag name="review"
          id="331481"
          type_id="1"
          status="+"
          setter="aestes"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>310433</attachid>
            <date>2017-05-17 13:15:54 -0700</date>
            <delta_ts>2017-05-17 13:56:08 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-172228-20170517131554.patch</filename>
            <type>text/plain</type>
            <size>8768</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE2OTQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmQxMTcxY2RiNTM0Mzdl
OGU5YzExMjY1OTk4Y2JiMmYxZDE3ZDkyNi4uZDYxOTBkNTdkYzg3NzQ2MzMwMWZhOWNhN2Q2NTdj
MjkwYTQwNTNmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE3LTA1LTE3ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIEEgVVJMIHR5cGUg
aXMgdmVuZGVkIGZvciBhIG5vbi1VUkwgcGxhaW4gdGV4dCBzdHJpbmcgd2hlbiBzdGFydGluZyBk
YXRhIGludGVyYWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNzIyMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMyMTY2NzI5PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IEFuZHkgRXN0ZXMuCisKKyAgICAgICAgUHJldmlvdXNseSwgd2hlbiB3
cml0aW5nIGEgcGxhaW4gdGV4dCBzdHJpbmcgdG8gV2ViSXRlbVByb3ZpZGVyUGFzdGVib2FyZCwg
d2Ugd291bGQgd3JpdGUgYW4gTlNTdHJpbmcgZGlyZWN0bHkKKyAgICAgICAgdG8gdGhlIGl0ZW0g
cHJvdmlkZXIgYnkgdXNpbmcgYnVpbHQtaW4gZnVuY3Rpb25hbGl0eSBpbiBOU1N0cmluZytVSUl0
ZW1Qcm92aWRlci4gSG93ZXZlciwgdGhpcyBjYXVzZXMgcGxhaW4KKyAgICAgICAgc3RyaW5ncyBz
dWNoIGFzICJhcHBsZSIgdG8gYmUgY29uc2lkZXJlZCBVUkxzLCBzaW5jZSAtW05TVVJMIFVSTFdp
dGhTdHJpbmc6XSBjcmVhdGVzIGEgbm9uLW51bGwgTlNVUkwuIFRvIGZpeAorICAgICAgICB0aGlz
LCB3ZSBpbnN0ZWFkIHdyaXRlIHRoZSBzdHJpbmcgYXMgVVRGOCBkYXRhLCBmb3IgdGhlIFVUSSBr
VVRUeXBlVVRGOFBsYWluVGV4dCwgaWYgdGhlIHBsYWluIHRleHQgaXMgbm90IGEKKyAgICAgICAg
VVJMLiBJZiB0aGUgcGxhaW4gdGV4dCBpcyBjbGVhcmx5IGEgVVJMIChkZXRlcm1pbmVkIGJ5IGNv
bnN0cnVjdGluZyBhIG5ldyBXZWJDb3JlIFVSTCB3aXRoIG5vIGJhc2UgVVJMIGFuZCB0aGUKKyAg
ICAgICAgcGxhaW50ZXh0IHN0cmluZyBhcyB0aGUgYWJzb2x1dGUgVVJMKSB0aGVuIHdlIGFkZGl0
aW9uYWxseSB3cml0ZSBhbiBOU1VSTCB0byB0aGUgcGFzdGVib2FyZC4KKworICAgICAgICAyIG5l
dyBBUEkgdGVzdHM6CisgICAgICAgIERhdGFJbnRlcmFjdGlvblRlc3RzLlNpbmdsZVBsYWluVGV4
dFdvcmRUeXBlSWRlbnRpZmllcnMKKyAgICAgICAgRGF0YUludGVyYWN0aW9uVGVzdHMuU2luZ2xl
UGxhaW5UZXh0VVJMVHlwZUlkZW50aWZpZXJzCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvUGxh
dGZvcm1QYXN0ZWJvYXJkSU9TLm1tOgorICAgICAgICAoV2ViQ29yZTo6YWRkUmVwcmVzZW50YXRp
b25zRm9yUGxhaW5UZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtUGFzdGVib2FyZDo6
d3JpdGVPYmplY3RSZXByZXNlbnRhdGlvbnMpOgorCiAyMDE3LTA1LTE2ICBZb3Vlbm4gRmFibGV0
ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZWFsdGltZU91dGdvaW5nVmlkZW9Tb3Vy
Y2Ugc2hvdWxkIHN1cHBvcnQgc2lua1dhbnRzIGZvciByb3RhdGlvbgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXRmb3JtUGFzdGVib2FyZElPUy5tbSBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9QbGF0Zm9ybVBhc3RlYm9hcmRJT1MubW0KaW5kZXggOWVh
NjliN2E4N2RkMTFjMTU0NGMwMGU3ODg1NGU2ZThkY2Q1MDllNi4uOWVhZTc0OTVlZDZkZGI2MWQ0
MDgzOTBmOGZlNDFkODM2MDAyMTc4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL1BsYXRmb3JtUGFzdGVib2FyZElPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pb3MvUGxhdGZvcm1QYXN0ZWJvYXJkSU9TLm1tCkBAIC0xOTgsNiArMTk4LDIyIEBAIHN0
YXRpYyBSZXRhaW5QdHI8TlNEaWN0aW9uYXJ5PiByaWNoVGV4dFJlcHJlc2VudGF0aW9uc0ZvclBh
c3RlYm9hcmRXZWJDb250ZW50KGNvCiAgICAgcmV0dXJuIHJlcHJlc2VudGF0aW9uczsKIH0KIAor
I2lmIEVOQUJMRShEQVRBX0lOVEVSQUNUSU9OKQorCitzdGF0aWMgdm9pZCBhZGRSZXByZXNlbnRh
dGlvbnNGb3JQbGFpblRleHQoV2ViSXRlbVByb3ZpZGVyUmVnaXN0cmF0aW9uSW5mb0xpc3QgKml0
ZW1zVG9SZWdpc3RlciwgY29uc3QgU3RyaW5nJiBwbGFpblRleHQpCit7CisgICAgaWYgKHBsYWlu
VGV4dC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKKworICAgIE5TVVJMICpwbGF0Zm9ybVVS
TCA9IFtOU1VSTCBVUkxXaXRoU3RyaW5nOnBsYWluVGV4dF07CisgICAgaWYgKFVSTChwbGF0Zm9y
bVVSTCkuaXNWYWxpZCgpKQorICAgICAgICBbaXRlbXNUb1JlZ2lzdGVyIGFkZFJlcHJlc2VudGlu
Z09iamVjdDpwbGF0Zm9ybVVSTF07CisKKyAgICBbaXRlbXNUb1JlZ2lzdGVyIGFkZERhdGE6WyhO
U1N0cmluZyAqKXBsYWluVGV4dCBkYXRhVXNpbmdFbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGlu
Z10gZm9yVHlwZTooTlNTdHJpbmcgKilrVVRUeXBlVVRGOFBsYWluVGV4dF07Cit9CisKKyNlbmRp
ZgorCiB2b2lkIFBsYXRmb3JtUGFzdGVib2FyZDo6d3JpdGVPYmplY3RSZXByZXNlbnRhdGlvbnMo
Y29uc3QgUGFzdGVib2FyZFdlYkNvbnRlbnQmIGNvbnRlbnQpCiB7CiAjaWYgRU5BQkxFKERBVEFf
SU5URVJBQ1RJT04pCkBAIC0yMjAsNyArMjM2LDcgQEAgdm9pZCBQbGF0Zm9ybVBhc3RlYm9hcmQ6
OndyaXRlT2JqZWN0UmVwcmVzZW50YXRpb25zKGNvbnN0IFBhc3RlYm9hcmRXZWJDb250ZW50Jgog
ICAgICAgICBbaXRlbXNUb1JlZ2lzdGVyIGFkZERhdGE6Y29udGVudC5kYXRhSW5SVEZGb3JtYXQt
PmNyZWF0ZU5TRGF0YSgpLmdldCgpIGZvclR5cGU6KE5TU3RyaW5nICopa1VUVHlwZVJURl07CiAK
ICAgICBpZiAoIWNvbnRlbnQuZGF0YUluU3RyaW5nRm9ybWF0LmlzRW1wdHkoKSkKLSAgICAgICAg
W2l0ZW1zVG9SZWdpc3RlciBhZGRSZXByZXNlbnRpbmdPYmplY3Q6KE5TU3RyaW5nICopY29udGVu
dC5kYXRhSW5TdHJpbmdGb3JtYXRdOworICAgICAgICBhZGRSZXByZXNlbnRhdGlvbnNGb3JQbGFp
blRleHQoaXRlbXNUb1JlZ2lzdGVyLmdldCgpLCBjb250ZW50LmRhdGFJblN0cmluZ0Zvcm1hdCk7
CiAKICAgICBbbV9wYXN0ZWJvYXJkIHNldEl0ZW1zVXNpbmdSZWdpc3RyYXRpb25JbmZvTGlzdHM6
QFsgaXRlbXNUb1JlZ2lzdGVyLmdldCgpIF1dOwogI2Vsc2UKQEAgLTI4OSwxMyArMzA1LDkgQEAg
dm9pZCBQbGF0Zm9ybVBhc3RlYm9hcmQ6OndyaXRlT2JqZWN0UmVwcmVzZW50YXRpb25zKGNvbnN0
IFN0cmluZyYgcGFzdGVib2FyZFR5cGUKICAgICBSZXRhaW5QdHI8V2ViSXRlbVByb3ZpZGVyUmVn
aXN0cmF0aW9uSW5mb0xpc3Q+IGl0ZW1zVG9SZWdpc3RlciA9IGFkb3B0TlMoW1tXZWJJdGVtUHJv
dmlkZXJSZWdpc3RyYXRpb25JbmZvTGlzdCBhbGxvY10gaW5pdF0pOwogCiAgICAgTlNTdHJpbmcg
KnBhc3RlYm9hcmRUeXBlQXNOU1N0cmluZyA9IHBhc3RlYm9hcmRUeXBlOwotICAgIE5TU3RyaW5n
ICp0ZXh0QXNOU1N0cmluZyA9IHRleHQ7Ci0gICAgaWYgKHRleHRBc05TU3RyaW5nICYmIHBhc3Rl
Ym9hcmRUeXBlQXNOU1N0cmluZy5sZW5ndGgpIHsKLSAgICAgICAgaWYgKFVUVHlwZUNvbmZvcm1z
VG8oKF9fYnJpZGdlIENGU3RyaW5nUmVmKXBhc3RlYm9hcmRUeXBlQXNOU1N0cmluZywga1VUVHlw
ZVVSTCkpCi0gICAgICAgICAgICBbaXRlbXNUb1JlZ2lzdGVyIGFkZFJlcHJlc2VudGluZ09iamVj
dDpbW1tOU1VSTCBhbGxvY10gaW5pdFdpdGhTdHJpbmc6dGV4dEFzTlNTdHJpbmddIGF1dG9yZWxl
YXNlXV07Ci0KLSAgICAgICAgaWYgKFVUVHlwZUNvbmZvcm1zVG8oKF9fYnJpZGdlIENGU3RyaW5n
UmVmKXBhc3RlYm9hcmRUeXBlQXNOU1N0cmluZywga1VUVHlwZVRleHQpKQotICAgICAgICAgICAg
W2l0ZW1zVG9SZWdpc3RlciBhZGRSZXByZXNlbnRpbmdPYmplY3Q6dGV4dEFzTlNTdHJpbmddOwor
ICAgIGlmICghdGV4dC5pc0VtcHR5KCkgJiYgcGFzdGVib2FyZFR5cGVBc05TU3RyaW5nLmxlbmd0
aCkgeworICAgICAgICBpZiAoVVRUeXBlQ29uZm9ybXNUbygoX19icmlkZ2UgQ0ZTdHJpbmdSZWYp
cGFzdGVib2FyZFR5cGVBc05TU3RyaW5nLCBrVVRUeXBlVVJMKSB8fCBVVFR5cGVDb25mb3Jtc1Rv
KChfX2JyaWRnZSBDRlN0cmluZ1JlZilwYXN0ZWJvYXJkVHlwZUFzTlNTdHJpbmcsIGtVVFR5cGVU
ZXh0KSkKKyAgICAgICAgICAgIGFkZFJlcHJlc2VudGF0aW9uc0ZvclBsYWluVGV4dChpdGVtc1Rv
UmVnaXN0ZXIuZ2V0KCksIHRleHQpOwogICAgIH0KIAogICAgIFttX3Bhc3RlYm9hcmQgc2V0SXRl
bXNVc2luZ1JlZ2lzdHJhdGlvbkluZm9MaXN0czpAWyBpdGVtc1RvUmVnaXN0ZXIuZ2V0KCkgXV07
CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjZj
ZTJmMmQ3ZWMwMDgyNTRjN2FmZTFiNDhkOWRkZDdkNjk1NjhkNi4uYThkODgwYjUxMWVjMGRiZTA1
OGMxOWI1MGNhZDZiNWRjZThiYmRmMyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE3LTA1LTE3ICBXZW5zb24gSHNp
ZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIEEgVVJMIHR5cGUgaXMgdmVu
ZGVkIGZvciBhIG5vbi1VUkwgcGxhaW4gdGV4dCBzdHJpbmcgd2hlbiBzdGFydGluZyBkYXRhIGlu
dGVyYWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNzIyMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMyMTY2NzI5PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IEFuZHkgRXN0ZXMuCisKKyAgICAgICAgQWRkcyB0d28gbmV3IGRhdGEgaW50ZXJh
Y3Rpb24gdGVzdHMsIFNpbmdsZVBsYWluVGV4dFdvcmRUeXBlSWRlbnRpZmllcnMgYW5kIFNpbmds
ZVBsYWluVGV4dFVSTFR5cGVJZGVudGlmaWVycywKKyAgICAgICAgdG8gdmVyaWZ5IHRoYXQgYSBV
UkwgVVRJIGlzIG5vdCB2ZW5kZWQgd2hlbiBiZWdpbm5pbmcgYSBkYXRhIGludGVyYWN0aW9uIG9u
IGEgc2luZ2xlIHdvcmQsIGJ1dCB0aGF0IGEgVVJMIGlzCisgICAgICAgIHN0aWxsIHZlbmRlZCB3
aGVuIGJlZ2lubmluZyBkYXRhIGludGVyYWN0aW9uIG9uIHNvbWV0aGluZyB0aGF0IHJlc2VtYmxl
cyBhIGxpbmsuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL2lvcy9EYXRhSW50ZXJh
Y3Rpb25UZXN0cy5tbToKKwogMjAxNy0wNS0xNiAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFw
ZXJlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIGFkZGluZyBteXNlbGYgdG8g
Y29udHJpYnV0b3JzLmpzb24KZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
aW9zL0RhdGFJbnRlcmFjdGlvblRlc3RzLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9p
b3MvRGF0YUludGVyYWN0aW9uVGVzdHMubW0KaW5kZXggMDI1YWQ0ODM2YzYwZGIwOGZmNzZmNDlm
YmYxMzA1NDI1NGU0NzE3NS4uM2E5NWJkNzY0YjM5MTJhZWM5NzZiYjVmNzhmYmI4NWYyNGU1YzA4
NCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRGF0YUludGVyYWN0
aW9uVGVzdHMubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9pb3MvRGF0YUludGVy
YWN0aW9uVGVzdHMubW0KQEAgLTIzMiw2ICsyMzIsNDUgQEAgVEVTVChEYXRhSW50ZXJhY3Rpb25U
ZXN0cywgVGV4dEFyZWFUb0lucHV0KQogICAgIGNoZWNrU2VsZWN0aW9uUmVjdHNXaXRoTG9nZ2lu
ZyhAWyBtYWtlQ0dSZWN0VmFsdWUoMTAxLCAyNDEsIDk5MCwgMjMyKSBdLCBbZGF0YUludGVyYWN0
aW9uU2ltdWxhdG9yIGZpbmFsU2VsZWN0aW9uUmVjdHNdKTsKIH0KIAorVEVTVChEYXRhSW50ZXJh
Y3Rpb25UZXN0cywgU2luZ2xlUGxhaW5UZXh0V29yZFR5cGVJZGVudGlmaWVycykKK3sKKyAgICBS
ZXRhaW5QdHI8VGVzdFdLV2ViVmlldz4gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3
IGFsbG9jXSBpbml0V2l0aEZyYW1lOkNHUmVjdE1ha2UoMCwgMCwgMzIwLCA1MDApXSk7CisgICAg
UmV0YWluUHRyPERhdGFJbnRlcmFjdGlvblNpbXVsYXRvcj4gZGF0YUludGVyYWN0aW9uU2ltdWxh
dG9yID0gYWRvcHROUyhbW0RhdGFJbnRlcmFjdGlvblNpbXVsYXRvciBhbGxvY10gaW5pdFdpdGhX
ZWJWaWV3OndlYlZpZXcuZ2V0KCldKTsKKworICAgIFt3ZWJWaWV3IGxvYWRUZXN0UGFnZU5hbWVk
OkAidGV4dGFyZWEtdG8taW5wdXQiXTsKKyAgICBbZGF0YUludGVyYWN0aW9uU2ltdWxhdG9yIHdh
aXRGb3JJbnB1dFNlc3Npb25dOworICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFT
Y3JpcHQ6QCJzb3VyY2UudmFsdWUgPSAncG5ldW1vbm91bHRyYW1pY3Jvc2NvcGljc2lsaWNvdm9s
Y2Fub2Nvbmlvc2lzJyJdOworICAgIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3Jp
cHQ6QCJzb3VyY2Uuc2VsZWN0aW9uU3RhcnQgPSAwIl07CisgICAgW3dlYlZpZXcgc3RyaW5nQnlF
dmFsdWF0aW5nSmF2YVNjcmlwdDpAInNvdXJjZS5zZWxlY3Rpb25FbmQgPSBzb3VyY2UudmFsdWUu
bGVuZ3RoIl07CisgICAgW2RhdGFJbnRlcmFjdGlvblNpbXVsYXRvciBydW5Gcm9tOkNHUG9pbnRN
YWtlKDEwMCwgNTApIHRvOkNHUG9pbnRNYWtlKDEwMCwgMzAwKV07CisKKyAgICBOU0FycmF5ICpy
ZWdpc3RlcmVkVHlwZXMgPSBbW2RhdGFJbnRlcmFjdGlvblNpbXVsYXRvciBzb3VyY2VJdGVtUHJv
dmlkZXJzXS5maXJzdE9iamVjdCByZWdpc3RlcmVkVHlwZUlkZW50aWZpZXJzXTsKKyAgICBFWFBF
Q1RfRVEoMVVMLCByZWdpc3RlcmVkVHlwZXMuY291bnQpOworICAgIEVYUEVDVF9XS19TVFJFUShb
KE5TU3RyaW5nICopa1VUVHlwZVVURjhQbGFpblRleHQgVVRGOFN0cmluZ10sIFtyZWdpc3RlcmVk
VHlwZXMuZmlyc3RPYmplY3QgVVRGOFN0cmluZ10pOworICAgIEVYUEVDVF9FUShbd2ViVmlldyBz
dHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAic291cmNlLnZhbHVlIl0ubGVuZ3RoLCAwVUwp
OworICAgIEVYUEVDVF9XS19TVFJFUSgicG5ldW1vbm91bHRyYW1pY3Jvc2NvcGljc2lsaWNvdm9s
Y2Fub2Nvbmlvc2lzIiwgW3dlYlZpZXcgZWRpdG9yVmFsdWVdLlVURjhTdHJpbmcpOworfQorCitU
RVNUKERhdGFJbnRlcmFjdGlvblRlc3RzLCBTaW5nbGVQbGFpblRleHRVUkxUeXBlSWRlbnRpZmll
cnMpCit7CisgICAgUmV0YWluUHRyPFRlc3RXS1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtb
VGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwg
NTAwKV0pOworICAgIFJldGFpblB0cjxEYXRhSW50ZXJhY3Rpb25TaW11bGF0b3I+IGRhdGFJbnRl
cmFjdGlvblNpbXVsYXRvciA9IGFkb3B0TlMoW1tEYXRhSW50ZXJhY3Rpb25TaW11bGF0b3IgYWxs
b2NdIGluaXRXaXRoV2ViVmlldzp3ZWJWaWV3LmdldCgpXSk7CisKKyAgICBbd2ViVmlldyBsb2Fk
VGVzdFBhZ2VOYW1lZDpAInRleHRhcmVhLXRvLWlucHV0Il07CisgICAgW2RhdGFJbnRlcmFjdGlv
blNpbXVsYXRvciB3YWl0Rm9ySW5wdXRTZXNzaW9uXTsKKyAgICBbd2ViVmlldyBzdHJpbmdCeUV2
YWx1YXRpbmdKYXZhU2NyaXB0OkAic291cmNlLnZhbHVlID0gJ2h0dHBzOi8vd2Via2l0Lm9yZy8n
Il07CisgICAgW3dlYlZpZXcgc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdDpAInNvdXJjZS5z
ZWxlY3Rpb25TdGFydCA9IDAiXTsKKyAgICBbd2ViVmlldyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZh
U2NyaXB0OkAic291cmNlLnNlbGVjdGlvbkVuZCA9IHNvdXJjZS52YWx1ZS5sZW5ndGgiXTsKKyAg
ICBbZGF0YUludGVyYWN0aW9uU2ltdWxhdG9yIHJ1bkZyb206Q0dQb2ludE1ha2UoMTAwLCA1MCkg
dG86Q0dQb2ludE1ha2UoMTAwLCAzMDApXTsKKworICAgIE5TQXJyYXkgKnJlZ2lzdGVyZWRUeXBl
cyA9IFtbZGF0YUludGVyYWN0aW9uU2ltdWxhdG9yIHNvdXJjZUl0ZW1Qcm92aWRlcnNdLmZpcnN0
T2JqZWN0IHJlZ2lzdGVyZWRUeXBlSWRlbnRpZmllcnNdOworICAgIEVYUEVDVF9FUSgyVUwsIHJl
Z2lzdGVyZWRUeXBlcy5jb3VudCk7CisgICAgRVhQRUNUX1dLX1NUUkVRKFsoTlNTdHJpbmcgKilr
VVRUeXBlVVJMIFVURjhTdHJpbmddLCBbcmVnaXN0ZXJlZFR5cGVzLmZpcnN0T2JqZWN0IFVURjhT
dHJpbmddKTsKKyAgICBFWFBFQ1RfV0tfU1RSRVEoWyhOU1N0cmluZyAqKWtVVFR5cGVVVEY4UGxh
aW5UZXh0IFVURjhTdHJpbmddLCBbcmVnaXN0ZXJlZFR5cGVzLmxhc3RPYmplY3QgVVRGOFN0cmlu
Z10pOworICAgIEVYUEVDVF9FUSgwVUwsIFt3ZWJWaWV3IHN0cmluZ0J5RXZhbHVhdGluZ0phdmFT
Y3JpcHQ6QCJzb3VyY2UudmFsdWUiXS5sZW5ndGgpOworICAgIEVYUEVDVF9XS19TVFJFUSgiaHR0
cHM6Ly93ZWJraXQub3JnLyIsIFt3ZWJWaWV3IGVkaXRvclZhbHVlXS5VVEY4U3RyaW5nKTsKK30K
KwogVEVTVChEYXRhSW50ZXJhY3Rpb25UZXN0cywgTGlua1RvSW5wdXQpCiB7CiAgICAgUmV0YWlu
UHRyPFRlc3RXS1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxv
Y10gaW5pdFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwgNTAwKV0pOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>