<?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>128116</bug_id>
          
          <creation_ts>2014-02-03 12:43:08 -0800</creation_ts>
          <short_desc>Manage RuleSet and RuleData classes through std::unique_ptr instead of OwnPtr</short_desc>
          <delta_ts>2014-02-04 07:52:39 -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>New Bugs</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>
          
          <blocked>128007</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>975968</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2014-02-03 12:43:08 -0800</bug_when>
    <thetext>Manage RuleSet and RuleData classes through std::unique_ptr instead of OwnPtr</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>975970</commentid>
    <comment_count>1</comment_count>
      <attachid>223010</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2014-02-03 12:44:20 -0800</bug_when>
    <thetext>Created attachment 223010
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>975972</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-03 12:47:03 -0800</bug_when>
    <thetext>Attachment 223010 did not pass style-queue:


ERROR: Source/WebCore/css/RuleSet.h:131:  Should be indented on a separate line, with the colon or comma first on that line.  [whitespace/indent] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976038</commentid>
    <comment_count>3</comment_count>
      <attachid>223010</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-02-03 14:57:07 -0800</bug_when>
    <thetext>Comment on attachment 223010
Patch

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

&gt; Source/WebCore/css/CSSDefaultStyleSheets.cpp:111
&gt; +        defaultStyle = std::make_unique&lt;RuleSet&gt;().release();
&gt; +        defaultPrintStyle = std::make_unique&lt;RuleSet&gt;().release();

I know that Anders likes this, but I think it’s pretty strange to write a plain old “new” this way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976290</commentid>
    <comment_count>4</comment_count>
      <attachid>223010</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2014-02-04 05:20:57 -0800</bug_when>
    <thetext>Comment on attachment 223010
Patch

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

&gt;&gt; Source/WebCore/css/CSSDefaultStyleSheets.cpp:111
&gt;&gt; +        defaultPrintStyle = std::make_unique&lt;RuleSet&gt;().release();
&gt; 
&gt; I know that Anders likes this, but I think it’s pretty strange to write a plain old “new” this way.

The idea behind std::make_unique in general is to hide the use of &apos;new&apos;. std::make_unique&lt;T&gt;().release() doesn&apos;t look pretty or make sense, but I guess ideally the code should be organized in a way where this doesn&apos;t need to be used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976351</commentid>
    <comment_count>5</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2014-02-04 07:50:35 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 223010 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=223010&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/css/CSSDefaultStyleSheets.cpp:111
&gt; &gt;&gt; +        defaultPrintStyle = std::make_unique&lt;RuleSet&gt;().release();
&gt; &gt; 
&gt; &gt; I know that Anders likes this, but I think it’s pretty strange to write a plain old “new” this way.
&gt; 
&gt; The idea behind std::make_unique in general is to hide the use of &apos;new&apos;. std::make_unique&lt;T&gt;().release() doesn&apos;t look pretty or make sense, but I guess ideally the code should be organized in a way where this doesn&apos;t need to be used.

That said, and while I do prefer std::make_unique&lt;T&gt;().release(), I&apos;m willing to use `new` if the style guidelines are agreed to favor that option.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976352</commentid>
    <comment_count>6</comment_count>
      <attachid>223010</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2014-02-04 07:52:33 -0800</bug_when>
    <thetext>Comment on attachment 223010
Patch

Clearing flags on attachment: 223010

Committed r163378: &lt;http://trac.webkit.org/changeset/163378&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976353</commentid>
    <comment_count>7</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2014-02-04 07:52:39 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>223010</attachid>
            <date>2014-02-03 12:44:20 -0800</date>
            <delta_ts>2014-02-04 07:52:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-128116-20140203214418.patch</filename>
            <type>text/plain</type>
            <size>10781</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYzMzE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDFlMGE1MDViY2JjOWJi
