<?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>180161</bug_id>
          
          <creation_ts>2017-11-29 12:52:15 -0800</creation_ts>
          <short_desc>Improve initialization of script/root type of MathML renderers</short_desc>
          <delta_ts>2017-12-01 23:27:08 -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>MathML</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>161300</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>161300</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Frédéric Wang Nélar">fred.wang</reporter>
          <assigned_to name="Frédéric Wang Nélar">fred.wang</assigned_to>
          <cc>alex</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1375977</commentid>
    <comment_count>0</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2017-11-29 12:52:15 -0800</bug_when>
    <thetext>Improve initialization of script/root type of MathML renderers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1375978</commentid>
    <comment_count>1</comment_count>
      <attachid>327889</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2017-11-29 12:53:28 -0800</bug_when>
    <thetext>Created attachment 327889
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1377254</commentid>
    <comment_count>2</comment_count>
      <attachid>327889</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2017-12-01 23:26:50 -0800</bug_when>
    <thetext>Comment on attachment 327889
Patch

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

&gt; Source/WebCore/rendering/mathml/RenderMathMLScripts.h:52
&gt; +    const ScriptsType m_scriptType;

Should be enum class and moved to the element class. I&apos;ll directly work on bug 161300.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1377255</commentid>
    <comment_count>3</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2017-12-01 23:27:08 -0800</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 161300 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>327889</attachid>
            <date>2017-11-29 12:53:28 -0800</date>
            <delta_ts>2017-12-01 23:26:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180161-20171129215326.patch</filename>
            <type>text/plain</type>
            <size>14478</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1Mjc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWUxNWRjNDBkYWRkYWRl
