<?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>192653</bug_id>
          
          <creation_ts>2018-12-12 19:21:51 -0800</creation_ts>
          <short_desc>Make TextInputController.legacyAttributedString take DOM nodes and offsets</short_desc>
          <delta_ts>2018-12-12 20:05:05 -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>Tools / Tests</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>
          
          <blocked>192640</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>darin</cc>
    
    <cc>lforschler</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1487472</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-12-12 19:21:51 -0800</bug_when>
    <thetext>Right now, TextInputController.legacyAttributedString takes a Range object
but this makes it impossible to obtain attributed strings across shadow boundaries.

Make it take DOM nodes and offsets as in DOMSelection&apos;s setBaseAndExtent
in preparation to make HTMLConverter compatible with shadow DOM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1487477</commentid>
    <comment_count>1</comment_count>
      <attachid>357204</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-12-12 19:26:55 -0800</bug_when>
    <thetext>Created attachment 357204
Updates the test API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1487481</commentid>
    <comment_count>2</comment_count>
      <attachid>357204</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-12-12 19:36:51 -0800</bug_when>
    <thetext>Comment on attachment 357204
Updates the test API

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

&gt; Source/WebCore/editing/cocoa/HTMLConverter.mm:-2470
&gt; -    auto range = selection.toNormalizedRange();
&gt; -    ASSERT(range);
&gt; -    return HTMLConverter { range-&gt;startPosition(), range-&gt;endPosition() }.convert();

Oops, this change shouldn&apos;t be here...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1487482</commentid>
    <comment_count>3</comment_count>
      <attachid>357206</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-12-12 19:39:57 -0800</bug_when>
    <thetext>Created attachment 357206
Reverted the unrelated change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1487485</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2018-12-12 19:54:15 -0800</bug_when>
    <thetext>Committed r239149: &lt;https://trac.webkit.org/changeset/239149&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1487487</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-12-12 19:55:26 -0800</bug_when>
    <thetext>&lt;rdar://problem/46685404&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357204</attachid>
            <date>2018-12-12 19:26:55 -0800</date>
            <delta_ts>2018-12-12 19:39:56 -0800</delta_ts>
            <desc>Updates the test API</desc>
            <filename>bug-192653-20181212192655.patch</filename>
            <type>text/plain</type>
            <size>10623</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzOTE0NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE4LTEyLTEyICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIE1ha2UgVGV4dElucHV0Q29udHJv
