<?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>144670</bug_id>
          
          <creation_ts>2015-05-05 23:23:16 -0700</creation_ts>
          <short_desc>Toggling underline on font panel removes strike through</short_desc>
          <delta_ts>2015-05-06 13:28:03 -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>HTML Editing</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>27818</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>enrica</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1092075</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-05-05 23:23:16 -0700</bug_when>
    <thetext>On Mail, toggling underline on font panel removes strike through and toggling strike through removes underline.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1092080</commentid>
    <comment_count>1</comment_count>
      <attachid>252453</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-05-05 23:31:59 -0700</bug_when>
    <thetext>Created attachment 252453
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1092081</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-05-05 23:32:21 -0700</bug_when>
    <thetext>&lt;rdar://problem/3790443&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1092164</commentid>
    <comment_count>3</comment_count>
      <attachid>252453</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-05-06 08:57:42 -0700</bug_when>
    <thetext>Comment on attachment 252453
Fixes the bug

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

&gt; Source/WebKit/mac/WebView/WebHTMLView.mm:5052
&gt; +    auto editingStyle = EditingStyle::create(core(style));

This approach, where we express things with EditingStyle that we can’t express with a CSSStyleDeclaration, is a much cleaner way to add editing operations like the one that makes text larger and smaller that we implemented using a strange CSS style property named &quot;font size delta&quot;. There is a downside with this approach, though, and that is that WebKit’s -[WebView applyStyle:] can’t be used to perform these editing operations and also that CSSStyleDeclaration can’t be used to communicate what’s going on to the editing delegate method webView:shouldApplyStyle:toElementsInDOMRange: either, although I’m not sure exactly how that works.

It’s not great that we have one approach for &quot;font size delta&quot; and a different approach for these new operations. This is something we should come back to and improve at some point, although I am not sure it’s worth the time to do further refinement on this right now.

&gt; Source/WebKit/mac/WebView/WebHTMLView.mm:5059
&gt; +    int strikeThroughA = [[a objectForKey:NSStrikethroughStyleAttributeName] intValue];
&gt; +    int strikeThroughB = [[b objectForKey:NSStrikethroughStyleAttributeName] intValue];
&gt; +    if (strikeThroughA == strikeThroughB) {
&gt; +        bool shouldRemoveStrikeThrough = strikeThroughA == NSUnderlineStyleNone;
&gt; +        editingStyle-&gt;setStrikeThroughChange(shouldRemoveStrikeThrough ? TextDecorationChange::Remove : TextDecorationChange::Add);
&gt; +    }

Cocoa names use a single word for “strikethrough”; our WebKit names use two words “strike through”. It would be nicer to be consistent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1092187</commentid>
    <comment_count>4</comment_count>
      <attachid>252453</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-06 09:43:55 -0700</bug_when>
    <thetext>Comment on attachment 252453
Fixes the bug

Clearing flags on attachment: 252453

Committed r183871: &lt;http://trac.webkit.org/changeset/183871&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1092188</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-06 09:44:01 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1092293</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-05-06 13:28:03 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 252453 [details]
&gt; Fixes the bug
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=252453&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/mac/WebView/WebHTMLView.mm:5052
&gt; &gt; +    auto editingStyle = EditingStyle::create(core(style));
&gt; 
&gt; This approach, where we express things with EditingStyle that we can’t
&gt; express with a CSSStyleDeclaration, is a much cleaner way to add editing
&gt; operations like the one that makes text larger and smaller that we
&gt; implemented using a strange CSS style property named &quot;font size delta&quot;.
&gt; There is a downside with this approach, though, and that is that WebKit’s
&gt; -[WebView applyStyle:] can’t be used to perform these editing operations and
&gt; also that CSSStyleDeclaration can’t be used to communicate what’s going on
&gt; to the editing delegate method
&gt; webView:shouldApplyStyle:toElementsInDOMRange: either, although I’m not sure
&gt; exactly how that works.
&gt; 
&gt; It’s not great that we have one approach for &quot;font size delta&quot; and a
&gt; different approach for these new operations. This is something we should
&gt; come back to and improve at some point, although I am not sure it’s worth
&gt; the time to do further refinement on this right now.