OGFlMGZkMjc1MDRmM2EwMDQyNTllODUxMC4uYjU5NGRjNjYwMTcxYTZkYWU5MzNkZjk0MDNkYzZi
YmUwYzkyZmIzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE3LTExLTI5ICBGcmVk
ZXJpYyBXYW5nICA8ZndhbmdAaWdhbGlhLmNvbT4KKworICAgICAgICBJbXByb3ZlIGluaXRpYWxp
emF0aW9uIG9mIHNjcmlwdC9yb290IHR5cGUgb2YgTWF0aE1MIHJlbmRlcmVycworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwMTYxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVuZGVyTWF0aE1MUm9vdDo6
bV9raW5kIGFuZCBSZW5kZXJNYXRoTUxTY3JpcHRzOjptX3NjcmlwdFR5cGUgYXJlIGluaXRpYWxp
emVkIGluIHRoZQorICAgICAgICBjb25zdHJ1Y3RvcnMgYW5kIHJlbWFpbmVkIHVuY2hhbmdlZC4g
VGhpcyBwYXRjaCByZWZhY3RvcnMgYSBiaXQgdGhlIGluaXRpYWxpemF0aW9uIHNvIHRoYXQKKyAg
ICAgICAgdGhlc2UgbWVtYmVycyBhcmUgY2hhbmdlZCB0byBjb25zdCBpbiBvcmRlciB0byBndWFy
YW50ZWUgdGhleSBhcmUgbm90IG1vZGlmaWVkIGR1cmluZyB0aGUKKyAgICAgICAgbGlmZSB0aW1l
IG9mIHRoZSByZW5kZXJlci4gVGhlIHBhdGNoIGFsc28gaW5jbHVkZXMgbWlub3Igc3R5bGlzdGlj
IGltcHJvdmVtZW50cy4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGJlaGF2aW9yIHVuY2hhbmdl
ZC4KKworICAgICAgICAqIHJlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5jcHA6IEFk
ZCAidXNpbmciIHN0YXRlbWVudCBmb3IgTWF0aE1MTmFtZXMgbmFtZXNwYWNlLgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyTWF0aE1MUm9vdDo6UmVuZGVyTWF0aE1MUm9vdCk6IFVzZSByb290VHlw
ZU9mKCkgdG8gaW5pdGlhbGl6ZSB0aGUgbV9yb290VHlwZS4KKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlck1hdGhNTFJvb3Q6OnJvb3RUeXBlT2YpOiBOZXcgaGVscGVyIGZ1bmN0aW9uIHRvIGRldGVy
bWluZSB0aGUga2luZCBvZiByb290CisgICAgICAgIGV4cHJlc3Npb24gZnJvbSB0aGUgdGFnIG5h
bWUuIE1ha2UgdGhlIGNvbW1lbnQgYSByZWFsIHNlbnRlbmNlLCBhZGQgYW4gQVNTRVJUIGFuZCBy
ZW1vdmUgdGhlCisgICAgICAgIE1hdGhNTE5hbWVzOjogbmFtZXNwYWNlLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyTWF0aE1MUm9vdDo6aXNWYWxpZCBjb25zdCk6IFJlbmFtZSBtX2tpbmQgdG8g
bV9yb290VHlwZS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hdGhNTFJvb3Q6OmdldEJhc2Ug
Y29uc3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hdGhNTFJvb3Q6OmdldElu
ZGV4IGNvbnN0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNYXRoTUxSb290Ojpo
b3Jpem9udGFsUGFyYW1ldGVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTWF0
aE1MUm9vdDo6dmVydGljYWxQYXJhbWV0ZXJzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJNYXRoTUxSb290Ojpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocyk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTWF0aE1MUm9vdDo6bGF5b3V0QmxvY2spOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hdGhNTFJvb3Q6OnBhaW50KTogRGl0dG8uCisgICAg
ICAgICogcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxSb290Lmg6IERpdHRvLCBtYWtlIG1f
cm9vdFR5cGUgYSBjb25zdCBhbmQgZGVjbGFyZSB0aGUKKyAgICAgICAgcm9vdFR5cGVPZigpIGhl
bHBlciBmdW5jdGlvbi4KKyAgICAgICAgKiByZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFNj
cmlwdHMuY3BwOiBBZGQgInVzaW5nIiBzdGF0ZW1lbnQgZm9yIE1hdGhNTE5hbWVzIG5hbWVzcGFj
ZS4KKyAgICAgICAgKFdlYkNvcmU6OmlzUHJlc2NyaXB0RGVsaW1pdGVyKTogUmVtb3ZlIHRoZSBN
YXRoTUxOYW1lczo6IG5hbWVzcGFjZS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hdGhNTFNj
cmlwdHM6OlJlbmRlck1hdGhNTFNjcmlwdHMpOiBVc2Ugc2NyaXB0VHlwZU9mKCkgdG8gaW5pdGlh
bGl6ZSBtX3NjcmlwdFR5cGUuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNYXRoTUxTY3JpcHRz
OjpzY3JpcHRUeXBlT2YpOiBOZXcgaGVscGVyIGZ1bmN0aW9uIHRvIGRldGVybWluZSB0aGUga2lu
ZCBvZgorICAgICAgICBzY3JpcHRlZCBleHByZXNzaW9uIGZyb20gdGhlIHRhZyBuYW1lLiBNYWtl
IHRoZSBjb21tZW50IGEgcmVhbCBzZW50ZW5jZSBhbmQgcmVtb3ZlIHRoZQorICAgICAgICBNYXRo
TUxOYW1lczo6IG5hbWVzcGFjZS4KKyAgICAgICAgKiByZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1h
dGhNTFNjcmlwdHMuaDogTWFrZSBtX3NjcmlwdFR5cGUgYSBjb25zdCBhbmQgZGVjbGFyZSB0aGUK
KyAgICAgICAgc2NyaXB0VHlwZU9mKCkgaGVscGVyIGZ1bmN0aW9uLgorCiAyMDE3LTExLTI5ICBZ
b3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBMaWJXZWJSVENQZWVy
Q29ubmVjdGlvbkJhY2tlbmQgc2hvdWxkIGNsZWFuIGl0cyBzdGF0cyBwcm9taXNlcyB3aGVuIGJl
aW5nIGNsZWFuZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwv
UmVuZGVyTWF0aE1MUm9vdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1Jl
bmRlck1hdGhNTFJvb3QuY3BwCmluZGV4IDAyMmI0NTY3MGJmN2UwYzhmYzE2ZDA2ZjNkYmU3YTQz
NGE0MTgzZmMuLjY1YjA0YTIxYzA5NmNmM2ZhMWEyYTExNGE2NjU5NWEwODNlMjMxMTggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxSb290
LmNwcApAQCAtNDQsMjkgKzQ0LDM1IEBAIHN0YXRpYyBjb25zdCBVQ2hhciBnUmFkaWNhbENoYXJh
Y3RlciA9IDB4MjIxQTsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit1c2luZyBuYW1lc3BhY2Ug
TWF0aE1MTmFtZXM7CisKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChSZW5kZXJNYXRoTUxS
b290KTsKIAogUmVuZGVyTWF0aE1MUm9vdDo6UmVuZGVyTWF0aE1MUm9vdChNYXRoTUxSb3dFbGVt
ZW50JiBlbGVtZW50LCBSZW5kZXJTdHlsZSYmIHN0eWxlKQogICAgIDogUmVuZGVyTWF0aE1MUm93
KGVsZW1lbnQsIFdURk1vdmUoc3R5bGUpKQorICAgICwgbV9yb290VHlwZShyb290VHlwZU9mKGVs
ZW1lbnQpKQogewotICAgIC8vIERldGVybWluZSB3aGF0IGtpbmQgb2YgZXhwcmVzc2lvbiB3ZSBo
YXZlIGJ5IGVsZW1lbnQgbmFtZQotICAgIGlmIChlbGVtZW50Lmhhc1RhZ05hbWUoTWF0aE1MTmFt
ZXM6Om1zcXJ0VGFnKSkKLSAgICAgICAgbV9raW5kID0gU3F1YXJlUm9vdDsKLSAgICBlbHNlIGlm
IChlbGVtZW50Lmhhc1RhZ05hbWUoTWF0aE1MTmFtZXM6Om1yb290VGFnKSkKLSAgICAgICAgbV9r
aW5kID0gUm9vdFdpdGhJbmRleDsKLQogICAgIG1fcmFkaWNhbE9wZXJhdG9yLnNldE9wZXJhdG9y
KFJlbmRlck1hdGhNTFJvb3Q6OnN0eWxlKCksIGdSYWRpY2FsQ2hhcmFjdGVyLCBNYXRoT3BlcmF0
b3I6OlR5cGU6OlZlcnRpY2FsT3BlcmF0b3IpOwogfQogCitSZW5kZXJNYXRoTUxSb290OjpSb290
VHlwZSBSZW5kZXJNYXRoTUxSb290Ojpyb290VHlwZU9mKGNvbnN0IE1hdGhNTFJvd0VsZW1lbnQm
IGVsZW1lbnQpCit7CisgICAgLy8gVGhlIGtpbmQgb2Ygcm9vdCBleHByZXNzaW9uIGlzIGRldGVy
bWluZWQgZnJvbSB0aGUgZWxlbWVudCBuYW1lLgorICAgIGlmIChlbGVtZW50Lmhhc1RhZ05hbWUo
bXNxcnRUYWcpKQorICAgICAgICByZXR1cm4gU3F1YXJlUm9vdDsKKyAgICBBU1NFUlQoZWxlbWVu
dC5oYXNUYWdOYW1lKG1yb290VGFnKSk7CisgICAgcmV0dXJuIFJvb3RXaXRoSW5kZXg7Cit9CisK
IGJvb2wgUmVuZGVyTWF0aE1MUm9vdDo6aXNWYWxpZCgpIGNvbnN0CiB7CiAgICAgLy8gVmVyaWZ5
IHdoZXRoZXIgdGhlIGxpc3Qgb2YgY2hpbGRyZW4gaXMgdmFsaWQ6CiAgICAgLy8gPG1zcXJ0PiBj
aGlsZDEgY2hpbGQyIC4uLiBjaGlsZE4gPC9tc3FydD4KICAgICAvLyA8bXJvb3Q+IGJhc2UgaW5k
ZXggPC9tcm9vdD4KLSAgICBpZiAobV9raW5kID09IFNxdWFyZVJvb3QpCisgICAgaWYgKG1fcm9v
dFR5cGUgPT0gU3F1YXJlUm9vdCkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICBBU1NFUlQo
bV9raW5kID09IFJvb3RXaXRoSW5kZXgpOworICAgIEFTU0VSVChtX3Jvb3RUeXBlID09IFJvb3RX
aXRoSW5kZXgpOwogICAgIGF1dG8qIGNoaWxkID0gZmlyc3RDaGlsZEJveCgpOwogICAgIGlmICgh
Y2hpbGQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTc3LDE0ICs4MywxNCBAQCBib29sIFJl
bmRlck1hdGhNTFJvb3Q6OmlzVmFsaWQoKSBjb25zdAogUmVuZGVyQm94JiBSZW5kZXJNYXRoTUxS
b290OjpnZXRCYXNlKCkgY29uc3QKIHsKICAgICBBU1NFUlQoaXNWYWxpZCgpKTsKLSAgICBBU1NF
UlQobV9raW5kID09IFJvb3RXaXRoSW5kZXgpOworICAgIEFTU0VSVChtX3Jvb3RUeXBlID09IFJv
b3RXaXRoSW5kZXgpOwogICAgIHJldHVybiAqZmlyc3RDaGlsZEJveCgpOwogfQogCiBSZW5kZXJC
b3gmIFJlbmRlck1hdGhNTFJvb3Q6OmdldEluZGV4KCkgY29uc3QKIHsKICAgICBBU1NFUlQoaXNW
YWxpZCgpKTsKLSAgICBBU1NFUlQobV9raW5kID09IFJvb3RXaXRoSW5kZXgpOworICAgIEFTU0VS
VChtX3Jvb3RUeXBlID09IFJvb3RXaXRoSW5kZXgpOwogICAgIHJldHVybiAqZmlyc3RDaGlsZEJv
eCgpLT5uZXh0U2libGluZ0JveCgpOwogfQogCkBAIC05OSw3ICsxMDUsNyBAQCBSZW5kZXJNYXRo
TUxSb290OjpIb3Jpem9udGFsUGFyYW1ldGVycyBSZW5kZXJNYXRoTUxSb290Ojpob3Jpem9udGFs
UGFyYW1ldGVycygpCiAgICAgSG9yaXpvbnRhbFBhcmFtZXRlcnMgcGFyYW1ldGVyczsKIAogICAg
IC8vIFNxdWFyZSByb290cyBkbyBub3QgcmVxdWlyZSBob3Jpem9udGFsIHBhcmFtZXRlcnMuCi0g
ICAgaWYgKG1fa2luZCA9PSBTcXVhcmVSb290KQorICAgIGlmIChtX3Jvb3RUeXBlID09IFNxdWFy
ZVJvb3QpCiAgICAgICAgIHJldHVybiBwYXJhbWV0ZXJzOwogCiAgICAgLy8gV2UgdHJ5IGFuZCBy
ZWFkIGNvbnN0YW50cyB0byBkcmF3IHRoZSByYWRpY2FsIGZyb20gdGhlIE9wZW5UeXBlIE1BVEgg
YW5kIHVzZSBmYWxsYmFjayB2YWx1ZXMgb3RoZXJ3aXNlLgpAQCAtMTI1LDcgKzEzMSw3IEBAIFJl
bmRlck1hdGhNTFJvb3Q6OlZlcnRpY2FsUGFyYW1ldGVycyBSZW5kZXJNYXRoTUxSb290Ojp2ZXJ0
aWNhbFBhcmFtZXRlcnMoKQogICAgICAgICBwYXJhbWV0ZXJzLnJ1bGVUaGlja25lc3MgPSBtYXRo
RGF0YS0+Z2V0TWF0aENvbnN0YW50KHByaW1hcnlGb250LCBPcGVuVHlwZU1hdGhEYXRhOjpSYWRp
Y2FsUnVsZVRoaWNrbmVzcyk7CiAgICAgICAgIHBhcmFtZXRlcnMudmVydGljYWxHYXAgPSBtYXRo
RGF0YS0+Z2V0TWF0aENvbnN0YW50KHByaW1hcnlGb250LCBtYXRoTUxTdHlsZSgpLmRpc3BsYXlT
dHlsZSgpID8gT3BlblR5cGVNYXRoRGF0YTo6UmFkaWNhbERpc3BsYXlTdHlsZVZlcnRpY2FsR2Fw
IDogT3BlblR5cGVNYXRoRGF0YTo6UmFkaWNhbFZlcnRpY2FsR2FwKTsKICAgICAgICAgcGFyYW1l
dGVycy5leHRyYUFzY2VuZGVyID0gbWF0aERhdGEtPmdldE1hdGhDb25zdGFudChwcmltYXJ5Rm9u
dCwgT3BlblR5cGVNYXRoRGF0YTo6UmFkaWNhbEV4dHJhQXNjZW5kZXIpOwotICAgICAgICBpZiAo
bV9raW5kID09IFJvb3RXaXRoSW5kZXgpCisgICAgICAgIGlmIChtX3Jvb3RUeXBlID09IFJvb3RX
aXRoSW5kZXgpCiAgICAgICAgICAgICBwYXJhbWV0ZXJzLmRlZ3JlZUJvdHRvbVJhaXNlUGVyY2Vu
dCA9IG1hdGhEYXRhLT5nZXRNYXRoQ29uc3RhbnQocHJpbWFyeUZvbnQsIE9wZW5UeXBlTWF0aERh
dGE6OlJhZGljYWxEZWdyZWVCb3R0b21SYWlzZVBlcmNlbnQpOwogICAgIH0gZWxzZSB7CiAgICAg
ICAgIC8vIFJhZGljYWxWZXJ0aWNhbEdhcDogU3VnZ2VzdGVkIHZhbHVlIGlzIDUvNCBkZWZhdWx0
IHJ1bGUgdGhpY2tuZXNzLgpAQCAtMTM5LDcgKzE0NSw3IEBAIFJlbmRlck1hdGhNTFJvb3Q6OlZl
cnRpY2FsUGFyYW1ldGVycyBSZW5kZXJNYXRoTUxSb290Ojp2ZXJ0aWNhbFBhcmFtZXRlcnMoKQog
ICAgICAgICBlbHNlCiAgICAgICAgICAgICBwYXJhbWV0ZXJzLnZlcnRpY2FsR2FwID0gNSAqIHBh
cmFtZXRlcnMucnVsZVRoaWNrbmVzcyAvIDQ7CiAKLSAgICAgICAgaWYgKG1fa2luZCA9PSBSb290
V2l0aEluZGV4KSB7CisgICAgICAgIGlmIChtX3Jvb3RUeXBlID09IFJvb3RXaXRoSW5kZXgpIHsK
ICAgICAgICAgICAgIHBhcmFtZXRlcnMuZXh0cmFBc2NlbmRlciA9IHBhcmFtZXRlcnMucnVsZVRo
aWNrbmVzczsKICAgICAgICAgICAgIHBhcmFtZXRlcnMuZGVncmVlQm90dG9tUmFpc2VQZXJjZW50
ID0gMC42ZjsKICAgICAgICAgfQpAQCAtMTU4LDEzICsxNjQsMTMgQEAgdm9pZCBSZW5kZXJNYXRo
TUxSb290Ojpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiAgICAgfQogCiAgICAgTGF5
b3V0VW5pdCBwcmVmZXJyZWRXaWR0aCA9IDA7Ci0gICAgaWYgKG1fa2luZCA9PSBTcXVhcmVSb290
KSB7CisgICAgaWYgKG1fcm9vdFR5cGUgPT0gU3F1YXJlUm9vdCkgewogICAgICAgICBwcmVmZXJy
ZWRXaWR0aCArPSBtX3JhZGljYWxPcGVyYXRvci5tYXhQcmVmZXJyZWRXaWR0aCgpOwogICAgICAg
ICBzZXRQcmVmZXJyZWRMb2dpY2FsV2lkdGhzRGlydHkodHJ1ZSk7CiAgICAgICAgIFJlbmRlck1h
dGhNTFJvdzo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKTsKICAgICAgICAgcHJlZmVy
cmVkV2lkdGggKz0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7CiAgICAgfSBlbHNlIHsKLSAg
ICAgICAgQVNTRVJUKG1fa2luZCA9PSBSb290V2l0aEluZGV4KTsKKyAgICAgICAgQVNTRVJUKG1f
cm9vdFR5cGUgPT0gUm9vdFdpdGhJbmRleCk7CiAgICAgICAgIGF1dG8gaG9yaXpvbnRhbCA9IGhv
cml6b250YWxQYXJhbWV0ZXJzKCk7CiAgICAgICAgIHByZWZlcnJlZFdpZHRoICs9IGhvcml6b250
YWwua2VybkJlZm9yZURlZ3JlZTsKICAgICAgICAgcHJlZmVycmVkV2lkdGggKz0gZ2V0SW5kZXgo
KS5tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgoKTsKQEAgLTE5Niw3ICsyMDIsNyBAQCB2b2lkIFJl
bmRlck1hdGhNTFJvb3Q6OmxheW91dEJsb2NrKGJvb2wgcmVsYXlvdXRDaGlsZHJlbiwgTGF5b3V0
VW5pdCkKICAgICAvLyBOb3RlOiBQZXIgdGhlIE1hdGhNTCBzcGVjaWZpY2F0aW9uLCB0aGUgY2hp
bGRyZW4gb2YgPG1zcXJ0PiBhcmUgd3JhcHBlZCBpbiBhbiBpbmZlcnJlZCA8bXJvdz4sIHdoaWNo
IGlzIHRoZSBkZXNpcmVkIGJhc2UuCiAgICAgTGF5b3V0VW5pdCBiYXNlQXNjZW50LCBiYXNlRGVz
Y2VudDsKICAgICByZWNvbXB1dGVMb2dpY2FsV2lkdGgoKTsKLSAgICBpZiAobV9raW5kID09IFNx
dWFyZVJvb3QpIHsKKyAgICBpZiAobV9yb290VHlwZSA9PSBTcXVhcmVSb290KSB7CiAgICAgICAg
IGJhc2VBc2NlbnQgPSBiYXNlRGVzY2VudDsKICAgICAgICAgUmVuZGVyTWF0aE1MUm93Ojpjb21w
dXRlTGluZVZlcnRpY2FsU3RyZXRjaChiYXNlQXNjZW50LCBiYXNlRGVzY2VudCk7CiAgICAgICAg
IFJlbmRlck1hdGhNTFJvdzo6bGF5b3V0Um93SXRlbXMoYmFzZUFzY2VudCwgYmFzZURlc2NlbnQp
OwpAQCAtMjIzLDE2ICsyMjksMTYgQEAgdm9pZCBSZW5kZXJNYXRoTUxSb290OjpsYXlvdXRCbG9j
ayhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIExheW91dFVuaXQpCiAgICAgTGF5b3V0VW5pdCBhc2Nl
bnQgPSByYWRpY2FsQXNjZW50OwogCiAgICAgLy8gV2Ugc2V0IHRoZSBsb2dpY2FsIHdpZHRoLgot
ICAgIGlmIChtX2tpbmQgPT0gU3F1YXJlUm9vdCkKKyAgICBpZiAobV9yb290VHlwZSA9PSBTcXVh
cmVSb290KQogICAgICAgICBzZXRMb2dpY2FsV2lkdGgobV9yYWRpY2FsT3BlcmF0b3Iud2lkdGgo
KSArIG1fYmFzZVdpZHRoKTsKICAgICBlbHNlIHsKLSAgICAgICAgQVNTRVJUKG1fa2luZCA9PSBS
b290V2l0aEluZGV4KTsKKyAgICAgICAgQVNTRVJUKG1fcm9vdFR5cGUgPT0gUm9vdFdpdGhJbmRl
eCk7CiAgICAgICAgIHNldExvZ2ljYWxXaWR0aChob3Jpem9udGFsLmtlcm5CZWZvcmVEZWdyZWUg
KyBnZXRJbmRleCgpLmxvZ2ljYWxXaWR0aCgpICsgaG9yaXpvbnRhbC5rZXJuQWZ0ZXJEZWdyZWUg
KyBtX3JhZGljYWxPcGVyYXRvci53aWR0aCgpICsgbV9iYXNlV2lkdGgpOwogICAgIH0KIAogICAg
IC8vIEZvciA8bXJvb3Q+LCB3ZSB1cGRhdGUgdGhlIG1ldHJpY3MgdG8gdGFrZSBpbnRvIGFjY291
bnQgdGhlIGluZGV4LgogICAgIExheW91dFVuaXQgaW5kZXhBc2NlbnQsIGluZGV4RGVzY2VudDsK
LSAgICBpZiAobV9raW5kID09IFJvb3RXaXRoSW5kZXgpIHsKKyAgICBpZiAobV9yb290VHlwZSA9
PSBSb290V2l0aEluZGV4KSB7CiAgICAgICAgIGluZGV4QXNjZW50ID0gYXNjZW50Rm9yQ2hpbGQo
Z2V0SW5kZXgoKSk7CiAgICAgICAgIGluZGV4RGVzY2VudCA9IGdldEluZGV4KCkubG9naWNhbEhl
aWdodCgpIC0gaW5kZXhBc2NlbnQ7CiAgICAgICAgIGFzY2VudCA9IHN0ZDo6bWF4PExheW91dFVu
aXQ+KHJhZGljYWxBc2NlbnQsIGluZGV4Qm90dG9tUmFpc2UgKyBpbmRleERlc2NlbnQgKyBpbmRl
eEFzY2VudCAtIGRlc2NlbnQpOwpAQCAtMjQxLDE0ICsyNDcsMTQgQEAgdm9pZCBSZW5kZXJNYXRo
TUxSb290OjpsYXlvdXRCbG9jayhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIExheW91dFVuaXQpCiAg
ICAgLy8gV2Ugc2V0IHRoZSBmaW5hbCBwb3NpdGlvbiBvZiBjaGlsZHJlbi4KICAgICBtX3JhZGlj
YWxPcGVyYXRvclRvcCA9IGFzY2VudCAtIHJhZGljYWxBc2NlbnQgKyB2ZXJ0aWNhbC5leHRyYUFz
Y2VuZGVyOwogICAgIExheW91dFVuaXQgaG9yaXpvbnRhbE9mZnNldCA9IG1fcmFkaWNhbE9wZXJh
dG9yLndpZHRoKCk7Ci0gICAgaWYgKG1fa2luZCA9PSBSb290V2l0aEluZGV4KQorICAgIGlmICht
X3Jvb3RUeXBlID09IFJvb3RXaXRoSW5kZXgpCiAgICAgICAgIGhvcml6b250YWxPZmZzZXQgKz0g
aG9yaXpvbnRhbC5rZXJuQmVmb3JlRGVncmVlICsgZ2V0SW5kZXgoKS5sb2dpY2FsV2lkdGgoKSAr
IGhvcml6b250YWwua2VybkFmdGVyRGVncmVlOwogICAgIExheW91dFBvaW50IGJhc2VMb2NhdGlv
bihtaXJyb3JJZk5lZWRlZChob3Jpem9udGFsT2Zmc2V0LCBtX2Jhc2VXaWR0aCksIGFzY2VudCAt
IGJhc2VBc2NlbnQpOwotICAgIGlmIChtX2tpbmQgPT0gU3F1YXJlUm9vdCkgeworICAgIGlmICht
X3Jvb3RUeXBlID09IFNxdWFyZVJvb3QpIHsKICAgICAgICAgZm9yIChhdXRvKiBjaGlsZCA9IGZp
cnN0Q2hpbGRCb3goKTsgY2hpbGQ7IGNoaWxkID0gY2hpbGQtPm5leHRTaWJsaW5nQm94KCkpCiAg
ICAgICAgICAgICBjaGlsZC0+c2V0TG9jYXRpb24oY2hpbGQtPmxvY2F0aW9uKCkgKyBiYXNlTG9j
YXRpb24pOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIEFTU0VSVChtX2tpbmQgPT0gUm9vdFdpdGhJ
bmRleCk7CisgICAgICAgIEFTU0VSVChtX3Jvb3RUeXBlID09IFJvb3RXaXRoSW5kZXgpOwogICAg
ICAgICBnZXRCYXNlKCkuc2V0TG9jYXRpb24oYmFzZUxvY2F0aW9uKTsKICAgICAgICAgTGF5b3V0
UG9pbnQgaW5kZXhMb2NhdGlvbihtaXJyb3JJZk5lZWRlZChob3Jpem9udGFsLmtlcm5CZWZvcmVE
ZWdyZWUsIGdldEluZGV4KCkpLCBhc2NlbnQgKyBkZXNjZW50IC0gaW5kZXhCb3R0b21SYWlzZSAt
IGluZGV4RGVzY2VudCAtIGluZGV4QXNjZW50KTsKICAgICAgICAgZ2V0SW5kZXgoKS5zZXRMb2Nh
dGlvbihpbmRleExvY2F0aW9uKTsKQEAgLTI3MSw3ICsyNzcsNyBAQCB2b2lkIFJlbmRlck1hdGhN
TFJvb3Q6OnBhaW50KFBhaW50SW5mbyYgaW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zm
c2V0KQogICAgIC8vIFdlIGRyYXcgdGhlIHJhZGljYWwgb3BlcmF0b3IuCiAgICAgTGF5b3V0UG9p
bnQgcmFkaWNhbE9wZXJhdG9yVG9wTGVmdCA9IHBhaW50T2Zmc2V0ICsgbG9jYXRpb24oKTsKICAg
ICBMYXlvdXRVbml0IGhvcml6b250YWxPZmZzZXQgPSAwOwotICAgIGlmIChtX2tpbmQgPT0gUm9v
dFdpdGhJbmRleCkgeworICAgIGlmIChtX3Jvb3RUeXBlID09IFJvb3RXaXRoSW5kZXgpIHsKICAg
ICAgICAgYXV0byBob3Jpem9udGFsID0gaG9yaXpvbnRhbFBhcmFtZXRlcnMoKTsKICAgICAgICAg
aG9yaXpvbnRhbE9mZnNldCA9IGhvcml6b250YWwua2VybkJlZm9yZURlZ3JlZSArIGdldEluZGV4
KCkubG9naWNhbFdpZHRoKCkgKyBob3Jpem9udGFsLmtlcm5BZnRlckRlZ3JlZTsKICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJv
b3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5o
CmluZGV4IDg5ZmIxNjFlZDZjMWViMjhiMGYwYTEyNmM4YzJhMDVlMWMzMTNhNzcuLjdhM2RhZGU5
MGE2NjExMjMxMzExMTE1ZTg1NTZmNjUyNmZkY2Q1YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5oCkBAIC03Myw4ICs3Myw5IEBA
IHByaXZhdGU6CiAgICAgTGF5b3V0VW5pdCBtX2Jhc2VXaWR0aDsKIAogICAgIGVudW0gUm9vdFR5
cGUgeyBTcXVhcmVSb290LCBSb290V2l0aEluZGV4IH07Ci0gICAgUm9vdFR5cGUgbV9raW5kOwot
ICAgIGJvb2wgaXNSZW5kZXJNYXRoTUxTcXVhcmVSb290KCkgY29uc3QgZmluYWwgeyByZXR1cm4g
bV9raW5kID09IFNxdWFyZVJvb3Q7IH0KKyAgICBjb25zdCBSb290VHlwZSBtX3Jvb3RUeXBlOwor
ICAgIHN0YXRpYyBSb290VHlwZSByb290VHlwZU9mKGNvbnN0IE1hdGhNTFJvd0VsZW1lbnQmKTsK
KyAgICBib29sIGlzUmVuZGVyTWF0aE1MU3F1YXJlUm9vdCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IG1fcm9vdFR5cGUgPT0gU3F1YXJlUm9vdDsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRo
TUxTY3JpcHRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0
aE1MU2NyaXB0cy5jcHAKaW5kZXggNTkwNjU4Zjg1OGFjMTYzYTY0YjJjODNlNjkzNzIxMjg2OWQz
ODI4NC4uYmY2NDJkMDMyODMyMjUwM2E3MjkzNDM2NTM0NDY0NjRmMzUwYWNiNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTY3JpcHRzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFNjcmlw
dHMuY3BwCkBAIC0zNywzMyArMzcsMzggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit1c2lu
ZyBuYW1lc3BhY2UgTWF0aE1MTmFtZXM7CisKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChS
ZW5kZXJNYXRoTUxTY3JpcHRzKTsKIAogc3RhdGljIGJvb2wgaXNQcmVzY3JpcHREZWxpbWl0ZXIo
Y29uc3QgUmVuZGVyT2JqZWN0JiByZW5kZXJPYmplY3QpCiB7Ci0gICAgcmV0dXJuIHJlbmRlck9i
amVjdC5ub2RlKCkgJiYgcmVuZGVyT2JqZWN0Lm5vZGUoKS0+aGFzVGFnTmFtZShNYXRoTUxOYW1l
czo6bXByZXNjcmlwdHNUYWcpOworICAgIHJldHVybiByZW5kZXJPYmplY3Qubm9kZSgpICYmIHJl
bmRlck9iamVjdC5ub2RlKCktPmhhc1RhZ05hbWUobXByZXNjcmlwdHNUYWcpOwogfQogCiBSZW5k
ZXJNYXRoTUxTY3JpcHRzOjpSZW5kZXJNYXRoTUxTY3JpcHRzKE1hdGhNTFNjcmlwdHNFbGVtZW50
JiBlbGVtZW50LCBSZW5kZXJTdHlsZSYmIHN0eWxlKQogICAgIDogUmVuZGVyTWF0aE1MQmxvY2so
ZWxlbWVudCwgV1RGTW92ZShzdHlsZSkpCisgICAgLCBtX3NjcmlwdFR5cGUoc2NyaXB0VHlwZU9m
KGVsZW1lbnQpKQogewotICAgIC8vIERldGVybWluZSB3aGF0IGtpbmQgb2Ygc3ViL3N1cCBleHBy
ZXNzaW9uIHdlIGhhdmUgYnkgZWxlbWVudCBuYW1lCi0gICAgaWYgKGVsZW1lbnQuaGFzVGFnTmFt
ZShNYXRoTUxOYW1lczo6bXN1YlRhZykpCi0gICAgICAgIG1fc2NyaXB0VHlwZSA9IFN1YjsKLSAg
ICBlbHNlIGlmIChlbGVtZW50Lmhhc1RhZ05hbWUoTWF0aE1MTmFtZXM6Om1zdXBUYWcpKQotICAg
ICAgICBtX3NjcmlwdFR5cGUgPSBTdXBlcjsKLSAgICBlbHNlIGlmIChlbGVtZW50Lmhhc1RhZ05h
bWUoTWF0aE1MTmFtZXM6Om1zdWJzdXBUYWcpKQotICAgICAgICBtX3NjcmlwdFR5cGUgPSBTdWJT
dXA7Ci0gICAgZWxzZSBpZiAoZWxlbWVudC5oYXNUYWdOYW1lKE1hdGhNTE5hbWVzOjptdW5kZXJU
YWcpKQotICAgICAgICBtX3NjcmlwdFR5cGUgPSBVbmRlcjsKLSAgICBlbHNlIGlmIChlbGVtZW50
Lmhhc1RhZ05hbWUoTWF0aE1MTmFtZXM6Om1vdmVyVGFnKSkKLSAgICAgICAgbV9zY3JpcHRUeXBl
ID0gT3ZlcjsKLSAgICBlbHNlIGlmIChlbGVtZW50Lmhhc1RhZ05hbWUoTWF0aE1MTmFtZXM6Om11
bmRlcm92ZXJUYWcpKQotICAgICAgICBtX3NjcmlwdFR5cGUgPSBVbmRlck92ZXI7Ci0gICAgZWxz
ZSB7Ci0gICAgICAgIEFTU0VSVChlbGVtZW50Lmhhc1RhZ05hbWUoTWF0aE1MTmFtZXM6Om1tdWx0
aXNjcmlwdHNUYWcpKTsKLSAgICAgICAgbV9zY3JpcHRUeXBlID0gTXVsdGlzY3JpcHRzOwotICAg
IH0KK30KKworUmVuZGVyTWF0aE1MU2NyaXB0czo6U2NyaXB0c1R5cGUgUmVuZGVyTWF0aE1MU2Ny
aXB0czo6c2NyaXB0VHlwZU9mKGNvbnN0IE1hdGhNTFNjcmlwdHNFbGVtZW50JiBlbGVtZW50KQor
eworICAgIC8vIFRoZSBraW5kIG9mIHNjcmlwdGVkIGV4cHJlc3Npb24gaXMgZGV0ZXJtaW5lZCBm
cm9tIHRoZSBlbGVtZW50IG5hbWUuCisgICAgaWYgKGVsZW1lbnQuaGFzVGFnTmFtZShtc3ViVGFn
KSkKKyAgICAgICAgcmV0dXJuIFN1YjsKKyAgICBpZiAoZWxlbWVudC5oYXNUYWdOYW1lKG1zdXBU
YWcpKQorICAgICAgICByZXR1cm4gU3VwZXI7CisgICAgaWYgKGVsZW1lbnQuaGFzVGFnTmFtZSht
c3Vic3VwVGFnKSkKKyAgICAgICAgcmV0dXJuIFN1YlN1cDsKKyAgICBpZiAoZWxlbWVudC5oYXNU
YWdOYW1lKG11bmRlclRhZykpCisgICAgICAgIHJldHVybiBVbmRlcjsKKyAgICBpZiAoZWxlbWVu
dC5oYXNUYWdOYW1lKG1vdmVyVGFnKSkKKyAgICAgICAgcmV0dXJuIE92ZXI7CisgICAgaWYgKGVs
ZW1lbnQuaGFzVGFnTmFtZShtdW5kZXJvdmVyVGFnKSkKKyAgICAgICAgcmV0dXJuIFVuZGVyT3Zl
cjsKKyAgICBBU1NFUlQoZWxlbWVudC5oYXNUYWdOYW1lKG1tdWx0aXNjcmlwdHNUYWcpKTsKKyAg
ICByZXR1cm4gTXVsdGlzY3JpcHRzOwogfQogCiBNYXRoTUxTY3JpcHRzRWxlbWVudCYgUmVuZGVy
TWF0aE1MU2NyaXB0czo6ZWxlbWVudCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFNjcmlwdHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MU2NyaXB0cy5oCmluZGV4IGFhNTE4MzM1NzQ1
MTk4NGFjOTFhMWI3ZDQxODBiOGUwMzM0YWY1MzIuLjBiYjg5NjBhNDRhMGVkMzM1NWQ1YmQzZTFm
NTg5MWQ4YTFlMjY4NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRo
bWwvUmVuZGVyTWF0aE1MU2NyaXB0cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9t
YXRobWwvUmVuZGVyTWF0aE1MU2NyaXB0cy5oCkBAIC00OSw5ICs0OSwxMCBAQCBwcm90ZWN0ZWQ6
CiAgICAgdm9pZCBsYXlvdXRCbG9jayhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIExheW91dFVuaXQg
cGFnZUxvZ2ljYWxIZWlnaHQgPSAwKSBvdmVycmlkZTsKIAogICAgIGVudW0gU2NyaXB0c1R5cGUg
eyBTdWIsIFN1cGVyLCBTdWJTdXAsIE11bHRpc2NyaXB0cywgVW5kZXIsIE92ZXIsIFVuZGVyT3Zl
ciB9OwotICAgIFNjcmlwdHNUeXBlIG1fc2NyaXB0VHlwZTsKKyAgICBjb25zdCBTY3JpcHRzVHlw
ZSBtX3NjcmlwdFR5cGU7CiAKIHByaXZhdGU6CisgICAgc3RhdGljIFNjcmlwdHNUeXBlIHNjcmlw
dFR5cGVPZihjb25zdCBNYXRoTUxTY3JpcHRzRWxlbWVudCYpOwogICAgIE1hdGhNTFNjcmlwdHNF
bGVtZW50JiBlbGVtZW50KCkgY29uc3Q7CiAgICAgc3RkOjpvcHRpb25hbDxpbnQ+IGZpcnN0TGlu
ZUJhc2VsaW5lKCkgY29uc3QgZmluYWw7CiAgICAgc3RydWN0IFJlZmVyZW5jZUNoaWxkcmVuIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>