bGxlci5sZWdhY3lBdHRyaWJ1dGVkU3RyaW5nIHRha2UgRE9NIG5vZGVzIGFuZCBvZmZzZXRzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI2NTMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVz
dHMgc2luY2UgdGhlcmUgc2hvdWxkIGJlIG5vIG9ic2VydmFibGUgYmVoYXZpb3JhbCBjaGFuZ2Ug
b3RoZXIgdGhhbgorICAgICAgICBUZXh0SW5wdXRDb250cm9sbGVyIEFQSSBpbiBEdW1wUmVuZGVy
VHJlZS4KKworICAgICAgICAqIGVkaXRpbmcvY29jb2EvSFRNTENvbnZlcnRlci5oOgorICAgICAg
ICAqIGVkaXRpbmcvY29jb2EvSFRNTENvbnZlcnRlci5tbToKKyAgICAgICAgKFdlYkNvcmU6OmF0
dHJpYnV0ZWRTdHJpbmdGcm9tU2VsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OmF0dHJpYnV0
ZWRTdHJpbmdCZXR3ZWVuU3RhcnRBbmRFbmQpOiBBZGRlZC4KKwogMjAxOC0xMi0xMiAgUnlvc3Vr
ZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggbWFjT1MgYnVpbGRzIGFm
dGVyIHIyMzkxNDUuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0hUTUxDb252
ZXJ0ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0hUTUxD
b252ZXJ0ZXIuaAkocmV2aXNpb24gMjM5MTQ3KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9j
b2NvYS9IVE1MQ29udmVydGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI4LDEzICsyOCwxOCBAQAog
T0JKQ19DTEFTUyBOU0F0dHJpYnV0ZWRTdHJpbmc7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKLSAg
ICAKKworY2xhc3MgUG9zaXRpb247CiBjbGFzcyBSYW5nZTsKIGNsYXNzIFZpc2libGVTZWxlY3Rp
b247CiAKIGVudW0gY2xhc3MgSW5jbHVkZUltYWdlc0luQXR0cmlidXRlZFN0cmluZyB7IFllcywg
Tm8gfTsKIAogTlNBdHRyaWJ1dGVkU3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nRnJvbVNlbGVjdGlv
bihjb25zdCBWaXNpYmxlU2VsZWN0aW9uJik7CisKKy8vIEZvciB0ZXN0aW5nIHB1cnBvc2Ugb25s
eQorV0VCQ09SRV9FWFBPUlQgTlNBdHRyaWJ1dGVkU3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nQmV0
d2VlblN0YXJ0QW5kRW5kKGNvbnN0IFBvc2l0aW9uJiwgY29uc3QgUG9zaXRpb24mKTsKKwogV0VC
Q09SRV9FWFBPUlQgTlNBdHRyaWJ1dGVkU3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nRnJvbVJhbmdl
KFJhbmdlJik7CiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiBXRUJDT1JFX0VYUE9SVCBOU0F0
dHJpYnV0ZWRTdHJpbmcgKmVkaXRpbmdBdHRyaWJ1dGVkU3RyaW5nRnJvbVJhbmdlKFJhbmdlJiwg
SW5jbHVkZUltYWdlc0luQXR0cmlidXRlZFN0cmluZyA9IEluY2x1ZGVJbWFnZXNJbkF0dHJpYnV0
ZWRTdHJpbmc6Olllcyk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0hUTUxD
b252ZXJ0ZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9I
VE1MQ29udmVydGVyLm1tCShyZXZpc2lvbiAyMzkxNDcpCisrKyBTb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL2NvY29hL0hUTUxDb252ZXJ0ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTI0NjUsOSArMjQ2
NSwxMiBAQCBOU0F0dHJpYnV0ZWRTdHJpbmcgKmF0dHJpYnV0ZWRTdHJpbmdGcm9tCiAKIE5TQXR0
cmlidXRlZFN0cmluZyAqYXR0cmlidXRlZFN0cmluZ0Zyb21TZWxlY3Rpb24oY29uc3QgVmlzaWJs
ZVNlbGVjdGlvbiYgc2VsZWN0aW9uKQogewotICAgIGF1dG8gcmFuZ2UgPSBzZWxlY3Rpb24udG9O
b3JtYWxpemVkUmFuZ2UoKTsKLSAgICBBU1NFUlQocmFuZ2UpOwotICAgIHJldHVybiBIVE1MQ29u
dmVydGVyIHsgcmFuZ2UtPnN0YXJ0UG9zaXRpb24oKSwgcmFuZ2UtPmVuZFBvc2l0aW9uKCkgfS5j
b252ZXJ0KCk7CisgICAgcmV0dXJuIGF0dHJpYnV0ZWRTdHJpbmdCZXR3ZWVuU3RhcnRBbmRFbmQo
c2VsZWN0aW9uLnN0YXJ0KCksIHNlbGVjdGlvbi5lbmQoKSk7Cit9CisKK05TQXR0cmlidXRlZFN0
cmluZyAqYXR0cmlidXRlZFN0cmluZ0JldHdlZW5TdGFydEFuZEVuZChjb25zdCBQb3NpdGlvbiYg
c3RhcnQsIGNvbnN0IFBvc2l0aW9uJiBlbmQpCit7CisgICAgcmV0dXJuIEhUTUxDb252ZXJ0ZXIg
eyBzdGFydCwgZW5kIH0uY29udmVydCgpOwogfQogICAgIAogI2lmICFQTEFURk9STShJT1NfRkFN
SUxZKQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwkocmV2aXNpb24gMjM5MTQ3KQor
KysgU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMTMgQEAKKzIwMTgtMTItMTIgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgTWFrZSBUZXh0SW5wdXRDb250cm9sbGVyLmxlZ2FjeUF0dHJpYnV0ZWRTdHJp
bmcgdGFrZSBET00gbm9kZXMgYW5kIG9mZnNldHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MjY1MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogV2ViVmlldy9XZWJIVE1MVmlldy5tbToKKyAgICAgICAg
KC1bV2ViSFRNTFZpZXcgX2xlZ2FjeUF0dHJpYnV0ZWRTdHJpbmdGcm9tOm9mZnNldDp0bzpvZmZz
ZXQ6XSk6CisKIDIwMTgtMTItMTEgIEp1c3RpbiBNaWNoYXVkICA8anVzdGluX21pY2hhdWRAYXBw
bGUuY29tPgogCiAgICAgICAgIEltcGxlbWVudCBmZWF0dXJlIGZsYWcgZm9yIENTUyBUeXBlZCBP
TQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3
Lm1tCShyZXZpc2lvbiAyMzkxNDcpCisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC03MDMyLDYgKzcwMzIsMTMgQEAgLSAo
TlNBdHRyaWJ1dGVkU3RyaW5nICopX2F0dHJpYnV0ZWRTdHJpbgogICAgIHJldHVybiBhdHRyaWJ1
dGVkU3RyaW5nOwogfQogCistIChOU0F0dHJpYnV0ZWRTdHJpbmcgKilfbGVnYWN5QXR0cmlidXRl
ZFN0cmluZ0Zyb206KERPTU5vZGUqKXN0YXJ0Q29udGFpbmVyIG9mZnNldDooaW50KXN0YXJ0T2Zm
c2V0IHRvOihET01Ob2RlKillbmRDb250YWluZXIgb2Zmc2V0OihpbnQpZW5kT2Zmc2V0Cit7Cisg
ICAgcmV0dXJuIGF0dHJpYnV0ZWRTdHJpbmdCZXR3ZWVuU3RhcnRBbmRFbmQoCisgICAgICAgIFBv
c2l0aW9uIHsgY29yZShzdGFydENvbnRhaW5lciksIHN0YXJ0T2Zmc2V0LCBQb3NpdGlvbjo6UG9z
aXRpb25Jc09mZnNldEluQW5jaG9yIH0sCisgICAgICAgIFBvc2l0aW9uIHsgY29yZShlbmRDb250
YWluZXIpLCBlbmRPZmZzZXQsIFBvc2l0aW9uOjpQb3NpdGlvbklzT2Zmc2V0SW5BbmNob3IgfSk7
Cit9CisKIC0gKE5TQXR0cmlidXRlZFN0cmluZyAqKWF0dHJpYnV0ZWRTdHJpbmcKIHsKICAgICBE
T01Eb2N1bWVudCAqZG9jdW1lbnQgPSBbW3NlbGYgX2ZyYW1lXSBET01Eb2N1bWVudF07CkluZGV4
OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lv
biAyMzkxNDgpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwy
MCBAQAorMjAxOC0xMi0xMiAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KKworICAg
ICAgICBNYWtlIFRleHRJbnB1dENvbnRyb2xsZXIubGVnYWN5QXR0cmlidXRlZFN0cmluZyB0YWtl
IERPTSBub2RlcyBhbmQgb2Zmc2V0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTkyNjUzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVXBkYXRlZCBUZXh0SW5wdXRDb250cm9sbGVyLmxlZ2FjeUF0dHJpYnV0
ZWRTdHJpbmcgdG8gdGFrZSBET00gbm9kZXMgYW5kIG9mZnNldHMgaW5zdGVhZCBvZgorICAgICAg
ICBhIERPTSBSYW5nZSBvYmplY3QgaW4gcHJlcGFyYXRpb24gdG8gYWRkIGxheW91dCB0ZXN0cyBm
b3IgSFRNTENvbnZlcnRlciB3aGljaCBjcm9zc2VzCisgICAgICAgIHNoYWRvdyBib3VuZGFyaWVz
LgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL1RleHRJbnB1dENvbnRyb2xsZXJNYWMu
bToKKyAgICAgICAgKCtbVGV4dElucHV0Q29udHJvbGxlciBpc1NlbGVjdG9yRXhjbHVkZWRGcm9t
V2ViU2NyaXB0Ol0pOiBVcGRhdGVkIHRoZSBzZWxlY3RvciBzaWduYXR1cmUuCisgICAgICAgICgr
W1RleHRJbnB1dENvbnRyb2xsZXIgd2ViU2NyaXB0TmFtZUZvclNlbGVjdG9yOl0pOiBEaXR0by4K
KyAgICAgICAgKC1bVGV4dElucHV0Q29udHJvbGxlciBsZWdhY3lBdHRyaWJ1dGVkU3RyaW5nOm9m
ZnNldDp0bzpvZmZzZXQ6XSk6IE1hZGUgdGhpcyBmdW5jdGlvbiB0YWtlCisgICAgICAgIHN0YXJ0
IG5vZGUgYW5kIG9mZnNldCB0aGVuIGVuZCBub2RlIGFuZCBvZmZzZXQgcGFpcnMuCisKIDIwMTgt
MTItMTIgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAg
ICAgICBJbXBsZW1lbnQgc2FmZSBicm93c2luZyBpbiBXZWJLaXQgb24gV2F0Y2hPUwpJbmRleDog
VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1RleHRJbnB1dENvbnRyb2xsZXJNYWMubQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvVGV4dElucHV0Q29udHJvbGxlck1hYy5t
CShyZXZpc2lvbiAyMzkxNDcpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvVGV4dElucHV0
Q29udHJvbGxlck1hYy5tCSh3b3JraW5nIGNvcHkpCkBAIC02NCw2ICs2NCw3IEBAIC0gKHZvaWQp
aW50ZXJwcmV0S2V5RXZlbnRzOihOU0FycmF5ICopZXYKIEBpbnRlcmZhY2UgV2ViSFRNTFZpZXcg
KFdlYktpdFNlY3JldHNUZXh0SW5wdXRDb250cm9sbGVySXNBd2FyZU9mKQogLSAoV2ViRnJhbWUg
KilfZnJhbWU7CiAtIChOU0F0dHJpYnV0ZWRTdHJpbmcgKilfYXR0cmlidXRlZFN0cmluZ0Zyb21E
T01SYW5nZTooRE9NUmFuZ2UgKilyYW5nZTsKKy0gKE5TQXR0cmlidXRlZFN0cmluZyAqKV9sZWdh
Y3lBdHRyaWJ1dGVkU3RyaW5nRnJvbTooRE9NTm9kZSopc3RhcnRDb250YWluZXIgb2Zmc2V0Oihp
bnQpc3RhcnRPZmZzZXQgdG86KERPTU5vZGUqKWVuZENvbnRhaW5lciBvZmZzZXQ6KGludCllbmRP
ZmZzZXQ7CiBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBXZWJIVE1MVmlldyAoRHVtcFJlbmRlclRy
ZWVJbnB1dE1ldGhvZEhhbmRsZXIpCkBAIC0yMzAsNyArMjMxLDcgQEAgKyAoQk9PTClpc1NlbGVj
dG9yRXhjbHVkZWRGcm9tV2ViU2NyaXB0OgogICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVj
dG9yKGNvbnZlcnNhdGlvbklkZW50aWZpZXIpCiAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2Vs
ZWN0b3Ioc3Vic3RyaW5nRnJvbTpsZW5ndGg6KQogICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNl
bGVjdG9yKGF0dHJpYnV0ZWRTdWJzdHJpbmdGcm9tOmxlbmd0aDopCi0gICAgICAgIHx8IGFTZWxl
Y3RvciA9PSBAc2VsZWN0b3IobGVnYWN5QXR0cmlidXRlZFN0cmluZzopCisgICAgICAgIHx8IGFT
ZWxlY3RvciA9PSBAc2VsZWN0b3IobGVnYWN5QXR0cmlidXRlZFN0cmluZzpvZmZzZXQ6dG86b2Zm
c2V0OikKICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBzZWxlY3RvcihtYXJrZWRSYW5nZSkKICAg
ICAgICAgfHwgYVNlbGVjdG9yID09IEBzZWxlY3RvcihzZWxlY3RlZFJhbmdlKQogICAgICAgICB8
fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGZpcnN0UmVjdEZvckNoYXJhY3RlcnNGcm9tOmxlbmd0
aDopCkBAIC0yNTcsNyArMjU4LDcgQEAgKyAoTlNTdHJpbmcgKil3ZWJTY3JpcHROYW1lRm9yU2Vs
ZWN0b3I6KAogICAgICAgICByZXR1cm4gQCJzdWJzdHJpbmdGcm9tUmFuZ2UiOwogICAgIGlmIChh
U2VsZWN0b3IgPT0gQHNlbGVjdG9yKGF0dHJpYnV0ZWRTdWJzdHJpbmdGcm9tOmxlbmd0aDopKQog
ICAgICAgICByZXR1cm4gQCJhdHRyaWJ1dGVkU3Vic3RyaW5nRnJvbVJhbmdlIjsKLSAgICBpZiAo
YVNlbGVjdG9yID09IEBzZWxlY3RvcihsZWdhY3lBdHRyaWJ1dGVkU3RyaW5nOikpCisgICAgaWYg
KGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobGVnYWN5QXR0cmlidXRlZFN0cmluZzpvZmZzZXQ6dG86
b2Zmc2V0OikpCiAgICAgICAgIHJldHVybiBAImxlZ2FjeUF0dHJpYnV0ZWRTdHJpbmciOwogICAg
IGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGZpcnN0UmVjdEZvckNoYXJhY3RlcnNGcm9tOmxl
bmd0aDopKQogICAgICAgICByZXR1cm4gQCJmaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZSI7CkBA
IC0zNzIsMTUgKzM3MywxMyBAQCAtIChOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nICopYXR0cmli
dXRlCiAgICAgcmV0dXJuIHJldDsKIH0KIAotLSAoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyAq
KWxlZ2FjeUF0dHJpYnV0ZWRTdHJpbmc6KERPTVJhbmdlKilyYW5nZQorLSAoTlNBdHRyaWJ1dGVk
U3RyaW5nICopbGVnYWN5QXR0cmlidXRlZFN0cmluZzooRE9NTm9kZSopc3RhcnRDb250YWluZXIg
b2Zmc2V0OihpbnQpc3RhcnRPZmZzZXQgdG86KERPTU5vZGUqKWVuZENvbnRhaW5lciBvZmZzZXQ6
KGludCllbmRPZmZzZXQKIHsKLSAgICBOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nICpzdHJpbmcg
PSBbW1tOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nIGFsbG9jXSBpbml0XSBhdXRvcmVsZWFzZV07
CiAgICAgaWQgZG9jdW1lbnRWaWV3ID0gW1tbd2ViVmlldyBtYWluRnJhbWVdIGZyYW1lVmlld10g
ZG9jdW1lbnRWaWV3XTsKICAgICBpZiAoIVtkb2N1bWVudFZpZXcgaXNLaW5kT2ZDbGFzczpbV2Vi
SFRNTFZpZXcgY2xhc3NdXSkKLSAgICAgICAgcmV0dXJuIHN0cmluZzsKKyAgICAgICAgcmV0dXJu
IG5pbDsKIAotICAgIFtzdHJpbmcgc2V0QXR0cmlidXRlZFN0cmluZzpbKFdlYkhUTUxWaWV3ICop
ZG9jdW1lbnRWaWV3IF9hdHRyaWJ1dGVkU3RyaW5nRnJvbURPTVJhbmdlOnJhbmdlXV07Ci0gICAg
cmV0dXJuIHN0cmluZzsKKyAgICByZXR1cm4gWyhXZWJIVE1MVmlldyAqKWRvY3VtZW50VmlldyBf
bGVnYWN5QXR0cmlidXRlZFN0cmluZ0Zyb206c3RhcnRDb250YWluZXIgb2Zmc2V0OnN0YXJ0T2Zm
c2V0IHRvOmVuZENvbnRhaW5lciBvZmZzZXQ6ZW5kT2Zmc2V0XTsKIH0KIAogLSAoTlNBcnJheSAq
KW1hcmtlZFJhbmdlCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzkxNDcpCisrKyBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAxOC0xMi0xMiAgUnlv
c3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KKworICAgICAgICBNYWtlIFRleHRJbnB1dENv
bnRyb2xsZXIubGVnYWN5QXR0cmlidXRlZFN0cmluZyB0YWtlIERPTSBub2RlcyBhbmQgb2Zmc2V0
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyNjUz
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRl
ZCB0aGUgdGVzdHMgcGVyIEFQSSBjaGFuZ2UuCisKKyAgICAgICAgKiBlZGl0aW5nL21hYy9hdHRy
aWJ1dGVkLXN0cmluZy9hdHRyaWJ1dGUtc3RyaW5nLWZvci1jb3B5LXdpdGgtY29sb3ItZmlsdGVy
Lmh0bWw6CisgICAgICAgICogZWRpdGluZy9tYWMvYXR0cmlidXRlZC1zdHJpbmcvcmVzb3VyY2Vz
L2R1bXAtYXR0cmlidXRlZC1zdHJpbmcuanM6CisgICAgICAgIChkdW1wQXR0cmlidXRlZFN0cmlu
Zyk6CisKIDIwMTgtMTItMTIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+
CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjIzODM1Nyk6IFBpbnMgb24gWWVscCBtYXAgZGlzYXBw
ZWFyCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL21hYy9hdHRyaWJ1dGVkLXN0cmluZy9hdHRy
aWJ1dGUtc3RyaW5nLWZvci1jb3B5LXdpdGgtY29sb3ItZmlsdGVyLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZWRpdGluZy9tYWMvYXR0cmlidXRlZC1zdHJpbmcvYXR0cmlidXRlLXN0
cmluZy1mb3ItY29weS13aXRoLWNvbG9yLWZpbHRlci5odG1sCShyZXZpc2lvbiAyMzkxNDcpCisr
KyBMYXlvdXRUZXN0cy9lZGl0aW5nL21hYy9hdHRyaWJ1dGVkLXN0cmluZy9hdHRyaWJ1dGUtc3Ry
aW5nLWZvci1jb3B5LXdpdGgtY29sb3ItZmlsdGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIw
LDExICsyMCw3IEBACiAgICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGFyZ2V0Iik7CiAgICAgICAgIHRhcmdldC5mb2N1cygpOwogCi0gICAgICAgIGNvbnN0IHJh
bmdlID0gbmV3IFJhbmdlOwotICAgICAgICByYW5nZS5zZXRTdGFydCh0YXJnZXQuZmlyc3RDaGls
ZCwgMik7Ci0gICAgICAgIHJhbmdlLnNldEVuZCh0YXJnZXQuZmlyc3RDaGlsZCwgNCk7Ci0KLSAg
ICAgICAgdmFyIGF0dHJpYnV0ZWRTdHJpbmcgPSB0ZXh0SW5wdXRDb250cm9sbGVyLmxlZ2FjeUF0
dHJpYnV0ZWRTdHJpbmcocmFuZ2UpOworICAgICAgICB2YXIgYXR0cmlidXRlZFN0cmluZyA9IHRl
eHRJbnB1dENvbnRyb2xsZXIubGVnYWN5QXR0cmlidXRlZFN0cmluZyh0YXJnZXQuZmlyc3RDaGls
ZCwgMiwgdGFyZ2V0LmZpcnN0Q2hpbGQsIDQpOwogICAgICAgICB2YXIgc2VyaWFsaXplZFN0cmlu
ZyA9IHNlcmlhbGl6ZUF0dHJpYnV0ZWRTdHJpbmcoYXR0cmlidXRlZFN0cmluZyk7CiAgICAgICAg
IGxvZyhzZXJpYWxpemVkU3RyaW5nKTsKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9tYWMv
YXR0cmlidXRlZC1zdHJpbmcvcmVzb3VyY2VzL2R1bXAtYXR0cmlidXRlZC1zdHJpbmcuanMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9tYWMvYXR0cmlidXRlZC1zdHJpbmcvcmVz
b3VyY2VzL2R1bXAtYXR0cmlidXRlZC1zdHJpbmcuanMJKHJldmlzaW9uIDIzOTE0NykKKysrIExh
eW91dFRlc3RzL2VkaXRpbmcvbWFjL2F0dHJpYnV0ZWQtc3RyaW5nL3Jlc291cmNlcy9kdW1wLWF0
dHJpYnV0ZWQtc3RyaW5nLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw4IEBAIHZhciBz
aG91bGRBdXRvRHVtcCA9IHRydWU7CiAgICAgICAgIHJhbmdlLnNlbGVjdE5vZGVDb250ZW50cyhj
b250YWluZXIpOwogCiAgICAgICAgIHZhciBwcmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdw
cmUnKTsKLSAgICAgICAgcHJlLnRleHRDb250ZW50ID0gJ0lucHV0OlxuJyArIGNvbnRhaW5lci5p
bm5lckhUTUwudHJpbSgpICsgJ1xuXG5PdXRwdXQ6XG4nICsgc2VyaWFsaXplQXR0cmlidXRlZFN0
cmluZyh0ZXh0SW5wdXRDb250cm9sbGVyLmxlZ2FjeUF0dHJpYnV0ZWRTdHJpbmcocmFuZ2UpKTsK
KyAgICAgICAgdmFyIHJlc3VsdCA9IHNlcmlhbGl6ZUF0dHJpYnV0ZWRTdHJpbmcodGV4dElucHV0
Q29udHJvbGxlci5sZWdhY3lBdHRyaWJ1dGVkU3RyaW5nKGNvbnRhaW5lciwgMCwgY29udGFpbmVy
LCBjb250YWluZXIuY2hpbGROb2Rlcy5sZW5ndGgpKTsKKyAgICAgICAgcHJlLnRleHRDb250ZW50
ID0gJ0lucHV0OlxuJyArIGNvbnRhaW5lci5pbm5lckhUTUwudHJpbSgpICsgJ1xuXG5PdXRwdXQ6
XG4nICsgcmVzdWx0OwogCiAgICAgICAgIGJvZHkuaW5uZXJIVE1MID0gJyc7CiAgICAgICAgIGJv
ZHkuYXBwZW5kQ2hpbGQocHJlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357206</attachid>
            <date>2018-12-12 19:39:57 -0800</date>
            <delta_ts>2018-12-12 19:49:40 -0800</delta_ts>
            <desc>Reverted the unrelated change</desc>
            <filename>bug-192653-20181212193957.patch</filename>
            <type>text/plain</type>
            <size>10545</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzOTE0OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE4LTEyLTEzICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIE1ha2UgVGV4dElucHV0Q29udHJv