Oh, we already use EditingStyle to deal with font delta. We just haven&apos;t hooked up WebKit layer to set it manually. So right now, WebKit sets -webkit-font-size-delta on CSSStyleDeclaration and then we&apos;ll immeditely parse it into m_fontSizeDelta in EditingStyle&apos;s constructor in WebCore.

It&apos;ll be a nice cleanup to do.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252453</attachid>
            <date>2015-05-05 23:31:59 -0700</date>
            <delta_ts>2015-05-06 09:43:55 -0700</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-144670-20150505233043.patch</filename>
            <type>text/plain</type>
            <size>10891</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4Mzg1NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDE1LTA1LTA1ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFRvZ2dsaW5nIHVuZGVybGluZSBv
biBmb250IHBhbmVsIHJlbW92ZXMgc3RyaWtlIHRocm91Z2gKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDY3MAorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMzc5MDQ0Mz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIGVkaXRpbmcvRWRpdGluZ1N0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRp
bmdTdHlsZTo6RWRpdGluZ1N0eWxlKTogQWRkZWQgYSB2YXJpYW50IHRoYXQgdGFrZXMgQ1NTU3R5
bGVEZWNsYXJhdGlvbi4KKyAgICAgICAgKiBlZGl0aW5nL0VkaXRpbmdTdHlsZS5oOgorICAgICAg
ICAoV2ViQ29yZTo6RWRpdGluZ1N0eWxlOjpjcmVhdGUpOiBEaXR0by4KKyAgICAgICAgKiBlZGl0
aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmFwcGx5U3R5bGVUb1Nl
bGVjdGlvbik6IFRha2VzIFJlZjxFZGl0aW5nU3R5bGU+JiYgaW5zdGVhZCBvZiBSZWZQdHI8RWRp
dGluZ1N0eWxlPiYmLgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6CisgICAgICAgICogZWRp
dGluZy9FZGl0b3JDb21tYW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmFwcGx5Q29tbWFuZFRv
RnJhbWUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmV4ZWN1dGVTdHJpa2V0aHJvdWdoKToK
KyAgICAgICAgKFdlYkNvcmU6OmV4ZWN1dGVVbmRlcmxpbmUpOgorCiAyMDE1LTA1LTA1ICDFvWFu
IERvYmVyxaFlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEFkZCBtaXNzaW5n
IHZ0YWJsZSBvdmVycmlkZSBzcGVjaWZpZXJzIHVuZGVyIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
ZwpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0aW5nU3R5bGUuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdGluZ1N0eWxlLmNwcAkocmV2aXNpb24g
MTgzODU2KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0aW5nU3R5bGUuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zNDgsNiArMzQ4LDE0IEBAIEVkaXRpbmdTdHlsZTo6RWRpdGluZ1N0eWxl
KGNvbnN0IFBvc2l0aW8KICAgICBpbml0KHBvc2l0aW9uLmRlcHJlY2F0ZWROb2RlKCksIHByb3Bl
cnRpZXNUb0luY2x1ZGUpOwogfQogCitFZGl0aW5nU3R5bGU6OkVkaXRpbmdTdHlsZShjb25zdCBD
U1NTdHlsZURlY2xhcmF0aW9uKiBzdHlsZSkKKyAgICA6IEVkaXRpbmdTdHlsZSgpCit7CisgICAg
aWYgKHN0eWxlKQorICAgICAgICBtX211dGFibGVTdHlsZSA9IHN0eWxlLT5jb3B5UHJvcGVydGll
cygpOworICAgIGV4dHJhY3RGb250U2l6ZURlbHRhKCk7Cit9CisKIEVkaXRpbmdTdHlsZTo6RWRp
dGluZ1N0eWxlKGNvbnN0IFN0eWxlUHJvcGVydGllcyogc3R5bGUpCiAgICAgOiBFZGl0aW5nU3R5
bGUoKQogewpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0aW5nU3R5bGUuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRpbmdTdHlsZS5oCShyZXZpc2lv
biAxODM4NTYpCisrKyBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRpbmdTdHlsZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC05NCw2ICs5NCwxMSBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IEVkaXRpbmdTdHlsZShzdHlsZSkpOwogICAgIH0KIAorICAgIHN0YXRpYyBSZWY8
RWRpdGluZ1N0eWxlPiBjcmVhdGUoY29uc3QgQ1NTU3R5bGVEZWNsYXJhdGlvbiogc3R5bGUpCisg
ICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBFZGl0aW5nU3R5bGUoc3R5bGUpKTsK
KyAgICB9CisKICAgICBzdGF0aWMgUmVmPEVkaXRpbmdTdHlsZT4gY3JlYXRlKENTU1Byb3BlcnR5
SUQgcHJvcGVydHlJRCwgY29uc3QgU3RyaW5nJiB2YWx1ZSkKICAgICB7CiAgICAgICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IEVkaXRpbmdTdHlsZShwcm9wZXJ0eUlELCB2YWx1ZSkpOwpAQCAtMTY3
LDYgKzE3Miw3IEBAIHByaXZhdGU6CiAgICAgRWRpdGluZ1N0eWxlKCk7CiAgICAgRWRpdGluZ1N0
eWxlKE5vZGUqLCBQcm9wZXJ0aWVzVG9JbmNsdWRlKTsKICAgICBFZGl0aW5nU3R5bGUoY29uc3Qg
UG9zaXRpb24mLCBQcm9wZXJ0aWVzVG9JbmNsdWRlKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBleHBs
aWNpdCBFZGl0aW5nU3R5bGUoY29uc3QgQ1NTU3R5bGVEZWNsYXJhdGlvbiopOwogICAgIGV4cGxp
Y2l0IEVkaXRpbmdTdHlsZShjb25zdCBTdHlsZVByb3BlcnRpZXMqKTsKICAgICBFZGl0aW5nU3R5
bGUoQ1NTUHJvcGVydHlJRCwgY29uc3QgU3RyaW5nJiB2YWx1ZSk7CiAgICAgRWRpdGluZ1N0eWxl
KENTU1Byb3BlcnR5SUQsIENTU1ZhbHVlSUQpOwpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9FZGl0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9y
LmNwcAkocmV2aXNpb24gMTgzODU2KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NDEsOSArOTQxLDkgQEAgdm9pZCBFZGl0b3I6OmFwcGx5
U3R5bGVUb1NlbGVjdGlvbihTdHlsZQogICAgIGFwcGx5U3R5bGUoc3R5bGUsIGVkaXRpbmdBY3Rp
b24pOwogfQogCi12b2lkIEVkaXRvcjo6YXBwbHlTdHlsZVRvU2VsZWN0aW9uKFJlZlB0cjxFZGl0
aW5nU3R5bGU+JiYgc3R5bGUsIEVkaXRBY3Rpb24gZWRpdGluZ0FjdGlvbikKK3ZvaWQgRWRpdG9y
OjphcHBseVN0eWxlVG9TZWxlY3Rpb24oUmVmPEVkaXRpbmdTdHlsZT4mJiBzdHlsZSwgRWRpdEFj
dGlvbiBlZGl0aW5nQWN0aW9uKQogewotICAgIGlmICghc3R5bGUgfHwgc3R5bGUtPmlzRW1wdHko
KSB8fCAhY2FuRWRpdFJpY2hseSgpKQorICAgIGlmIChzdHlsZS0+aXNFbXB0eSgpIHx8ICFjYW5F
ZGl0UmljaGx5KCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIEZJWE1FOiBUaGlzIGlzIHdy
b25nIGZvciB0ZXh0IGRlY29yYXRpb25zIHNpbmNlIG1fbXV0YWJsZVN0eWxlIGlzIGVtcHR5LgpJ
bmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCShyZXZpc2lvbiAxODM4NTYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xODYsNyArMTg2LDcg
QEAgcHVibGljOgogICAgIHZvaWQgYXBwbHlTdHlsZShSZWZQdHI8RWRpdGluZ1N0eWxlPiYmLCBF
ZGl0QWN0aW9uKTsKICAgICB2b2lkIGFwcGx5UGFyYWdyYXBoU3R5bGUoU3R5bGVQcm9wZXJ0aWVz
KiwgRWRpdEFjdGlvbiA9IEVkaXRBY3Rpb25VbnNwZWNpZmllZCk7CiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBhcHBseVN0eWxlVG9TZWxlY3Rpb24oU3R5bGVQcm9wZXJ0aWVzKiwgRWRpdEFjdGlv
bik7Ci0gICAgdm9pZCBhcHBseVN0eWxlVG9TZWxlY3Rpb24oUmVmUHRyPEVkaXRpbmdTdHlsZT4m
JiwgRWRpdEFjdGlvbik7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhcHBseVN0eWxlVG9TZWxl
Y3Rpb24oUmVmPEVkaXRpbmdTdHlsZT4mJiwgRWRpdEFjdGlvbik7CiAgICAgdm9pZCBhcHBseVBh
cmFncmFwaFN0eWxlVG9TZWxlY3Rpb24oU3R5bGVQcm9wZXJ0aWVzKiwgRWRpdEFjdGlvbik7CiAK
ICAgICB2b2lkIGFwcGxpZWRFZGl0aW5nKFBhc3NSZWZQdHI8Q29tcG9zaXRlRWRpdENvbW1hbmQ+
KTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yQ29tbWFuZC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3JDb21tYW5kLmNwcAkocmV2aXNp
b24gMTgzODU2KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3JDb21tYW5kLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtOTgsNyArOTgsNyBAQCBzdGF0aWMgRnJhbWUqIHRhcmdldEZyYW1l
KEZyYW1lJiBmcmFtZSwgCiAgICAgcmV0dXJuIG5vZGUtPmRvY3VtZW50KCkuZnJhbWUoKTsKIH0K
IAotc3RhdGljIGJvb2wgYXBwbHlDb21tYW5kVG9GcmFtZShGcmFtZSYgZnJhbWUsIEVkaXRvckNv
bW1hbmRTb3VyY2Ugc291cmNlLCBFZGl0QWN0aW9uIGFjdGlvbiwgUmVmUHRyPEVkaXRpbmdTdHls
ZT4mJiBzdHlsZSkKK3N0YXRpYyBib29sIGFwcGx5Q29tbWFuZFRvRnJhbWUoRnJhbWUmIGZyYW1l
LCBFZGl0b3JDb21tYW5kU291cmNlIHNvdXJjZSwgRWRpdEFjdGlvbiBhY3Rpb24sIFJlZjxFZGl0
aW5nU3R5bGU+JiYgc3R5bGUpCiB7CiAgICAgLy8gRklYTUU6IFdlIGRvbid0IGNhbGwgc2hvdWxk
QXBwbHlTdHlsZSB3aGVuIHRoZSBzb3VyY2UgaXMgRE9NOyBpcyB0aGVyZSBhIGdvb2QgcmVhc29u
IGZvciB0aGF0PwogICAgIHN3aXRjaCAoc291cmNlKSB7CkBAIC0xMDM0LDcgKzEwMzQsNyBAQCBz
dGF0aWMgVGV4dERlY29yYXRpb25DaGFuZ2UgdGV4dERlY29yYXRpCiAKIHN0YXRpYyBib29sIGV4
ZWN1dGVTdHJpa2V0aHJvdWdoKEZyYW1lJiBmcmFtZSwgRXZlbnQqLCBFZGl0b3JDb21tYW5kU291
cmNlIHNvdXJjZSwgY29uc3QgU3RyaW5nJikKIHsKLSAgICBSZWZQdHI8RWRpdGluZ1N0eWxlPiBz
dHlsZSA9IEVkaXRpbmdTdHlsZTo6Y3JlYXRlKCk7CisgICAgUmVmPEVkaXRpbmdTdHlsZT4gc3R5
bGUgPSBFZGl0aW5nU3R5bGU6OmNyZWF0ZSgpOwogICAgIHN0eWxlLT5zZXRTdHJpa2VUaHJvdWdo
Q2hhbmdlKHRleHREZWNvcmF0aW9uQ2hhbmdlRm9yVG9nZ2xpbmcoZnJhbWUuZWRpdG9yKCksIENT
U1Byb3BlcnR5V2Via2l0VGV4dERlY29yYXRpb25zSW5FZmZlY3QsICJsaW5lLXRocm91Z2giKSk7
CiAgICAgLy8gRklYTUU6IE5lZWRzIGEgbmV3IEVkaXRBY3Rpb24hCiAgICAgcmV0dXJuIGFwcGx5
Q29tbWFuZFRvRnJhbWUoZnJhbWUsIHNvdXJjZSwgRWRpdEFjdGlvblVuZGVybGluZSwgV1RGOjpt
b3ZlKHN0eWxlKSk7CkBAIC0xMTAxLDcgKzExMDEsNyBAQCBzdGF0aWMgYm9vbCBleGVjdXRlVHJh
bnNwb3NlKEZyYW1lJiBmcmFtCiAKIHN0YXRpYyBib29sIGV4ZWN1dGVVbmRlcmxpbmUoRnJhbWUm
IGZyYW1lLCBFdmVudCosIEVkaXRvckNvbW1hbmRTb3VyY2Ugc291cmNlLCBjb25zdCBTdHJpbmcm
KQogewotICAgIFJlZlB0cjxFZGl0aW5nU3R5bGU+IHN0eWxlID0gRWRpdGluZ1N0eWxlOjpjcmVh
dGUoKTsKKyAgICBSZWY8RWRpdGluZ1N0eWxlPiBzdHlsZSA9IEVkaXRpbmdTdHlsZTo6Y3JlYXRl
KCk7CiAgICAgVGV4dERlY29yYXRpb25DaGFuZ2UgY2hhbmdlID0gdGV4dERlY29yYXRpb25DaGFu
Z2VGb3JUb2dnbGluZyhmcmFtZS5lZGl0b3IoKSwgQ1NTUHJvcGVydHlXZWJraXRUZXh0RGVjb3Jh
dGlvbnNJbkVmZmVjdCwgInVuZGVybGluZSIpOwogICAgIHN0eWxlLT5zZXRVbmRlcmxpbmVDaGFu
Z2UoY2hhbmdlKTsKICAgICByZXR1cm4gYXBwbHlDb21tYW5kVG9GcmFtZShmcmFtZSwgc291cmNl
LCBFZGl0QWN0aW9uVW5kZXJsaW5lLCBXVEY6Om1vdmUoc3R5bGUpKTsKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cJKHJldmlzaW9uIDE4Mzg1NykKKysrIFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE1LTA1LTA1ICBSeW9zdWtlIE5pd2Eg
IDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFRvZ2dsaW5nIHVuZGVybGluZSBvbiBmb250
IHBhbmVsIHJlbW92ZXMgc3RyaWtlIHRocm91Z2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDY3MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzc5
MDQ0Mz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBV
c2Ugc2V0U3RyaWtlVGhyb3VnaENoYW5nZSBhbmQgc2V0VW5kZXJsaW5lQ2hhbmdlIGFkZGVkIGlu
IHIxODM3NzAgdG8gdG9nZ2xlIHVuZGVybGluZSBhbmQgc3RyaWtlIHRocm91Z2guCisKKyAgICAg
ICAgKiBXZWJWaWV3L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBfYXBw
bHlFZGl0aW5nU3R5bGVUb1NlbGVjdGlvbjp3aXRoVW5kb0FjdGlvbjpdKToKKyAgICAgICAgKC1b
V2ViSFRNTFZpZXcgX3N0eWxlRm9yQXR0cmlidXRlQ2hhbmdlOl0pOgorICAgICAgICAoLVtXZWJI
VE1MVmlldyBjaGFuZ2VBdHRyaWJ1dGVzOl0pOgorCiAyMDE1LTA1LTA0ICBSeW9zdWtlIE5pd2Eg
IDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIFRvZ2dsaW5nIHVuZGVybGluZSBvciBzdHJp
a2UgdGhyb3VnaCBhZmZlY3RzIGVhY2ggb3RoZXIKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL1dl
YlZpZXcvV2ViSFRNTFZpZXcubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJIVE1MVmlldy5tbQkocmV2aXNpb24gMTgzODU2KQorKysgU291cmNlL1dlYktpdC9t
YWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDc5NSw2ICs0Nzk1
LDEyIEBAIC0gKHZvaWQpX2FwcGx5U3R5bGVUb1NlbGVjdGlvbjooRE9NQ1NTU3QKICAgICB9CiB9
CiAKKy0gKHZvaWQpX2FwcGx5RWRpdGluZ1N0eWxlVG9TZWxlY3Rpb246KFJlZjxFZGl0aW5nU3R5
bGU+JiYpZWRpdGluZ1N0eWxlIHdpdGhVbmRvQWN0aW9uOihFZGl0QWN0aW9uKXVuZG9BY3Rpb24K
K3sKKyAgICBpZiAoRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUoW3NlbGYgX2ZyYW1lXSkpCisgICAg
ICAgIGNvcmVGcmFtZS0+ZWRpdG9yKCkuYXBwbHlTdHlsZVRvU2VsZWN0aW9uKFdURjo6bW92ZShl
ZGl0aW5nU3R5bGUpLCB1bmRvQWN0aW9uKTsKK30KKwogI2lmICFQTEFURk9STShJT1MpCiAtIChC
T09MKV9oYW5kbGVTdHlsZUtleUVxdWl2YWxlbnQ6KE5TRXZlbnQgKilldmVudAogewpAQCAtNDk4
NSw3ICs0OTkxLDcgQEAgLSAodm9pZCljaGFuZ2VGb250OihpZClzZW5kZXIKICAgICBbc2VsZiBf
YXBwbHlTdHlsZVRvU2VsZWN0aW9uOltzZWxmIF9zdHlsZUZyb21Gb250TWFuYWdlck9wZXJhdGlv
bl0gd2l0aFVuZG9BY3Rpb246RWRpdEFjdGlvblNldEZvbnRdOwogfQogCi0tIChET01DU1NTdHls
ZURlY2xhcmF0aW9uICopX3N0eWxlRm9yQXR0cmlidXRlQ2hhbmdlOihpZClzZW5kZXIKKy0gKFJl
ZjxFZGl0aW5nU3R5bGU+KV9zdHlsZUZvckF0dHJpYnV0ZUNoYW5nZTooaWQpc2VuZGVyCiB7CiAg
ICAgRE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiAqc3R5bGUgPSBbc2VsZiBfZW1wdHlTdHlsZV07CiAK
QEAgLTUwMzIsMTkgKzUwMzgsOCBAQCAtIChET01DU1NTdHlsZURlY2xhcmF0aW9uICopX3N0eWxl
Rm9yQXR0CiAgICAgZWxzZSBpZiAoW2Igb2JqZWN0Rm9yS2V5Ok5TU2hhZG93QXR0cmlidXRlTmFt
ZV0gPT0gbmlsKQogICAgICAgICBbc3R5bGUgc2V0VGV4dFNoYWRvdzpAIm5vbmUiXTsKIAotICAg
IGludCBzYSA9IFtbYSBvYmplY3RGb3JLZXk6TlNTdHJpa2V0aHJvdWdoU3R5bGVBdHRyaWJ1dGVO
YW1lXSBpbnRWYWx1ZV07Ci0gICAgaW50IHNiID0gW1tiIG9iamVjdEZvcktleTpOU1N0cmlrZXRo
cm91Z2hTdHlsZUF0dHJpYnV0ZU5hbWVdIGludFZhbHVlXTsKLSAgICBpZiAoc2EgPT0gc2IpIHsK
LSAgICAgICAgaWYgKHNhID09IE5TVW5kZXJsaW5lU3R5bGVOb25lKQotICAgICAgICAgICAgW3N0
eWxlIHNldFByb3BlcnR5OkAiLXdlYmtpdC10ZXh0LWRlY29yYXRpb25zLWluLWVmZmVjdCIgdmFs
dWU6QCJub25lIiBwcmlvcml0eTpAIiJdOwotICAgICAgICAgICAgLy8gd2UgcmVhbGx5IG1lYW4g
Im5vIGxpbmUtdGhyb3VnaCIgcmF0aGVyIHRoYW4gIm5vbmUiCi0gICAgICAgIGVsc2UKLSAgICAg
ICAgICAgIFtzdHlsZSBzZXRQcm9wZXJ0eTpAIi13ZWJraXQtdGV4dC1kZWNvcmF0aW9ucy1pbi1l
ZmZlY3QiIHZhbHVlOkAibGluZS10aHJvdWdoIiBwcmlvcml0eTpAIiJdOwotICAgICAgICAgICAg
Ly8gd2UgcmVhbGx5IG1lYW4gImFkZCBsaW5lLXRocm91Z2giIHJhdGhlciB0aGFuICJsaW5lLXRo
cm91Z2giCi0gICAgfQotCi0gICAgc2EgPSBbW2Egb2JqZWN0Rm9yS2V5Ok5TU3VwZXJzY3JpcHRB
dHRyaWJ1dGVOYW1lXSBpbnRWYWx1ZV07Ci0gICAgc2IgPSBbW2Igb2JqZWN0Rm9yS2V5Ok5TU3Vw
ZXJzY3JpcHRBdHRyaWJ1dGVOYW1lXSBpbnRWYWx1ZV07CisgICAgaW50IHNhID0gW1thIG9iamVj
dEZvcktleTpOU1N1cGVyc2NyaXB0QXR0cmlidXRlTmFtZV0gaW50VmFsdWVdOworICAgIGludCBz
YiA9IFtbYiBvYmplY3RGb3JLZXk6TlNTdXBlcnNjcmlwdEF0dHJpYnV0ZU5hbWVdIGludFZhbHVl
XTsKICAgICBpZiAoc2EgPT0gc2IpIHsKICAgICAgICAgaWYgKHNhID4gMCkKICAgICAgICAgICAg
IFtzdHlsZSBzZXRWZXJ0aWNhbEFsaWduOkAic3VwZXIiXTsKQEAgLTUwNTMsMjYgKzUwNDgsMzEg
QEAgLSAoRE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiAqKV9zdHlsZUZvckF0dAogICAgICAgICBlbHNl
CiAgICAgICAgICAgICBbc3R5bGUgc2V0VmVydGljYWxBbGlnbjpAImJhc2VsaW5lIl07CiAgICAg
fQorICAgIAorICAgIGF1dG8gZWRpdGluZ1N0eWxlID0gRWRpdGluZ1N0eWxlOjpjcmVhdGUoY29y
ZShzdHlsZSkpOworCisgICAgaW50IHN0cmlrZVRocm91Z2hBID0gW1thIG9iamVjdEZvcktleTpO
U1N0cmlrZXRocm91Z2hTdHlsZUF0dHJpYnV0ZU5hbWVdIGludFZhbHVlXTsKKyAgICBpbnQgc3Ry
aWtlVGhyb3VnaEIgPSBbW2Igb2JqZWN0Rm9yS2V5Ok5TU3RyaWtldGhyb3VnaFN0eWxlQXR0cmli
dXRlTmFtZV0gaW50VmFsdWVdOworICAgIGlmIChzdHJpa2VUaHJvdWdoQSA9PSBzdHJpa2VUaHJv
dWdoQikgeworICAgICAgICBib29sIHNob3VsZFJlbW92ZVN0cmlrZVRocm91Z2ggPSBzdHJpa2VU
aHJvdWdoQSA9PSBOU1VuZGVybGluZVN0eWxlTm9uZTsKKyAgICAgICAgZWRpdGluZ1N0eWxlLT5z
ZXRTdHJpa2VUaHJvdWdoQ2hhbmdlKHNob3VsZFJlbW92ZVN0cmlrZVRocm91Z2ggPyBUZXh0RGVj
b3JhdGlvbkNoYW5nZTo6UmVtb3ZlIDogVGV4dERlY29yYXRpb25DaGFuZ2U6OkFkZCk7CisgICAg
fQogCiAgICAgaW50IHVhID0gW1thIG9iamVjdEZvcktleTpOU1VuZGVybGluZVN0eWxlQXR0cmli
dXRlTmFtZV0gaW50VmFsdWVdOwogICAgIGludCB1YiA9IFtbYiBvYmplY3RGb3JLZXk6TlNVbmRl
cmxpbmVTdHlsZUF0dHJpYnV0ZU5hbWVdIGludFZhbHVlXTsKICAgICBpZiAodWEgPT0gdWIpIHsK
LSAgICAgICAgaWYgKHVhID09IE5TVW5kZXJsaW5lU3R5bGVOb25lKQotICAgICAgICAgICAgW3N0
eWxlIHNldFByb3BlcnR5OkAiLXdlYmtpdC10ZXh0LWRlY29yYXRpb25zLWluLWVmZmVjdCIgdmFs
dWU6QCJub25lIiBwcmlvcml0eTpAIiJdOwotICAgICAgICAgICAgLy8gd2UgcmVhbGx5IG1lYW4g
Im5vIHVuZGVybGluZSIgcmF0aGVyIHRoYW4gIm5vbmUiCi0gICAgICAgIGVsc2UKLSAgICAgICAg
ICAgIFtzdHlsZSBzZXRQcm9wZXJ0eTpAIi13ZWJraXQtdGV4dC1kZWNvcmF0aW9ucy1pbi1lZmZl
Y3QiIHZhbHVlOkAidW5kZXJsaW5lIiBwcmlvcml0eTpAIiJdOwotICAgICAgICAgICAgLy8gd2Ug
cmVhbGx5IG1lYW4gImFkZCB1bmRlcmxpbmUiIHJhdGhlciB0aGFuICJ1bmRlcmxpbmUiCisgICAg
ICAgIGJvb2wgc2hvdWxkUmVtb3ZlVW5kZXJsaW5lID0gdWEgPT0gTlNVbmRlcmxpbmVTdHlsZU5v
bmU7CisgICAgICAgIGVkaXRpbmdTdHlsZS0+c2V0VW5kZXJsaW5lQ2hhbmdlKHNob3VsZFJlbW92
ZVVuZGVybGluZSA/IFRleHREZWNvcmF0aW9uQ2hhbmdlOjpSZW1vdmUgOiBUZXh0RGVjb3JhdGlv
bkNoYW5nZTo6QWRkKTsKICAgICB9CiAKLSAgICByZXR1cm4gc3R5bGU7CisgICAgcmV0dXJuIGVk
aXRpbmdTdHlsZTsKIH0KIAogLSAodm9pZCljaGFuZ2VBdHRyaWJ1dGVzOihpZClzZW5kZXIKIHsK
ICAgICBDT01NQU5EX1BST0xPR1VFCiAKLSAgICBbc2VsZiBfYXBwbHlTdHlsZVRvU2VsZWN0aW9u
OltzZWxmIF9zdHlsZUZvckF0dHJpYnV0ZUNoYW5nZTpzZW5kZXJdIHdpdGhVbmRvQWN0aW9uOkVk
aXRBY3Rpb25DaGFuZ2VBdHRyaWJ1dGVzXTsKKyAgICBbc2VsZiBfYXBwbHlFZGl0aW5nU3R5bGVU
b1NlbGVjdGlvbjpbc2VsZiBfc3R5bGVGb3JBdHRyaWJ1dGVDaGFuZ2U6c2VuZGVyXSB3aXRoVW5k
b0FjdGlvbjpFZGl0QWN0aW9uQ2hhbmdlQXR0cmlidXRlc107CiB9CiAKIC0gKERPTUNTU1N0eWxl
RGVjbGFyYXRpb24gKilfc3R5bGVGcm9tQ29sb3JQYW5lbFdpdGhTZWxlY3RvcjooU0VMKXNlbGVj
dG9yCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>