ZDlhMDVhZjgwMWVhZGExZjA5ZGJkMzg0ZS4uZmI2N2YyYThhZThjNjM4YzllN2E2OGY4MzFjMjRl
ZDBhYjBhNjJjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE0LTAyLTAzICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICBNYW5hZ2UgUnVsZVNl
dCBhbmQgUnVsZURhdGEgY2xhc3NlcyB0aHJvdWdoIHN0ZDo6dW5pcXVlX3B0ciBpbnN0ZWFkIG9m
IE93blB0cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTI4MTE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
UmVwbGFjZSB1c2VzIG9mIE93blB0ciBmb3IgdGhlIFJ1bGVTZXQgYW5kIFJ1bGVEYXRhIGNsYXNz
ZXMgd2l0aCBzdGQ6OnVuaXF1ZV9wdHIuCisKKyAgICAgICAgKiBjc3MvQ1NTRGVmYXVsdFN0eWxl
U2hlZXRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0RlZmF1bHRTdHlsZVNoZWV0czo6bG9h
ZEZ1bGxEZWZhdWx0U3R5bGUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTRGVmYXVsdFN0eWxlU2hl
ZXRzOjpsb2FkU2ltcGxlRGVmYXVsdFN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU0RlZmF1
bHRTdHlsZVNoZWV0czo6dmlld1NvdXJjZVN0eWxlKToKKyAgICAgICAgKiBjc3MvRG9jdW1lbnRS
dWxlU2V0cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFJ1bGVTZXRzOjppbml0VXNl
clN0eWxlKToKKyAgICAgICAgKFdlYkNvcmU6Om1ha2VSdWxlU2V0KToKKyAgICAgICAgKFdlYkNv
cmU6OkRvY3VtZW50UnVsZVNldHM6OnJlc2V0QXV0aG9yU3R5bGUpOgorICAgICAgICAqIGNzcy9E
b2N1bWVudFJ1bGVTZXRzLmg6CisgICAgICAgICogY3NzL1J1bGVTZXQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UnVsZVNldDo6YWRkVG9SdWxlU2V0KToKKyAgICAgICAgKFdlYkNvcmU6OlJ1bGVT
ZXQ6OmFkZFJlZ2lvblJ1bGUpOgorICAgICAgICAqIGNzcy9SdWxlU2V0Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpSdWxlU2V0OjpSdWxlU2V0U2VsZWN0b3JQYWlyOjpSdWxlU2V0U2VsZWN0b3JQYWly
KToKKwogMjAxNC0wMi0wMyAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CiAKICAg
ICAgICAgQ1RURTogUmVuZGVyU1ZHR3JhZGllbnRTdG9wIGFsd2F5cyBoYXMgYSBTVkdTdG9wRWxl
bWVudC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NEZWZhdWx0U3R5bGVTaGVl
dHMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0RlZmF1bHRTdHlsZVNoZWV0cy5jcHAKaW5k
ZXggZTcwMDI0MzEzNDYwODI1ZDdjMzgxNDM2MGIwNTdiYjJkMDM1ZjY0NS4uNTYyNGJmOWRhN2Rj
NzE5NmM0YzQyNGM0YmJlMWU3YTlmMWI4ZWYxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0RlZmF1bHRTdHlsZVNoZWV0cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0RlZmF1bHRTdHlsZVNoZWV0cy5jcHAKQEAgLTEwNywxNCArMTA3LDE0IEBAIHZvaWQgQ1NTRGVm
YXVsdFN0eWxlU2hlZXRzOjpsb2FkRnVsbERlZmF1bHRTdHlsZSgpCiAgICAgICAgIEFTU0VSVChk
ZWZhdWx0UHJpbnRTdHlsZSA9PSBkZWZhdWx0U3R5bGUpOwogICAgICAgICBkZWxldGUgZGVmYXVs
dFN0eWxlOwogICAgICAgICBzaW1wbGVEZWZhdWx0U3R5bGVTaGVldC0+ZGVyZWYoKTsKLSAgICAg
ICAgZGVmYXVsdFN0eWxlID0gUnVsZVNldDo6Y3JlYXRlKCkubGVha1B0cigpOwotICAgICAgICBk
ZWZhdWx0UHJpbnRTdHlsZSA9IFJ1bGVTZXQ6OmNyZWF0ZSgpLmxlYWtQdHIoKTsKKyAgICAgICAg
ZGVmYXVsdFN0eWxlID0gc3RkOjptYWtlX3VuaXF1ZTxSdWxlU2V0PigpLnJlbGVhc2UoKTsKKyAg
ICAgICAgZGVmYXVsdFByaW50U3R5bGUgPSBzdGQ6Om1ha2VfdW5pcXVlPFJ1bGVTZXQ+KCkucmVs
ZWFzZSgpOwogICAgICAgICBzaW1wbGVEZWZhdWx0U3R5bGVTaGVldCA9IDA7CiAgICAgfSBlbHNl
IHsKICAgICAgICAgQVNTRVJUKCFkZWZhdWx0U3R5bGUpOwotICAgICAgICBkZWZhdWx0U3R5bGUg
PSBSdWxlU2V0OjpjcmVhdGUoKS5sZWFrUHRyKCk7Ci0gICAgICAgIGRlZmF1bHRQcmludFN0eWxl
ID0gUnVsZVNldDo6Y3JlYXRlKCkubGVha1B0cigpOwotICAgICAgICBkZWZhdWx0UXVpcmtzU3R5
bGUgPSBSdWxlU2V0OjpjcmVhdGUoKS5sZWFrUHRyKCk7CisgICAgICAgIGRlZmF1bHRTdHlsZSA9
IHN0ZDo6bWFrZV91bmlxdWU8UnVsZVNldD4oKS5yZWxlYXNlKCk7CisgICAgICAgIGRlZmF1bHRQ
cmludFN0eWxlID0gc3RkOjptYWtlX3VuaXF1ZTxSdWxlU2V0PigpLnJlbGVhc2UoKTsKKyAgICAg
ICAgZGVmYXVsdFF1aXJrc1N0eWxlID0gc3RkOjptYWtlX3VuaXF1ZTxSdWxlU2V0PigpLnJlbGVh
c2UoKTsKICAgICB9CiAKICAgICAvLyBTdHJpY3QtbW9kZSBydWxlcy4KQEAgLTEzNCwxMCArMTM0
LDEwIEBAIHZvaWQgQ1NTRGVmYXVsdFN0eWxlU2hlZXRzOjpsb2FkU2ltcGxlRGVmYXVsdFN0eWxl
KCkKICAgICBBU1NFUlQoIWRlZmF1bHRTdHlsZSk7CiAgICAgQVNTRVJUKCFzaW1wbGVEZWZhdWx0
U3R5bGVTaGVldCk7CiAKLSAgICBkZWZhdWx0U3R5bGUgPSBSdWxlU2V0OjpjcmVhdGUoKS5sZWFr
UHRyKCk7CisgICAgZGVmYXVsdFN0eWxlID0gc3RkOjptYWtlX3VuaXF1ZTxSdWxlU2V0PigpLnJl
bGVhc2UoKTsKICAgICAvLyBUaGVyZSBhcmUgbm8gbWVkaWEtc3BlY2lmaWMgcnVsZXMgaW4gdGhl
IHNpbXBsZSBkZWZhdWx0IHN0eWxlLgogICAgIGRlZmF1bHRQcmludFN0eWxlID0gZGVmYXVsdFN0
eWxlOwotICAgIGRlZmF1bHRRdWlya3NTdHlsZSA9IFJ1bGVTZXQ6OmNyZWF0ZSgpLmxlYWtQdHIo
KTsKKyAgICBkZWZhdWx0UXVpcmtzU3R5bGUgPSBzdGQ6Om1ha2VfdW5pcXVlPFJ1bGVTZXQ+KCku
cmVsZWFzZSgpOwogCiAgICAgc2ltcGxlRGVmYXVsdFN0eWxlU2hlZXQgPSBwYXJzZVVBU2hlZXQo
c2ltcGxlVXNlckFnZW50U3R5bGVTaGVldCwgc3RybGVuKHNpbXBsZVVzZXJBZ2VudFN0eWxlU2hl
ZXQpKTsKICAgICBkZWZhdWx0U3R5bGUtPmFkZFJ1bGVzRnJvbVNoZWV0KHNpbXBsZURlZmF1bHRT
dHlsZVNoZWV0LCBzY3JlZW5FdmFsKCkpOwpAQCAtMTQ5LDcgKzE0OSw3IEBAIFJ1bGVTZXQqIENT
U0RlZmF1bHRTdHlsZVNoZWV0czo6dmlld1NvdXJjZVN0eWxlKCkKIHsKICAgICBpZiAoIWRlZmF1
bHRWaWV3U291cmNlU3R5bGUpIHsKICAgICAgICAgc3RhdGljIFN0eWxlU2hlZXRDb250ZW50cyog
dmlld1NvdXJjZVN0eWxlU2hlZXQgPSBwYXJzZVVBU2hlZXQoc291cmNlVXNlckFnZW50U3R5bGVT
aGVldCwgc2l6ZW9mKHNvdXJjZVVzZXJBZ2VudFN0eWxlU2hlZXQpKTsKLSAgICAgICAgZGVmYXVs
dFZpZXdTb3VyY2VTdHlsZSA9IFJ1bGVTZXQ6OmNyZWF0ZSgpLmxlYWtQdHIoKTsKKyAgICAgICAg
ZGVmYXVsdFZpZXdTb3VyY2VTdHlsZSA9IHN0ZDo6bWFrZV91bmlxdWU8UnVsZVNldD4oKS5yZWxl
YXNlKCk7CiAgICAgICAgIGRlZmF1bHRWaWV3U291cmNlU3R5bGUtPmFkZFJ1bGVzRnJvbVNoZWV0
KHZpZXdTb3VyY2VTdHlsZVNoZWV0LCBzY3JlZW5FdmFsKCkpOwogICAgIH0KICAgICByZXR1cm4g
ZGVmYXVsdFZpZXdTb3VyY2VTdHlsZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9E
b2N1bWVudFJ1bGVTZXRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Eb2N1bWVudFJ1bGVTZXRz
LmNwcAppbmRleCBhM2VkZTA0ODYzOGZjZGY5Mjk3YWY5ZDcxZjAzNDRiMmVmYjk3ZGY0Li40M2Uy
OTlkM2E3NDQ1MWU4MWYyZWU3NjNmOGQyMGNhOTY1Yzg1MThjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0RvY3VtZW50UnVsZVNldHMuY3BwCkBAIC00OCwxMyArNDgsMTMgQEAgRG9jdW1lbnRSdWxlU2V0
czo6fkRvY3VtZW50UnVsZVNldHMoKQogCiB2b2lkIERvY3VtZW50UnVsZVNldHM6OmluaXRVc2Vy
U3R5bGUoRG9jdW1lbnRTdHlsZVNoZWV0Q29sbGVjdGlvbiYgc3R5bGVTaGVldENvbGxlY3Rpb24s
IGNvbnN0IE1lZGlhUXVlcnlFdmFsdWF0b3ImIG1lZGl1bSwgU3R5bGVSZXNvbHZlciYgcmVzb2x2
ZXIpCiB7Ci0gICAgT3duUHRyPFJ1bGVTZXQ+IHRlbXBVc2VyU3R5bGUgPSBSdWxlU2V0OjpjcmVh
dGUoKTsKKyAgICBhdXRvIHRlbXBVc2VyU3R5bGUgPSBzdGQ6Om1ha2VfdW5pcXVlPFJ1bGVTZXQ+
KCk7CiAgICAgaWYgKENTU1N0eWxlU2hlZXQqIHBhZ2VVc2VyU2hlZXQgPSBzdHlsZVNoZWV0Q29s
bGVjdGlvbi5wYWdlVXNlclNoZWV0KCkpCiAgICAgICAgIHRlbXBVc2VyU3R5bGUtPmFkZFJ1bGVz
RnJvbVNoZWV0KCZwYWdlVXNlclNoZWV0LT5jb250ZW50cygpLCBtZWRpdW0sICZyZXNvbHZlcik7
CiAgICAgY29sbGVjdFJ1bGVzRnJvbVVzZXJTdHlsZVNoZWV0cyhzdHlsZVNoZWV0Q29sbGVjdGlv
bi5pbmplY3RlZFVzZXJTdHlsZVNoZWV0cygpLCAqdGVtcFVzZXJTdHlsZSwgbWVkaXVtLCByZXNv
bHZlcik7CiAgICAgY29sbGVjdFJ1bGVzRnJvbVVzZXJTdHlsZVNoZWV0cyhzdHlsZVNoZWV0Q29s
bGVjdGlvbi5kb2N1bWVudFVzZXJTdHlsZVNoZWV0cygpLCAqdGVtcFVzZXJTdHlsZSwgbWVkaXVt
LCByZXNvbHZlcik7CiAgICAgaWYgKHRlbXBVc2VyU3R5bGUtPnJ1bGVDb3VudCgpID4gMCB8fCB0
ZW1wVXNlclN0eWxlLT5wYWdlUnVsZXMoKS5zaXplKCkgPiAwKQotICAgICAgICBtX3VzZXJTdHls
ZSA9IHRlbXBVc2VyU3R5bGUucmVsZWFzZSgpOworICAgICAgICBtX3VzZXJTdHlsZSA9IHN0ZDo6
bW92ZSh0ZW1wVXNlclN0eWxlKTsKIH0KIAogdm9pZCBEb2N1bWVudFJ1bGVTZXRzOjpjb2xsZWN0
UnVsZXNGcm9tVXNlclN0eWxlU2hlZXRzKGNvbnN0IFZlY3RvcjxSZWZQdHI8Q1NTU3R5bGVTaGVl
dD4+JiB1c2VyU2hlZXRzLCBSdWxlU2V0JiB1c2VyU3R5bGUsIGNvbnN0IE1lZGlhUXVlcnlFdmFs
dWF0b3ImIG1lZGl1bSwgU3R5bGVSZXNvbHZlciYgcmVzb2x2ZXIpCkBAIC02NSwyMSArNjUsMjEg
QEAgdm9pZCBEb2N1bWVudFJ1bGVTZXRzOjpjb2xsZWN0UnVsZXNGcm9tVXNlclN0eWxlU2hlZXRz
KGNvbnN0IFZlY3RvcjxSZWZQdHI8Q1NTU3QKICAgICB9CiB9CiAKLXN0YXRpYyBQYXNzT3duUHRy
PFJ1bGVTZXQ+IG1ha2VSdWxlU2V0KGNvbnN0IFZlY3RvcjxSdWxlRmVhdHVyZT4mIHJ1bGVzKQor
c3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxSdWxlU2V0PiBtYWtlUnVsZVNldChjb25zdCBWZWN0b3I8
UnVsZUZlYXR1cmU+JiBydWxlcykKIHsKICAgICBzaXplX3Qgc2l6ZSA9IHJ1bGVzLnNpemUoKTsK
ICAgICBpZiAoIXNpemUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgIE93blB0cjxSdWxl
U2V0PiBydWxlU2V0ID0gUnVsZVNldDo6Y3JlYXRlKCk7CisgICAgYXV0byBydWxlU2V0ID0gc3Rk
OjptYWtlX3VuaXF1ZTxSdWxlU2V0PigpOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6
ZTsgKytpKQogICAgICAgICBydWxlU2V0LT5hZGRSdWxlKHJ1bGVzW2ldLnJ1bGUsIHJ1bGVzW2ld
LnNlbGVjdG9ySW5kZXgsIHJ1bGVzW2ldLmhhc0RvY3VtZW50U2VjdXJpdHlPcmlnaW4gPyBSdWxl
SGFzRG9jdW1lbnRTZWN1cml0eU9yaWdpbiA6IFJ1bGVIYXNOb1NwZWNpYWxTdGF0ZSk7CiAgICAg
cnVsZVNldC0+c2hyaW5rVG9GaXQoKTsKLSAgICByZXR1cm4gcnVsZVNldC5yZWxlYXNlKCk7Cisg
ICAgcmV0dXJuIHJ1bGVTZXQ7CiB9CiAKIHZvaWQgRG9jdW1lbnRSdWxlU2V0czo6cmVzZXRBdXRo
b3JTdHlsZSgpCiB7Ci0gICAgbV9hdXRob3JTdHlsZSA9IFJ1bGVTZXQ6OmNyZWF0ZSgpOworICAg
IG1fYXV0aG9yU3R5bGUgPSBzdGQ6Om1ha2VfdW5pcXVlPFJ1bGVTZXQ+KCk7CiAgICAgbV9hdXRo
b3JTdHlsZS0+ZGlzYWJsZUF1dG9TaHJpbmtUb0ZpdCgpOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0cy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0Rv
Y3VtZW50UnVsZVNldHMuaAppbmRleCAwZWJlYjIwZGRiN2ZhZjJmNjMyOTE2YTc4OWE5Yjk0ZGFm
OWY4ZTk4Li4yODhiOGNhMWMwZWJiZjU0MDNmN2I2Yzg0ZGExYTFlNGVlNWU2OGJiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRG9jdW1lbnRSdWxlU2V0cy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Eb2N1bWVudFJ1bGVTZXRzLmgKQEAgLTI1LDggKzI1LDcgQEAKIAogI2luY2x1
ZGUgIlJ1bGVGZWF0dXJlLmgiCiAjaW5jbHVkZSAiUnVsZVNldC5oIgotCi0jaW5jbHVkZSA8d3Rm
L093blB0ci5oPgorI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAj
aW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCkBAIC01OCwxMSArNTcsMTEgQEAgcHVibGljOgogCiBw
cml2YXRlOgogICAgIHZvaWQgY29sbGVjdFJ1bGVzRnJvbVVzZXJTdHlsZVNoZWV0cyhjb25zdCBW
ZWN0b3I8UmVmUHRyPENTU1N0eWxlU2hlZXQ+PiYsIFJ1bGVTZXQmIHVzZXJTdHlsZSwgY29uc3Qg
TWVkaWFRdWVyeUV2YWx1YXRvciYsIFN0eWxlUmVzb2x2ZXImKTsKLSAgICBPd25QdHI8UnVsZVNl
dD4gbV9hdXRob3JTdHlsZTsKLSAgICBPd25QdHI8UnVsZVNldD4gbV91c2VyU3R5bGU7CisgICAg
c3RkOjp1bmlxdWVfcHRyPFJ1bGVTZXQ+IG1fYXV0aG9yU3R5bGU7CisgICAgc3RkOjp1bmlxdWVf
cHRyPFJ1bGVTZXQ+IG1fdXNlclN0eWxlOwogICAgIFJ1bGVGZWF0dXJlU2V0IG1fZmVhdHVyZXM7
Ci0gICAgT3duUHRyPFJ1bGVTZXQ+IG1fc2libGluZ1J1bGVTZXQ7Ci0gICAgT3duUHRyPFJ1bGVT
ZXQ+IG1fdW5jb21tb25BdHRyaWJ1dGVSdWxlU2V0OworICAgIHN0ZDo6dW5pcXVlX3B0cjxSdWxl
U2V0PiBtX3NpYmxpbmdSdWxlU2V0OworICAgIHN0ZDo6dW5pcXVlX3B0cjxSdWxlU2V0PiBtX3Vu
Y29tbW9uQXR0cmlidXRlUnVsZVNldDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9SdWxlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9SdWxlU2V0LmNwcAppbmRleCAzZTdmOTQzMTE0ZGI0NDMyZDNkODZlNzMyOTc2YTdiZTdk
NTYzNmJkLi44NmJjMjQ3NzJlYTI4YWZlYjI1ZjM2NGJkMGE4NzBhNzA4NTAxNmVhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvUnVsZVNldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL1J1bGVTZXQuY3BwCkBAIC0xNzEsOSArMTcxLDkgQEAgdm9pZCBSdWxlU2V0OjphZGRUb1J1
bGVTZXQoQXRvbWljU3RyaW5nSW1wbCoga2V5LCBBdG9tUnVsZU1hcCYgbWFwLCBjb25zdCBSdWxl
RGEKIHsKICAgICBpZiAoIWtleSkKICAgICAgICAgcmV0dXJuOwotICAgIE93blB0cjxWZWN0b3I8
UnVsZURhdGE+PiYgcnVsZXMgPSBtYXAuYWRkKGtleSwgbnVsbHB0cikuaXRlcmF0b3ItPnZhbHVl
OworICAgIHN0ZDo6dW5pcXVlX3B0cjxWZWN0b3I8UnVsZURhdGE+PiYgcnVsZXMgPSBtYXAuYWRk
KGtleSwgbnVsbHB0cikuaXRlcmF0b3ItPnZhbHVlOwogICAgIGlmICghcnVsZXMpCi0gICAgICAg
IHJ1bGVzID0gYWRvcHRQdHIobmV3IFZlY3RvcjxSdWxlRGF0YT4pOworICAgICAgICBydWxlcyA9
IHN0ZDo6bWFrZV91bmlxdWU8VmVjdG9yPFJ1bGVEYXRhPj4oKTsKICAgICBydWxlcy0+YXBwZW5k
KHJ1bGVEYXRhKTsKIH0KIApAQCAtMjQ4LDcgKzI0OCw3IEBAIHZvaWQgUnVsZVNldDo6YWRkUGFn
ZVJ1bGUoU3R5bGVSdWxlUGFnZSogcnVsZSkKIAogdm9pZCBSdWxlU2V0OjphZGRSZWdpb25SdWxl
KFN0eWxlUnVsZVJlZ2lvbiogcmVnaW9uUnVsZSwgYm9vbCBoYXNEb2N1bWVudFNlY3VyaXR5T3Jp
Z2luKQogewotICAgIE93blB0cjxSdWxlU2V0PiByZWdpb25SdWxlU2V0ID0gUnVsZVNldDo6Y3Jl
YXRlKCk7CisgICAgYXV0byByZWdpb25SdWxlU2V0ID0gc3RkOjptYWtlX3VuaXF1ZTxSdWxlU2V0
PigpOwogICAgIC8vIFRoZSByZWdpb24gcnVsZSBzZXQgc2hvdWxkIHRha2UgaW50byBhY2NvdW50
IHRoZSBwb3NpdGlvbiBpbnNpZGUgdGhlIHBhcmVudCBydWxlIHNldC4KICAgICAvLyBPdGhlcndp
c2UsIHRoZSBydWxlcyBpbnNpZGUgcmVnaW9uIGJsb2NrIG1pZ2h0IGJlIGluY29ycmVjdGx5IHBv
c2l0aW9uZWQgYmVmb3JlIG90aGVyIHNpbWlsYXIgcnVsZXMgZnJvbQogICAgIC8vIHRoZSBzdHls
ZXNoZWV0IHRoYXQgY29udGFpbnMgdGhlIHJlZ2lvbiBibG9jay4KQEAgLTI2Nyw3ICsyNjcsNyBA
QCB2b2lkIFJ1bGVTZXQ6OmFkZFJlZ2lvblJ1bGUoU3R5bGVSdWxlUmVnaW9uKiByZWdpb25SdWxl
LCBib29sIGhhc0RvY3VtZW50U2VjdXJpdAogICAgIC8vIFVwZGF0ZSB0aGUgImdsb2JhbCIgcnVs
ZSBjb3VudCBzbyB0aGF0IHByb3BlciBvcmRlciBpcyBtYWludGFpbmVkCiAgICAgbV9ydWxlQ291
bnQgPSByZWdpb25SdWxlU2V0LT5tX3J1bGVDb3VudDsKIAotICAgIG1fcmVnaW9uU2VsZWN0b3Jz
QW5kUnVsZVNldHMuYXBwZW5kKFJ1bGVTZXRTZWxlY3RvclBhaXIocmVnaW9uUnVsZS0+c2VsZWN0
b3JMaXN0KCkuZmlyc3QoKSwgcmVnaW9uUnVsZVNldC5yZWxlYXNlKCkpKTsKKyAgICBtX3JlZ2lv
blNlbGVjdG9yc0FuZFJ1bGVTZXRzLmFwcGVuZChSdWxlU2V0U2VsZWN0b3JQYWlyKHJlZ2lvblJ1
bGUtPnNlbGVjdG9yTGlzdCgpLmZpcnN0KCksIHN0ZDo6bW92ZShyZWdpb25SdWxlU2V0KSkpOwog
fQogCiB2b2lkIFJ1bGVTZXQ6OmFkZENoaWxkUnVsZXMoY29uc3QgVmVjdG9yPFJlZlB0cjxTdHls
ZVJ1bGVCYXNlPj4mIHJ1bGVzLCBjb25zdCBNZWRpYVF1ZXJ5RXZhbHVhdG9yJiBtZWRpdW0sIFN0
eWxlUmVzb2x2ZXIqIHJlc29sdmVyLCBjb25zdCBDb250YWluZXJOb2RlKiBzY29wZSwgYm9vbCBo
YXNEb2N1bWVudFNlY3VyaXR5T3JpZ2luLCBBZGRSdWxlRmxhZ3MgYWRkUnVsZUZsYWdzKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1J1bGVTZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9SdWxlU2V0LmgKaW5kZXggZjgyYmUyNzczOTkzZWM3ZjJhNDk3MjQyZDE5ZThmYmQxNTI5MGY1
NS4uY2MxMGM3NGQ0YTg0ZWYxMWU4OTg0MjkyYTA2MzczN2UxNzI0YWY3OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL1J1bGVTZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvUnVs
ZVNldC5oCkBAIC0xMjgsMTYgKzEyOCwxNiBAQCBjbGFzcyBSdWxlU2V0IHsKICAgICBXVEZfTUFL
RV9OT05DT1BZQUJMRShSdWxlU2V0KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6
CiAgICAgc3RydWN0IFJ1bGVTZXRTZWxlY3RvclBhaXIgewotICAgICAgICBSdWxlU2V0U2VsZWN0
b3JQYWlyKGNvbnN0IENTU1NlbGVjdG9yKiBzZWxlY3RvciwgUGFzc093blB0cjxSdWxlU2V0PiBy
dWxlU2V0KSA6IHNlbGVjdG9yKHNlbGVjdG9yKSwgcnVsZVNldChydWxlU2V0KSB7IH0KKyAgICAg
ICAgUnVsZVNldFNlbGVjdG9yUGFpcihjb25zdCBDU1NTZWxlY3Rvciogc2VsZWN0b3IsIHN0ZDo6
dW5pcXVlX3B0cjxSdWxlU2V0PiBydWxlU2V0KSA6IHNlbGVjdG9yKHNlbGVjdG9yKSwgcnVsZVNl
dChzdGQ6Om1vdmUocnVsZVNldCkpIHsgfQogICAgICAgICBSdWxlU2V0U2VsZWN0b3JQYWlyKGNv
bnN0IFJ1bGVTZXRTZWxlY3RvclBhaXImIHBhaXIpIDogc2VsZWN0b3IocGFpci5zZWxlY3Rvciks
IHJ1bGVTZXQoY29uc3RfY2FzdDxSdWxlU2V0U2VsZWN0b3JQYWlyKj4oJnBhaXIpLT5ydWxlU2V0
LnJlbGVhc2UoKSkgeyB9CiAKICAgICAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIHNlbGVjdG9yOwot
ICAgICAgICBPd25QdHI8UnVsZVNldD4gcnVsZVNldDsKKyAgICAgICAgc3RkOjp1bmlxdWVfcHRy
PFJ1bGVTZXQ+IHJ1bGVTZXQ7CiAgICAgfTsKIAotICAgIHN0YXRpYyBQYXNzT3duUHRyPFJ1bGVT
ZXQ+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UHRyKG5ldyBSdWxlU2V0KTsgfQorICAgIFJ1bGVT
ZXQoKTsKIAotICAgIHR5cGVkZWYgSGFzaE1hcDxBdG9taWNTdHJpbmdJbXBsKiwgT3duUHRyPFZl
Y3RvcjxSdWxlRGF0YT4+PiBBdG9tUnVsZU1hcDsKKyAgICB0eXBlZGVmIEhhc2hNYXA8QXRvbWlj
U3RyaW5nSW1wbCosIHN0ZDo6dW5pcXVlX3B0cjxWZWN0b3I8UnVsZURhdGE+Pj4gQXRvbVJ1bGVN
YXA7CiAKICAgICB2b2lkIGFkZFJ1bGVzRnJvbVNoZWV0KFN0eWxlU2hlZXRDb250ZW50cyosIGNv
bnN0IE1lZGlhUXVlcnlFdmFsdWF0b3ImLCBTdHlsZVJlc29sdmVyKiA9IDAsIGNvbnN0IENvbnRh
aW5lck5vZGUqID0gMCk7CiAKQEAgLTE3MCw4ICsxNzAsNiBAQCBwcml2YXRlOgogICAgIHZvaWQg
YWRkQ2hpbGRSdWxlcyhjb25zdCBWZWN0b3I8UmVmUHRyPFN0eWxlUnVsZUJhc2U+PiYsIGNvbnN0
IE1lZGlhUXVlcnlFdmFsdWF0b3ImIG1lZGl1bSwgU3R5bGVSZXNvbHZlciosIGNvbnN0IENvbnRh
aW5lck5vZGUqIHNjb3BlLCBib29sIGhhc0RvY3VtZW50U2VjdXJpdHlPcmlnaW4sIEFkZFJ1bGVG
bGFncyk7CiAgICAgYm9vbCBmaW5kQmVzdFJ1bGVTZXRBbmRBZGQoY29uc3QgQ1NTU2VsZWN0b3Iq
LCBSdWxlRGF0YSYpOwogCi0gICAgUnVsZVNldCgpOwotCiAgICAgQXRvbVJ1bGVNYXAgbV9pZFJ1
bGVzOwogICAgIEF0b21SdWxlTWFwIG1fY2xhc3NSdWxlczsKICAgICBBdG9tUnVsZU1hcCBtX3Rh
Z1J1bGVzOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>