bGxlci5sZWdhY3lBdHRyaWJ1dGVkU3RyaW5nIHRha2UgRE9NIG5vZGVzIGFuZCBvZmZzZXRzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI2NTMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVz
dHMgc2luY2UgdGhlcmUgc2hvdWxkIGJlIG5vIG9ic2VydmFibGUgYmVoYXZpb3JhbCBjaGFuZ2Ug
b3RoZXIgdGhhbgorICAgICAgICBUZXh0SW5wdXRDb250cm9sbGVyIEFQSSBpbiBEdW1wUmVuZGVy
VHJlZS4KKworICAgICAgICAqIGVkaXRpbmcvY29jb2EvSFRNTENvbnZlcnRlci5oOgorICAgICAg
ICAqIGVkaXRpbmcvY29jb2EvSFRNTENvbnZlcnRlci5tbToKKyAgICAgICAgKFdlYkNvcmU6OmF0
dHJpYnV0ZWRTdHJpbmdGcm9tU2VsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OmF0dHJpYnV0
ZWRTdHJpbmdCZXR3ZWVuU3RhcnRBbmRFbmQpOiBBZGRlZC4KKwogMjAxOC0xMi0xMiAgUnlvc3Vr
ZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggbWFjT1MgYnVpbGRzIGFm
dGVyIHIyMzkxNDUuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0hUTUxDb252
ZXJ0ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0hUTUxD
b252ZXJ0ZXIuaAkocmV2aXNpb24gMjM5MTQ4KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9j
b2NvYS9IVE1MQ29udmVydGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI4LDEzICsyOCwxOCBAQAog
T0JKQ19DTEFTUyBOU0F0dHJpYnV0ZWRTdHJpbmc7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKLSAg
ICAKKworY2xhc3MgUG9zaXRpb247CiBjbGFzcyBSYW5nZTsKIGNsYXNzIFZpc2libGVTZWxlY3Rp
b247CiAKIGVudW0gY2xhc3MgSW5jbHVkZUltYWdlc0luQXR0cmlidXRlZFN0cmluZyB7IFllcywg
Tm8gfTsKIAogTlNBdHRyaWJ1dGVkU3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nRnJvbVNlbGVjdGlv
bihjb25zdCBWaXNpYmxlU2VsZWN0aW9uJik7CisKKy8vIEZvciB0ZXN0aW5nIHB1cnBvc2Ugb25s
eQorV0VCQ09SRV9FWFBPUlQgTlNBdHRyaWJ1dGVkU3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nQmV0
d2VlblN0YXJ0QW5kRW5kKGNvbnN0IFBvc2l0aW9uJiwgY29uc3QgUG9zaXRpb24mKTsKKwogV0VC
Q09SRV9FWFBPUlQgTlNBdHRyaWJ1dGVkU3RyaW5nICphdHRyaWJ1dGVkU3RyaW5nRnJvbVJhbmdl
KFJhbmdlJik7CiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCiBXRUJDT1JFX0VYUE9SVCBOU0F0
dHJpYnV0ZWRTdHJpbmcgKmVkaXRpbmdBdHRyaWJ1dGVkU3RyaW5nRnJvbVJhbmdlKFJhbmdlJiwg
SW5jbHVkZUltYWdlc0luQXR0cmlidXRlZFN0cmluZyA9IEluY2x1ZGVJbWFnZXNJbkF0dHJpYnV0
ZWRTdHJpbmc6Olllcyk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0hUTUxD
b252ZXJ0ZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9I
VE1MQ29udmVydGVyLm1tCShyZXZpc2lvbiAyMzkxNDgpCisrKyBTb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL2NvY29hL0hUTUxDb252ZXJ0ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTI0NjcsNyArMjQ2
NywxMiBAQCBOU0F0dHJpYnV0ZWRTdHJpbmcgKmF0dHJpYnV0ZWRTdHJpbmdGcm9tCiB7CiAgICAg
YXV0byByYW5nZSA9IHNlbGVjdGlvbi50b05vcm1hbGl6ZWRSYW5nZSgpOwogICAgIEFTU0VSVChy
YW5nZSk7Ci0gICAgcmV0dXJuIEhUTUxDb252ZXJ0ZXIgeyByYW5nZS0+c3RhcnRQb3NpdGlvbigp
LCByYW5nZS0+ZW5kUG9zaXRpb24oKSB9LmNvbnZlcnQoKTsKKyAgICByZXR1cm4gYXR0cmlidXRl
ZFN0cmluZ0JldHdlZW5TdGFydEFuZEVuZChyYW5nZS0+c3RhcnRQb3NpdGlvbigpLCByYW5nZS0+
ZW5kUG9zaXRpb24oKSk7Cit9CisKK05TQXR0cmlidXRlZFN0cmluZyAqYXR0cmlidXRlZFN0cmlu
Z0JldHdlZW5TdGFydEFuZEVuZChjb25zdCBQb3NpdGlvbiYgc3RhcnQsIGNvbnN0IFBvc2l0aW9u
JiBlbmQpCit7CisgICAgcmV0dXJuIEhUTUxDb252ZXJ0ZXIgeyBzdGFydCwgZW5kIH0uY29udmVy
dCgpOwogfQogICAgIAogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQpJbmRleDogU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL0NoYW5nZUxvZwkocmV2aXNpb24gMjM5MTQ4KQorKysgU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTgtMTIt
MTIgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgTWFrZSBUZXh0
SW5wdXRDb250cm9sbGVyLmxlZ2FjeUF0dHJpYnV0ZWRTdHJpbmcgdGFrZSBET00gbm9kZXMgYW5k
IG9mZnNldHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE5MjY1MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogV2ViVmlldy9XZWJIVE1MVmlldy5tbToKKyAgICAgICAgKC1bV2ViSFRNTFZpZXcgX2xlZ2Fj
eUF0dHJpYnV0ZWRTdHJpbmdGcm9tOm9mZnNldDp0bzpvZmZzZXQ6XSk6CisKIDIwMTgtMTItMTEg
IEp1c3RpbiBNaWNoYXVkICA8anVzdGluX21pY2hhdWRAYXBwbGUuY29tPgogCiAgICAgICAgIElt
cGxlbWVudCBmZWF0dXJlIGZsYWcgZm9yIENTUyBUeXBlZCBPTQpJbmRleDogU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCShyZXZpc2lvbiAyMzkxNDgp
CisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCSh3b3Jr
aW5nIGNvcHkpCkBAIC03MDMyLDYgKzcwMzIsMTMgQEAgLSAoTlNBdHRyaWJ1dGVkU3RyaW5nICop
X2F0dHJpYnV0ZWRTdHJpbgogICAgIHJldHVybiBhdHRyaWJ1dGVkU3RyaW5nOwogfQogCistIChO
U0F0dHJpYnV0ZWRTdHJpbmcgKilfbGVnYWN5QXR0cmlidXRlZFN0cmluZ0Zyb206KERPTU5vZGUq
KXN0YXJ0Q29udGFpbmVyIG9mZnNldDooaW50KXN0YXJ0T2Zmc2V0IHRvOihET01Ob2RlKillbmRD
b250YWluZXIgb2Zmc2V0OihpbnQpZW5kT2Zmc2V0Cit7CisgICAgcmV0dXJuIGF0dHJpYnV0ZWRT
dHJpbmdCZXR3ZWVuU3RhcnRBbmRFbmQoCisgICAgICAgIFBvc2l0aW9uIHsgY29yZShzdGFydENv
bnRhaW5lciksIHN0YXJ0T2Zmc2V0LCBQb3NpdGlvbjo6UG9zaXRpb25Jc09mZnNldEluQW5jaG9y
IH0sCisgICAgICAgIFBvc2l0aW9uIHsgY29yZShlbmRDb250YWluZXIpLCBlbmRPZmZzZXQsIFBv
c2l0aW9uOjpQb3NpdGlvbklzT2Zmc2V0SW5BbmNob3IgfSk7Cit9CisKIC0gKE5TQXR0cmlidXRl
ZFN0cmluZyAqKWF0dHJpYnV0ZWRTdHJpbmcKIHsKICAgICBET01Eb2N1bWVudCAqZG9jdW1lbnQg
PSBbW3NlbGYgX2ZyYW1lXSBET01Eb2N1bWVudF07CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzkxNDgpCisrKyBUb29scy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMCBAQAorMjAxOC0xMi0xMiAgUnlv
c3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KKworICAgICAgICBNYWtlIFRleHRJbnB1dENv
bnRyb2xsZXIubGVnYWN5QXR0cmlidXRlZFN0cmluZyB0YWtlIERPTSBub2RlcyBhbmQgb2Zmc2V0
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyNjUz
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRl
ZCBUZXh0SW5wdXRDb250cm9sbGVyLmxlZ2FjeUF0dHJpYnV0ZWRTdHJpbmcgdG8gdGFrZSBET00g
bm9kZXMgYW5kIG9mZnNldHMgaW5zdGVhZCBvZgorICAgICAgICBhIERPTSBSYW5nZSBvYmplY3Qg
aW4gcHJlcGFyYXRpb24gdG8gYWRkIGxheW91dCB0ZXN0cyBmb3IgSFRNTENvbnZlcnRlciB3aGlj
aCBjcm9zc2VzCisgICAgICAgIHNoYWRvdyBib3VuZGFyaWVzLgorCisgICAgICAgICogRHVtcFJl
bmRlclRyZWUvbWFjL1RleHRJbnB1dENvbnRyb2xsZXJNYWMubToKKyAgICAgICAgKCtbVGV4dElu
cHV0Q29udHJvbGxlciBpc1NlbGVjdG9yRXhjbHVkZWRGcm9tV2ViU2NyaXB0Ol0pOiBVcGRhdGVk
IHRoZSBzZWxlY3RvciBzaWduYXR1cmUuCisgICAgICAgICgrW1RleHRJbnB1dENvbnRyb2xsZXIg
d2ViU2NyaXB0TmFtZUZvclNlbGVjdG9yOl0pOiBEaXR0by4KKyAgICAgICAgKC1bVGV4dElucHV0
Q29udHJvbGxlciBsZWdhY3lBdHRyaWJ1dGVkU3RyaW5nOm9mZnNldDp0bzpvZmZzZXQ6XSk6IE1h
ZGUgdGhpcyBmdW5jdGlvbiB0YWtlCisgICAgICAgIHN0YXJ0IG5vZGUgYW5kIG9mZnNldCB0aGVu
IGVuZCBub2RlIGFuZCBvZmZzZXQgcGFpcnMuCisKIDIwMTgtMTItMTIgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBJbXBsZW1lbnQgc2FmZSBi
cm93c2luZyBpbiBXZWJLaXQgb24gV2F0Y2hPUwpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL1RleHRJbnB1dENvbnRyb2xsZXJNYWMubQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9EdW1wUmVu
ZGVyVHJlZS9tYWMvVGV4dElucHV0Q29udHJvbGxlck1hYy5tCShyZXZpc2lvbiAyMzkxNDgpCisr
KyBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvVGV4dElucHV0Q29udHJvbGxlck1hYy5tCSh3b3Jr
aW5nIGNvcHkpCkBAIC02NCw2ICs2NCw3IEBAIC0gKHZvaWQpaW50ZXJwcmV0S2V5RXZlbnRzOihO
U0FycmF5ICopZXYKIEBpbnRlcmZhY2UgV2ViSFRNTFZpZXcgKFdlYktpdFNlY3JldHNUZXh0SW5w
dXRDb250cm9sbGVySXNBd2FyZU9mKQogLSAoV2ViRnJhbWUgKilfZnJhbWU7CiAtIChOU0F0dHJp
YnV0ZWRTdHJpbmcgKilfYXR0cmlidXRlZFN0cmluZ0Zyb21ET01SYW5nZTooRE9NUmFuZ2UgKily
YW5nZTsKKy0gKE5TQXR0cmlidXRlZFN0cmluZyAqKV9sZWdhY3lBdHRyaWJ1dGVkU3RyaW5nRnJv
bTooRE9NTm9kZSopc3RhcnRDb250YWluZXIgb2Zmc2V0OihpbnQpc3RhcnRPZmZzZXQgdG86KERP
TU5vZGUqKWVuZENvbnRhaW5lciBvZmZzZXQ6KGludCllbmRPZmZzZXQ7CiBAZW5kCiAKIEBpbXBs
ZW1lbnRhdGlvbiBXZWJIVE1MVmlldyAoRHVtcFJlbmRlclRyZWVJbnB1dE1ldGhvZEhhbmRsZXIp
CkBAIC0yMzAsNyArMjMxLDcgQEAgKyAoQk9PTClpc1NlbGVjdG9yRXhjbHVkZWRGcm9tV2ViU2Ny
aXB0OgogICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGNvbnZlcnNhdGlvbklkZW50
aWZpZXIpCiAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3Ioc3Vic3RyaW5nRnJvbTps
ZW5ndGg6KQogICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGF0dHJpYnV0ZWRTdWJz
dHJpbmdGcm9tOmxlbmd0aDopCi0gICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobGVn
YWN5QXR0cmlidXRlZFN0cmluZzopCisgICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3Io
bGVnYWN5QXR0cmlidXRlZFN0cmluZzpvZmZzZXQ6dG86b2Zmc2V0OikKICAgICAgICAgfHwgYVNl
bGVjdG9yID09IEBzZWxlY3RvcihtYXJrZWRSYW5nZSkKICAgICAgICAgfHwgYVNlbGVjdG9yID09
IEBzZWxlY3RvcihzZWxlY3RlZFJhbmdlKQogICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVj
dG9yKGZpcnN0UmVjdEZvckNoYXJhY3RlcnNGcm9tOmxlbmd0aDopCkBAIC0yNTcsNyArMjU4LDcg
QEAgKyAoTlNTdHJpbmcgKil3ZWJTY3JpcHROYW1lRm9yU2VsZWN0b3I6KAogICAgICAgICByZXR1
cm4gQCJzdWJzdHJpbmdGcm9tUmFuZ2UiOwogICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9y
KGF0dHJpYnV0ZWRTdWJzdHJpbmdGcm9tOmxlbmd0aDopKQogICAgICAgICByZXR1cm4gQCJhdHRy
aWJ1dGVkU3Vic3RyaW5nRnJvbVJhbmdlIjsKLSAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3Rv
cihsZWdhY3lBdHRyaWJ1dGVkU3RyaW5nOikpCisgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0
b3IobGVnYWN5QXR0cmlidXRlZFN0cmluZzpvZmZzZXQ6dG86b2Zmc2V0OikpCiAgICAgICAgIHJl
dHVybiBAImxlZ2FjeUF0dHJpYnV0ZWRTdHJpbmciOwogICAgIGlmIChhU2VsZWN0b3IgPT0gQHNl
bGVjdG9yKGZpcnN0UmVjdEZvckNoYXJhY3RlcnNGcm9tOmxlbmd0aDopKQogICAgICAgICByZXR1
cm4gQCJmaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZSI7CkBAIC0zNzIsMTUgKzM3MywxMyBAQCAt
IChOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nICopYXR0cmlidXRlCiAgICAgcmV0dXJuIHJldDsK
IH0KIAotLSAoTlNNdXRhYmxlQXR0cmlidXRlZFN0cmluZyAqKWxlZ2FjeUF0dHJpYnV0ZWRTdHJp
bmc6KERPTVJhbmdlKilyYW5nZQorLSAoTlNBdHRyaWJ1dGVkU3RyaW5nICopbGVnYWN5QXR0cmli
dXRlZFN0cmluZzooRE9NTm9kZSopc3RhcnRDb250YWluZXIgb2Zmc2V0OihpbnQpc3RhcnRPZmZz
ZXQgdG86KERPTU5vZGUqKWVuZENvbnRhaW5lciBvZmZzZXQ6KGludCllbmRPZmZzZXQKIHsKLSAg
ICBOU011dGFibGVBdHRyaWJ1dGVkU3RyaW5nICpzdHJpbmcgPSBbW1tOU011dGFibGVBdHRyaWJ1
dGVkU3RyaW5nIGFsbG9jXSBpbml0XSBhdXRvcmVsZWFzZV07CiAgICAgaWQgZG9jdW1lbnRWaWV3
ID0gW1tbd2ViVmlldyBtYWluRnJhbWVdIGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XTsKICAgICBp
ZiAoIVtkb2N1bWVudFZpZXcgaXNLaW5kT2ZDbGFzczpbV2ViSFRNTFZpZXcgY2xhc3NdXSkKLSAg
ICAgICAgcmV0dXJuIHN0cmluZzsKKyAgICAgICAgcmV0dXJuIG5pbDsKIAotICAgIFtzdHJpbmcg
c2V0QXR0cmlidXRlZFN0cmluZzpbKFdlYkhUTUxWaWV3ICopZG9jdW1lbnRWaWV3IF9hdHRyaWJ1
dGVkU3RyaW5nRnJvbURPTVJhbmdlOnJhbmdlXV07Ci0gICAgcmV0dXJuIHN0cmluZzsKKyAgICBy
ZXR1cm4gWyhXZWJIVE1MVmlldyAqKWRvY3VtZW50VmlldyBfbGVnYWN5QXR0cmlidXRlZFN0cmlu
Z0Zyb206c3RhcnRDb250YWluZXIgb2Zmc2V0OnN0YXJ0T2Zmc2V0IHRvOmVuZENvbnRhaW5lciBv
ZmZzZXQ6ZW5kT2Zmc2V0XTsKIH0KIAogLSAoTlNBcnJheSAqKW1hcmtlZFJhbmdlCkluZGV4OiBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMzkxNDgpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxNiBAQAorMjAxOC0xMi0xMiAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Vi
a2l0Lm9yZz4KKworICAgICAgICBNYWtlIFRleHRJbnB1dENvbnRyb2xsZXIubGVnYWN5QXR0cmli
dXRlZFN0cmluZyB0YWtlIERPTSBub2RlcyBhbmQgb2Zmc2V0cworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyNjUzCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCB0aGUgdGVzdHMgcGVyIEFQSSBj
aGFuZ2UuCisKKyAgICAgICAgKiBlZGl0aW5nL21hYy9hdHRyaWJ1dGVkLXN0cmluZy9hdHRyaWJ1
dGUtc3RyaW5nLWZvci1jb3B5LXdpdGgtY29sb3ItZmlsdGVyLmh0bWw6CisgICAgICAgICogZWRp
dGluZy9tYWMvYXR0cmlidXRlZC1zdHJpbmcvcmVzb3VyY2VzL2R1bXAtYXR0cmlidXRlZC1zdHJp
bmcuanM6CisgICAgICAgIChkdW1wQXR0cmlidXRlZFN0cmluZyk6CisKIDIwMTgtMTItMTIgIFNp
bW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lP
TiAocjIzODM1Nyk6IFBpbnMgb24gWWVscCBtYXAgZGlzYXBwZWFyCkluZGV4OiBMYXlvdXRUZXN0
cy9lZGl0aW5nL21hYy9hdHRyaWJ1dGVkLXN0cmluZy9hdHRyaWJ1dGUtc3RyaW5nLWZvci1jb3B5
LXdpdGgtY29sb3ItZmlsdGVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGlu
Zy9tYWMvYXR0cmlidXRlZC1zdHJpbmcvYXR0cmlidXRlLXN0cmluZy1mb3ItY29weS13aXRoLWNv
bG9yLWZpbHRlci5odG1sCShyZXZpc2lvbiAyMzkxNDgpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5n
L21hYy9hdHRyaWJ1dGVkLXN0cmluZy9hdHRyaWJ1dGUtc3RyaW5nLWZvci1jb3B5LXdpdGgtY29s
b3ItZmlsdGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIwLDExICsyMCw3IEBACiAgICAgICAg
IHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CiAgICAgICAg
IHRhcmdldC5mb2N1cygpOwogCi0gICAgICAgIGNvbnN0IHJhbmdlID0gbmV3IFJhbmdlOwotICAg
ICAgICByYW5nZS5zZXRTdGFydCh0YXJnZXQuZmlyc3RDaGlsZCwgMik7Ci0gICAgICAgIHJhbmdl
LnNldEVuZCh0YXJnZXQuZmlyc3RDaGlsZCwgNCk7Ci0KLSAgICAgICAgdmFyIGF0dHJpYnV0ZWRT
dHJpbmcgPSB0ZXh0SW5wdXRDb250cm9sbGVyLmxlZ2FjeUF0dHJpYnV0ZWRTdHJpbmcocmFuZ2Up
OworICAgICAgICB2YXIgYXR0cmlidXRlZFN0cmluZyA9IHRleHRJbnB1dENvbnRyb2xsZXIubGVn
YWN5QXR0cmlidXRlZFN0cmluZyh0YXJnZXQuZmlyc3RDaGlsZCwgMiwgdGFyZ2V0LmZpcnN0Q2hp
bGQsIDQpOwogICAgICAgICB2YXIgc2VyaWFsaXplZFN0cmluZyA9IHNlcmlhbGl6ZUF0dHJpYnV0
ZWRTdHJpbmcoYXR0cmlidXRlZFN0cmluZyk7CiAgICAgICAgIGxvZyhzZXJpYWxpemVkU3RyaW5n
KTsKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9tYWMvYXR0cmlidXRlZC1zdHJpbmcvcmVz
b3VyY2VzL2R1bXAtYXR0cmlidXRlZC1zdHJpbmcuanMKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZWRpdGluZy9tYWMvYXR0cmlidXRlZC1zdHJpbmcvcmVzb3VyY2VzL2R1bXAtYXR0cmlidXRl
ZC1zdHJpbmcuanMJKHJldmlzaW9uIDIzOTE0OCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvbWFj
L2F0dHJpYnV0ZWQtc3RyaW5nL3Jlc291cmNlcy9kdW1wLWF0dHJpYnV0ZWQtc3RyaW5nLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC0xNSw3ICsxNSw4IEBAIHZhciBzaG91bGRBdXRvRHVtcCA9IHRydWU7
CiAgICAgICAgIHJhbmdlLnNlbGVjdE5vZGVDb250ZW50cyhjb250YWluZXIpOwogCiAgICAgICAg
IHZhciBwcmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdwcmUnKTsKLSAgICAgICAgcHJlLnRl
eHRDb250ZW50ID0gJ0lucHV0OlxuJyArIGNvbnRhaW5lci5pbm5lckhUTUwudHJpbSgpICsgJ1xu
XG5PdXRwdXQ6XG4nICsgc2VyaWFsaXplQXR0cmlidXRlZFN0cmluZyh0ZXh0SW5wdXRDb250cm9s
bGVyLmxlZ2FjeUF0dHJpYnV0ZWRTdHJpbmcocmFuZ2UpKTsKKyAgICAgICAgdmFyIHJlc3VsdCA9
IHNlcmlhbGl6ZUF0dHJpYnV0ZWRTdHJpbmcodGV4dElucHV0Q29udHJvbGxlci5sZWdhY3lBdHRy
aWJ1dGVkU3RyaW5nKGNvbnRhaW5lciwgMCwgY29udGFpbmVyLCBjb250YWluZXIuY2hpbGROb2Rl
cy5sZW5ndGgpKTsKKyAgICAgICAgcHJlLnRleHRDb250ZW50ID0gJ0lucHV0OlxuJyArIGNvbnRh
aW5lci5pbm5lckhUTUwudHJpbSgpICsgJ1xuXG5PdXRwdXQ6XG4nICsgcmVzdWx0OwogCiAgICAg
ICAgIGJvZHkuaW5uZXJIVE1MID0gJyc7CiAgICAgICAgIGJvZHkuYXBwZW5kQ2hpbGQocHJlKTsK
</data>
<flag name="review"
          id="374110"
          type_id="1"
          status="+"
          setter="wenson_hsieh"
    />
          </attachment>
      

    </bug>

</bugzilla>