<?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>56969</bug_id>
          
          <creation_ts>2011-03-23 15:34:33 -0700</creation_ts>
          <short_desc>Move media controls subtree creation into one method.</short_desc>
          <delta_ts>2011-03-24 09:58:25 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>53020</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dimitri Glazkov (Google)">dglazkov</reporter>
          <assigned_to name="Dimitri Glazkov (Google)">dglazkov</assigned_to>
          <cc>darin</cc>
    
    <cc>eric.carlson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>372497</commentid>
    <comment_count>0</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-23 15:34:33 -0700</bug_when>
    <thetext>Move media controls subtree creation into one method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372500</commentid>
    <comment_count>1</comment_count>
      <attachid>86711</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-23 15:37:57 -0700</bug_when>
    <thetext>Created attachment 86711
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372518</commentid>
    <comment_count>2</comment_count>
      <attachid>86711</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-23 16:18:32 -0700</bug_when>
    <thetext>Comment on attachment 86711
Patch

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

&gt; Source/WebCore/rendering/MediaControlElements.cpp:800
&gt; +    setAttribute(precisionAttr, &quot;float&quot;);

It’s not a great idea to call functional like this inside the constructor where the object still hasn’t been adopted by its first owner. It can lead to RefCounted assertions if anything ref/derefs. I took these out of the class intentionally a while back, and you are undoing that.

The work should be either in a create function or at the call site rather than in the constructor.

&gt; Source/WebCore/rendering/MediaControlElements.cpp:864
&gt; +    setAttribute(precisionAttr, &quot;float&quot;);
&gt; +    setAttribute(maxAttr, &quot;1&quot;);
&gt; +    setAttribute(valueAttr, String::number(mediaElement-&gt;volume()));

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372524</commentid>
    <comment_count>3</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-23 16:23:33 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 86711 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=86711&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/MediaControlElements.cpp:800
&gt; &gt; +    setAttribute(precisionAttr, &quot;float&quot;);
&gt; 
&gt; It’s not a great idea to call functional like this inside the constructor where the object still hasn’t been adopted by its first owner. It can lead to RefCounted assertions if anything ref/derefs. I took these out of the class intentionally a while back, and you are undoing that.
&gt; 
&gt; The work should be either in a create function or at the call site rather than in the constructor.
&gt; 
&gt; &gt; Source/WebCore/rendering/MediaControlElements.cpp:864
&gt; &gt; +    setAttribute(precisionAttr, &quot;float&quot;);
&gt; &gt; +    setAttribute(maxAttr, &quot;1&quot;);
&gt; &gt; +    setAttribute(valueAttr, String::number(mediaElement-&gt;volume()));
&gt; 
&gt; Ditto.

Sure, I&apos;ll move these to create func.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372864</commentid>
    <comment_count>4</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-24 09:58:25 -0700</bug_when>
    <thetext>Committed r81872: &lt;http://trac.webkit.org/changeset/81872&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86711</attachid>
            <date>2011-03-23 15:37:57 -0700</date>
            <delta_ts>2011-03-23 16:18:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56969-20110323153756.patch</filename>
            <type>text/plain</type>
            <size>13576</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODE3NzUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2ZTIxNzk0Y2U3MzYwMjU2
Mzg0MDI2MzliYTQ1OWRmMGNlYmYwNjgxLi4zN2M1ZDEyMDU2ZDhhNGM2NzJkNjYyZDc1MGEwOTdh
NTUzZTg5ZDY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDMtMjMgIERpbWl0
cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNb3ZlIG1lZGlhIGNvbnRyb2xzIHN1YnRyZWUg
Y3JlYXRpb24gaW50byBvbmUgbWV0aG9kLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NTY5NjkKKworICAgICAgICBNZWNoYW5pY2FsIG1vdmUsIG5vIGNo
YW5nZXMgaW4gZnVuY3Rpb25hbGl0eS4KKworICAgICAgICBUaGUgcHVycG9zZSBvZiB0aGlzIHBh
dGNoIGlzIHRvIGFsaWduIGV4aXN0aW5nIGNvZGUgY2xvc2VyIHdpdGggaXRzCisgICAgICAgIGZ1
dHVyZSB2ZXJzaW9uLCB3aGVuIE1lZGlhQ29udHJvbHMgaXMgYW4gZWxlbWVudCB3aG9zZSB0cmVl
IGlzIGNyZWF0ZWQKKyAgICAgICAgYXQgdGhlIGluc3RhbnRpYXRpb24uCisKKyAgICAgICAgKiBo
dG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29u
dHJvbHM6OmNyZWF0ZSk6IEFkZGVkLCBjb25zb2xpZGF0aW5nIGFsbCBzdWJ0cmVlIGdlbmVyYXRp
b24gbG9naWMgaW50byBvbmUgcGxhY2UuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xz
Ojp1cGRhdGUpOiBSZXBsYWNlZCBtZXRob2RzIHdpdGggb25lIGNhbGwuCisgICAgICAgICogaHRt
bC9zaGFkb3cvTWVkaWFDb250cm9scy5oOiBVcGRhdGVkIGRlY2xzLgorICAgICAgICAqIHJlbmRl
cmluZy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNv
bnRyb2xUaW1lbGluZUVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudCk6IE1vdmVk
IHNldHRpbmcgb2YgYXR0cmlidXRlcyB0bworICAgICAgICBlbGVtZW50IGNvbnN0cnVjdG9ycy4K
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFZvbHVtZVNsaWRlckVsZW1lbnQ6Ok1lZGlh
Q29udHJvbFZvbHVtZVNsaWRlckVsZW1lbnQpOiBEaXR0by4KKwogMjAxMS0wMy0yMyAgQXBhcm5h
IE5hbmR5YWwgIDxhcGFybmEubmFuZEB3aXByby5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
QW5kcmVhcyBLbGluZy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01l
ZGlhQ29udHJvbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9s
cy5jcHAKaW5kZXggMDhjNzliOGFjMWFiMzUzZTFjZGE3MDMzOTQ1ODIzYjRhMjMzNzA5MC4uYTkz
ZmEyODIyOGQ2MzE4NzdiYjI4MDU5NGI5ZGE5MzkxMzk5ZDY5NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5jcHAKQEAgLTYwLDYgKzYwLDg2IEBAIE1lZGlh
Q29udHJvbHM6Ok1lZGlhQ29udHJvbHMoSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KQog
ewogfQogCisvLyBGSVhNRTogVGhpcyB3aWxsIHR1cm4gaW50byB0aGUgc3RhbmRhcmQgZWxlbWVu
dCBmYWN0b3J5IG1ldGhvZCBvbmNlIHNoYWRvdyBET00gY29udmVyc2lvbiBpcyBjb21wbGV0ZS4K
Ky8vIChzZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzMDIwKQor
UGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xTaGFkb3dSb290RWxlbWVudD4gTWVkaWFDb250cm9sczo6
Y3JlYXRlKEhUTUxNZWRpYUVsZW1lbnQqIG1lZGlhRWxlbWVudCkKK3sKKyAgICBBU1NFUlQoIW1f
cGFuZWwpOworICAgIEFTU0VSVCghbV9tdXRlQnV0dG9uKTsKKyAgICBBU1NFUlQoIW1fcGxheUJ1
dHRvbik7CisgICAgQVNTRVJUKCFtX3JldHVyblRvUmVhbHRpbWVCdXR0b24pOworICAgIEFTU0VS
VCghbV9zdGF0dXNEaXNwbGF5KTsKKyAgICBBU1NFUlQoIW1fdGltZWxpbmVDb250YWluZXIpOwor
ICAgIEFTU0VSVCghbV9jdXJyZW50VGltZURpc3BsYXkpOworICAgIEFTU0VSVCghbV90aW1lbGlu
ZSk7CisgICAgQVNTRVJUKCFtX3RpbWVSZW1haW5pbmdEaXNwbGF5KTsKKyAgICBBU1NFUlQoIW1f
c2Vla0JhY2tCdXR0b24pOworICAgIEFTU0VSVCghbV9zZWVrRm9yd2FyZEJ1dHRvbik7CisgICAg
QVNTRVJUKCFtX3RvZ2dsZUNsb3NlZENhcHRpb25zQnV0dG9uKTsKKyAgICBBU1NFUlQoIW1fZnVs
bHNjcmVlbkJ1dHRvbik7CisgICAgQVNTRVJUKCFtX211dGVCdXR0b24pOworICAgIEFTU0VSVCgh
bV92b2x1bWVTbGlkZXJDb250YWluZXIpOworICAgIEFTU0VSVCghbV92b2x1bWVTbGlkZXIpOwor
ICAgIEFTU0VSVCghbV92b2x1bWVTbGlkZXJNdXRlQnV0dG9uKTsKKworICAgIFJlZlB0cjxNZWRp
YUNvbnRyb2xTaGFkb3dSb290RWxlbWVudD4gY29udHJvbHMgPSBNZWRpYUNvbnRyb2xTaGFkb3dS
b290RWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCk7CisKKyAgICBtX3BhbmVsID0gTWVkaWFD
b250cm9sUGFuZWxFbGVtZW50OjpjcmVhdGUobWVkaWFFbGVtZW50KTsKKworICAgIG1fcmV3aW5k
QnV0dG9uID0gTWVkaWFDb250cm9sUmV3aW5kQnV0dG9uRWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxl
bWVudCk7CisgICAgbV9yZXdpbmRCdXR0b24tPmF0dGFjaFRvUGFyZW50KG1fcGFuZWwuZ2V0KCkp
OworCisgICAgbV9wbGF5QnV0dG9uID0gTWVkaWFDb250cm9sUGxheUJ1dHRvbkVsZW1lbnQ6OmNy
ZWF0ZShtZWRpYUVsZW1lbnQpOworICAgIG1fcGxheUJ1dHRvbi0+YXR0YWNoVG9QYXJlbnQobV9w
YW5lbC5nZXQoKSk7CisKKyAgICBtX3JldHVyblRvUmVhbHRpbWVCdXR0b24gPSBNZWRpYUNvbnRy
b2xSZXR1cm5Ub1JlYWx0aW1lQnV0dG9uRWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCk7Cisg
ICAgbV9yZXR1cm5Ub1JlYWx0aW1lQnV0dG9uLT5hdHRhY2hUb1BhcmVudChtX3BhbmVsLmdldCgp
KTsKKworICAgIG1fc3RhdHVzRGlzcGxheSA9IE1lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXlFbGVt
ZW50OjpjcmVhdGUobWVkaWFFbGVtZW50KTsKKyAgICBtX3N0YXR1c0Rpc3BsYXktPmF0dGFjaFRv
UGFyZW50KG1fcGFuZWwuZ2V0KCkpOworCisgICAgbV90aW1lbGluZUNvbnRhaW5lciA9IE1lZGlh
Q29udHJvbFRpbWVsaW5lQ29udGFpbmVyRWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCk7CisK
KyAgICBtX2N1cnJlbnRUaW1lRGlzcGxheSA9IE1lZGlhQ29udHJvbEN1cnJlbnRUaW1lRGlzcGxh
eUVsZW1lbnQ6OmNyZWF0ZShtZWRpYUVsZW1lbnQpOworICAgIG1fY3VycmVudFRpbWVEaXNwbGF5
LT5hdHRhY2hUb1BhcmVudChtX3RpbWVsaW5lQ29udGFpbmVyLmdldCgpKTsKKworICAgIG1fdGlt
ZWxpbmUgPSBNZWRpYUNvbnRyb2xUaW1lbGluZUVsZW1lbnQ6OmNyZWF0ZShtZWRpYUVsZW1lbnQp
OworICAgIG1fdGltZWxpbmUtPmF0dGFjaFRvUGFyZW50KG1fdGltZWxpbmVDb250YWluZXIuZ2V0
KCkpOworCisgICAgbV90aW1lUmVtYWluaW5nRGlzcGxheSA9IE1lZGlhQ29udHJvbFRpbWVSZW1h
aW5pbmdEaXNwbGF5RWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCk7CisgICAgbV90aW1lUmVt
YWluaW5nRGlzcGxheS0+YXR0YWNoVG9QYXJlbnQobV90aW1lbGluZUNvbnRhaW5lci5nZXQoKSk7
CisKKyAgICBtX3RpbWVsaW5lQ29udGFpbmVyLT5hdHRhY2hUb1BhcmVudChtX3BhbmVsLmdldCgp
KTsKKworICAgIG1fc2Vla0JhY2tCdXR0b24gPSBNZWRpYUNvbnRyb2xTZWVrQmFja0J1dHRvbkVs
ZW1lbnQ6OmNyZWF0ZShtZWRpYUVsZW1lbnQpOworICAgIG1fc2Vla0JhY2tCdXR0b24tPmF0dGFj
aFRvUGFyZW50KG1fcGFuZWwuZ2V0KCkpOworCisgICAgbV9zZWVrRm9yd2FyZEJ1dHRvbiA9IE1l
ZGlhQ29udHJvbFNlZWtGb3J3YXJkQnV0dG9uRWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCk7
CisgICAgbV9zZWVrRm9yd2FyZEJ1dHRvbi0+YXR0YWNoVG9QYXJlbnQobV9wYW5lbC5nZXQoKSk7
CisKKyAgICBtX3RvZ2dsZUNsb3NlZENhcHRpb25zQnV0dG9uID0gTWVkaWFDb250cm9sVG9nZ2xl
Q2xvc2VkQ2FwdGlvbnNCdXR0b25FbGVtZW50OjpjcmVhdGUobWVkaWFFbGVtZW50KTsKKyAgICBt
X3RvZ2dsZUNsb3NlZENhcHRpb25zQnV0dG9uLT5hdHRhY2hUb1BhcmVudChtX3BhbmVsLmdldCgp
KTsKKworICAgIG1fZnVsbHNjcmVlbkJ1dHRvbiA9IE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5CdXR0
b25FbGVtZW50OjpjcmVhdGUobWVkaWFFbGVtZW50KTsKKyAgICBtX2Z1bGxzY3JlZW5CdXR0b24t
PmF0dGFjaFRvUGFyZW50KG1fcGFuZWwuZ2V0KCkpOworCisgICAgbV9tdXRlQnV0dG9uID0gTWVk
aWFDb250cm9sUGFuZWxNdXRlQnV0dG9uRWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCk7Cisg
ICAgbV9tdXRlQnV0dG9uLT5hdHRhY2hUb1BhcmVudChtX3BhbmVsLmdldCgpKTsKKworICAgIG1f
dm9sdW1lU2xpZGVyQ29udGFpbmVyID0gTWVkaWFDb250cm9sVm9sdW1lU2xpZGVyQ29udGFpbmVy
RWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCk7CisKKyAgICBtX3ZvbHVtZVNsaWRlciA9IE1l
ZGlhQ29udHJvbFZvbHVtZVNsaWRlckVsZW1lbnQ6OmNyZWF0ZShtZWRpYUVsZW1lbnQpOworICAg
IG1fdm9sdW1lU2xpZGVyLT5hdHRhY2hUb1BhcmVudChtX3ZvbHVtZVNsaWRlckNvbnRhaW5lci5n
ZXQoKSk7CisKKyAgICBtX3ZvbHVtZVNsaWRlck11dGVCdXR0b24gPSBNZWRpYUNvbnRyb2xWb2x1
bWVTbGlkZXJNdXRlQnV0dG9uRWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCk7CisgICAgbV92
b2x1bWVTbGlkZXJNdXRlQnV0dG9uLT5hdHRhY2hUb1BhcmVudChtX3ZvbHVtZVNsaWRlckNvbnRh
aW5lci5nZXQoKSk7CisKKyAgICBtX3ZvbHVtZVNsaWRlckNvbnRhaW5lci0+YXR0YWNoVG9QYXJl
bnQobV9wYW5lbC5nZXQoKSk7CisKKyAgICBtX3BhbmVsLT5hdHRhY2hUb1BhcmVudChjb250cm9s
cy5nZXQoKSk7CisgICAgcmV0dXJuIGNvbnRyb2xzLnJlbGVhc2UoKTsKK30KKwogdm9pZCBNZWRp
YUNvbnRyb2xzOjpyZXNldCgpCiB7CiAgICAgdXBkYXRlKCk7CkBAIC0xODUsMzEgKzI2NSw5IEBA
IHZvaWQgTWVkaWFDb250cm9sczo6dXBkYXRlKCkKICAgICB9CiAKICAgICBpZiAoIW1fY29udHJv
bHNTaGFkb3dSb290KSB7Ci0gICAgICAgIGNyZWF0ZUNvbnRyb2xzU2hhZG93Um9vdCgpOwotICAg
ICAgICBjcmVhdGVQYW5lbCgpOwotICAgICAgICBpZiAobV9wYW5lbCkgewotICAgICAgICAgICAg
Y3JlYXRlUmV3aW5kQnV0dG9uKCk7Ci0gICAgICAgICAgICBjcmVhdGVQbGF5QnV0dG9uKCk7Ci0g
ICAgICAgICAgICBjcmVhdGVSZXR1cm5Ub1JlYWx0aW1lQnV0dG9uKCk7Ci0gICAgICAgICAgICBj
cmVhdGVTdGF0dXNEaXNwbGF5KCk7Ci0gICAgICAgICAgICBjcmVhdGVUaW1lbGluZUNvbnRhaW5l
cigpOwotICAgICAgICAgICAgaWYgKG1fdGltZWxpbmVDb250YWluZXIpIHsKLSAgICAgICAgICAg
ICAgICBjcmVhdGVDdXJyZW50VGltZURpc3BsYXkoKTsKLSAgICAgICAgICAgICAgICBjcmVhdGVU
aW1lbGluZSgpOwotICAgICAgICAgICAgICAgIGNyZWF0ZVRpbWVSZW1haW5pbmdEaXNwbGF5KCk7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBjcmVhdGVTZWVrQmFja0J1dHRvbigpOwotICAg
ICAgICAgICAgY3JlYXRlU2Vla0ZvcndhcmRCdXR0b24oKTsKLSAgICAgICAgICAgIGNyZWF0ZVRv
Z2dsZUNsb3NlZENhcHRpb25zQnV0dG9uKCk7Ci0gICAgICAgICAgICBjcmVhdGVGdWxsc2NyZWVu
QnV0dG9uKCk7Ci0gICAgICAgICAgICBjcmVhdGVNdXRlQnV0dG9uKCk7Ci0gICAgICAgICAgICBj
cmVhdGVWb2x1bWVTbGlkZXJDb250YWluZXIoKTsKLSAgICAgICAgICAgIGlmIChtX3ZvbHVtZVNs
aWRlckNvbnRhaW5lcikgewotICAgICAgICAgICAgICAgIGNyZWF0ZVZvbHVtZVNsaWRlcigpOwot
ICAgICAgICAgICAgICAgIGNyZWF0ZVZvbHVtZVNsaWRlck11dGVCdXR0b24oKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgIG1fcGFuZWwtPmF0dGFjaCgpOwotICAgICAgICB9CisgICAgICAg
IG1fY29udHJvbHNTaGFkb3dSb290ID0gY3JlYXRlKG1fbWVkaWFFbGVtZW50KTsKKyAgICAgICAg
bV9tZWRpYUVsZW1lbnQtPnJlbmRlcmVyKCktPmFkZENoaWxkKG1fY29udHJvbHNTaGFkb3dSb290
LT5yZW5kZXJlcigpKTsKKyAgICAgICAgbV9wYW5lbC0+YXR0YWNoKCk7CiAgICAgfQogCiAgICAg
aWYgKG1fcGFuZWwpIHsKQEAgLTI1NiwxMzYgKzMxNCw2IEBAIHZvaWQgTWVkaWFDb250cm9sczo6
dXBkYXRlKCkKICAgICB1cGRhdGVDb250cm9sVmlzaWJpbGl0eSgpOwogfQogCi12b2lkIE1lZGlh
Q29udHJvbHM6OmNyZWF0ZUNvbnRyb2xzU2hhZG93Um9vdCgpCi17Ci0gICAgQVNTRVJUKCFtX2Nv
bnRyb2xzU2hhZG93Um9vdCk7Ci0gICAgbV9jb250cm9sc1NoYWRvd1Jvb3QgPSBNZWRpYUNvbnRy
b2xTaGFkb3dSb290RWxlbWVudDo6Y3JlYXRlKG1fbWVkaWFFbGVtZW50KTsKLSAgICBtX21lZGlh
RWxlbWVudC0+cmVuZGVyZXIoKS0+YWRkQ2hpbGQobV9jb250cm9sc1NoYWRvd1Jvb3QtPnJlbmRl
cmVyKCkpOwotfQotCi12b2lkIE1lZGlhQ29udHJvbHM6OmNyZWF0ZVBhbmVsKCkKLXsKLSAgICBB
U1NFUlQoIW1fcGFuZWwpOwotICAgIG1fcGFuZWwgPSBNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6
OmNyZWF0ZShtX21lZGlhRWxlbWVudCk7Ci0gICAgbV9wYW5lbC0+YXR0YWNoVG9QYXJlbnQobV9j
b250cm9sc1NoYWRvd1Jvb3QuZ2V0KCkpOwotfQotCi12b2lkIE1lZGlhQ29udHJvbHM6OmNyZWF0
ZU11dGVCdXR0b24oKQotewotICAgIEFTU0VSVCghbV9tdXRlQnV0dG9uKTsKLSAgICBtX211dGVC
dXR0b24gPSBNZWRpYUNvbnRyb2xQYW5lbE11dGVCdXR0b25FbGVtZW50OjpjcmVhdGUobV9tZWRp
YUVsZW1lbnQpOwotICAgIG1fbXV0ZUJ1dHRvbi0+YXR0YWNoVG9QYXJlbnQobV9wYW5lbC5nZXQo
KSk7Ci19Ci0KLXZvaWQgTWVkaWFDb250cm9sczo6Y3JlYXRlUGxheUJ1dHRvbigpCi17Ci0gICAg
QVNTRVJUKCFtX3BsYXlCdXR0b24pOwotICAgIG1fcGxheUJ1dHRvbiA9IE1lZGlhQ29udHJvbFBs
YXlCdXR0b25FbGVtZW50OjpjcmVhdGUobV9tZWRpYUVsZW1lbnQpOwotICAgIG1fcGxheUJ1dHRv
bi0+YXR0YWNoVG9QYXJlbnQobV9wYW5lbC5nZXQoKSk7Ci19Ci0KLXZvaWQgTWVkaWFDb250cm9s
czo6Y3JlYXRlU2Vla0JhY2tCdXR0b24oKQotewotICAgIEFTU0VSVCghbV9zZWVrQmFja0J1dHRv
bik7Ci0gICAgbV9zZWVrQmFja0J1dHRvbiA9IE1lZGlhQ29udHJvbFNlZWtCYWNrQnV0dG9uRWxl
bWVudDo6Y3JlYXRlKG1fbWVkaWFFbGVtZW50KTsKLSAgICBtX3NlZWtCYWNrQnV0dG9uLT5hdHRh
Y2hUb1BhcmVudChtX3BhbmVsLmdldCgpKTsKLX0KLQotdm9pZCBNZWRpYUNvbnRyb2xzOjpjcmVh
dGVTZWVrRm9yd2FyZEJ1dHRvbigpCi17Ci0gICAgQVNTRVJUKCFtX3NlZWtGb3J3YXJkQnV0dG9u
KTsKLSAgICBtX3NlZWtGb3J3YXJkQnV0dG9uID0gTWVkaWFDb250cm9sU2Vla0ZvcndhcmRCdXR0
b25FbGVtZW50OjpjcmVhdGUobV9tZWRpYUVsZW1lbnQpOwotICAgIG1fc2Vla0ZvcndhcmRCdXR0
b24tPmF0dGFjaFRvUGFyZW50KG1fcGFuZWwuZ2V0KCkpOwotfQotCi12b2lkIE1lZGlhQ29udHJv
bHM6OmNyZWF0ZVJld2luZEJ1dHRvbigpCi17Ci0gICAgQVNTRVJUKCFtX3Jld2luZEJ1dHRvbik7
Ci0gICAgbV9yZXdpbmRCdXR0b24gPSBNZWRpYUNvbnRyb2xSZXdpbmRCdXR0b25FbGVtZW50Ojpj
cmVhdGUobV9tZWRpYUVsZW1lbnQpOwotICAgIG1fcmV3aW5kQnV0dG9uLT5hdHRhY2hUb1BhcmVu
dChtX3BhbmVsLmdldCgpKTsKLX0KLQotdm9pZCBNZWRpYUNvbnRyb2xzOjpjcmVhdGVSZXR1cm5U
b1JlYWx0aW1lQnV0dG9uKCkKLXsKLSAgICBBU1NFUlQoIW1fcmV0dXJuVG9SZWFsdGltZUJ1dHRv
bik7Ci0gICAgbV9yZXR1cm5Ub1JlYWx0aW1lQnV0dG9uID0gTWVkaWFDb250cm9sUmV0dXJuVG9S
ZWFsdGltZUJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShtX21lZGlhRWxlbWVudCk7Ci0gICAgbV9yZXR1
cm5Ub1JlYWx0aW1lQnV0dG9uLT5hdHRhY2hUb1BhcmVudChtX3BhbmVsLmdldCgpKTsKLX0KLQot
dm9pZCBNZWRpYUNvbnRyb2xzOjpjcmVhdGVUb2dnbGVDbG9zZWRDYXB0aW9uc0J1dHRvbigpCi17
Ci0gICAgQVNTRVJUKCFtX3RvZ2dsZUNsb3NlZENhcHRpb25zQnV0dG9uKTsKLSAgICBtX3RvZ2ds
ZUNsb3NlZENhcHRpb25zQnV0dG9uID0gTWVkaWFDb250cm9sVG9nZ2xlQ2xvc2VkQ2FwdGlvbnNC
dXR0b25FbGVtZW50OjpjcmVhdGUobV9tZWRpYUVsZW1lbnQpOwotICAgIG1fdG9nZ2xlQ2xvc2Vk
Q2FwdGlvbnNCdXR0b24tPmF0dGFjaFRvUGFyZW50KG1fcGFuZWwuZ2V0KCkpOwotfQotCi12b2lk
IE1lZGlhQ29udHJvbHM6OmNyZWF0ZVN0YXR1c0Rpc3BsYXkoKQotewotICAgIEFTU0VSVCghbV9z
dGF0dXNEaXNwbGF5KTsKLSAgICBtX3N0YXR1c0Rpc3BsYXkgPSBNZWRpYUNvbnRyb2xTdGF0dXNE
aXNwbGF5RWxlbWVudDo6Y3JlYXRlKG1fbWVkaWFFbGVtZW50KTsKLSAgICBtX3N0YXR1c0Rpc3Bs
YXktPmF0dGFjaFRvUGFyZW50KG1fcGFuZWwuZ2V0KCkpOwotfQotCi12b2lkIE1lZGlhQ29udHJv
bHM6OmNyZWF0ZVRpbWVsaW5lQ29udGFpbmVyKCkKLXsKLSAgICBBU1NFUlQoIW1fdGltZWxpbmVD
b250YWluZXIpOwotICAgIG1fdGltZWxpbmVDb250YWluZXIgPSBNZWRpYUNvbnRyb2xUaW1lbGlu
ZUNvbnRhaW5lckVsZW1lbnQ6OmNyZWF0ZShtX21lZGlhRWxlbWVudCk7Ci0gICAgbV90aW1lbGlu
ZUNvbnRhaW5lci0+YXR0YWNoVG9QYXJlbnQobV9wYW5lbC5nZXQoKSk7Ci19Ci0KLXZvaWQgTWVk
aWFDb250cm9sczo6Y3JlYXRlVGltZWxpbmUoKQotewotICAgIEFTU0VSVCghbV90aW1lbGluZSk7
Ci0gICAgbV90aW1lbGluZSA9IE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudDo6Y3JlYXRlKG1f
bWVkaWFFbGVtZW50KTsKLSAgICBtX3RpbWVsaW5lLT5zZXRBdHRyaWJ1dGUocHJlY2lzaW9uQXR0
ciwgImZsb2F0Iik7Ci0gICAgbV90aW1lbGluZS0+YXR0YWNoVG9QYXJlbnQobV90aW1lbGluZUNv
bnRhaW5lci5nZXQoKSk7Ci19Ci0KLXZvaWQgTWVkaWFDb250cm9sczo6Y3JlYXRlVm9sdW1lU2xp
ZGVyQ29udGFpbmVyKCkKLXsKLSAgICBBU1NFUlQoIW1fdm9sdW1lU2xpZGVyQ29udGFpbmVyKTsK
LSAgICBtX3ZvbHVtZVNsaWRlckNvbnRhaW5lciA9IE1lZGlhQ29udHJvbFZvbHVtZVNsaWRlckNv
bnRhaW5lckVsZW1lbnQ6OmNyZWF0ZShtX21lZGlhRWxlbWVudCk7Ci0gICAgbV92b2x1bWVTbGlk
ZXJDb250YWluZXItPmF0dGFjaFRvUGFyZW50KG1fcGFuZWwuZ2V0KCkpOwotfQotCi12b2lkIE1l
ZGlhQ29udHJvbHM6OmNyZWF0ZVZvbHVtZVNsaWRlcigpCi17Ci0gICAgQVNTRVJUKCFtX3ZvbHVt
ZVNsaWRlcik7Ci0gICAgbV92b2x1bWVTbGlkZXIgPSBNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJF
bGVtZW50OjpjcmVhdGUobV9tZWRpYUVsZW1lbnQpOwotICAgIG1fdm9sdW1lU2xpZGVyLT5zZXRB
dHRyaWJ1dGUocHJlY2lzaW9uQXR0ciwgImZsb2F0Iik7Ci0gICAgbV92b2x1bWVTbGlkZXItPnNl
dEF0dHJpYnV0ZShtYXhBdHRyLCAiMSIpOwotICAgIG1fdm9sdW1lU2xpZGVyLT5zZXRBdHRyaWJ1
dGUodmFsdWVBdHRyLCBTdHJpbmc6Om51bWJlcihtX21lZGlhRWxlbWVudC0+dm9sdW1lKCkpKTsK
LSAgICBtX3ZvbHVtZVNsaWRlci0+YXR0YWNoVG9QYXJlbnQobV92b2x1bWVTbGlkZXJDb250YWlu
ZXIuZ2V0KCkpOwotfQotCi12b2lkIE1lZGlhQ29udHJvbHM6OmNyZWF0ZVZvbHVtZVNsaWRlck11
dGVCdXR0b24oKQotewotICAgIEFTU0VSVCghbV92b2x1bWVTbGlkZXJNdXRlQnV0dG9uKTsKLSAg
ICBtX3ZvbHVtZVNsaWRlck11dGVCdXR0b24gPSBNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJNdXRl
QnV0dG9uRWxlbWVudDo6Y3JlYXRlKG1fbWVkaWFFbGVtZW50KTsKLSAgICBtX3ZvbHVtZVNsaWRl
ck11dGVCdXR0b24tPmF0dGFjaFRvUGFyZW50KG1fdm9sdW1lU2xpZGVyQ29udGFpbmVyLmdldCgp
KTsKLX0KLQotdm9pZCBNZWRpYUNvbnRyb2xzOjpjcmVhdGVDdXJyZW50VGltZURpc3BsYXkoKQot
ewotICAgIEFTU0VSVCghbV9jdXJyZW50VGltZURpc3BsYXkpOwotICAgIG1fY3VycmVudFRpbWVE
aXNwbGF5ID0gTWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudDo6Y3JlYXRlKG1f
bWVkaWFFbGVtZW50KTsKLSAgICBtX2N1cnJlbnRUaW1lRGlzcGxheS0+YXR0YWNoVG9QYXJlbnQo
bV90aW1lbGluZUNvbnRhaW5lci5nZXQoKSk7Ci19Ci0KLXZvaWQgTWVkaWFDb250cm9sczo6Y3Jl
YXRlVGltZVJlbWFpbmluZ0Rpc3BsYXkoKQotewotICAgIEFTU0VSVCghbV90aW1lUmVtYWluaW5n
RGlzcGxheSk7Ci0gICAgbV90aW1lUmVtYWluaW5nRGlzcGxheSA9IE1lZGlhQ29udHJvbFRpbWVS
ZW1haW5pbmdEaXNwbGF5RWxlbWVudDo6Y3JlYXRlKG1fbWVkaWFFbGVtZW50KTsKLSAgICBtX3Rp
bWVSZW1haW5pbmdEaXNwbGF5LT5hdHRhY2hUb1BhcmVudChtX3RpbWVsaW5lQ29udGFpbmVyLmdl
dCgpKTsKLX0KLQotdm9pZCBNZWRpYUNvbnRyb2xzOjpjcmVhdGVGdWxsc2NyZWVuQnV0dG9uKCkK
LXsKLSAgICBBU1NFUlQoIW1fZnVsbHNjcmVlbkJ1dHRvbik7Ci0gICAgbV9mdWxsc2NyZWVuQnV0
dG9uID0gTWVkaWFDb250cm9sRnVsbHNjcmVlbkJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShtX21lZGlh
RWxlbWVudCk7Ci0gICAgbV9mdWxsc2NyZWVuQnV0dG9uLT5hdHRhY2hUb1BhcmVudChtX3BhbmVs
LmdldCgpKTsKLX0KLQogdm9pZCBNZWRpYUNvbnRyb2xzOjp1cGRhdGVUaW1lRGlzcGxheSgpCiB7
CiAgICAgQVNTRVJUKG1fbWVkaWFFbGVtZW50LT5yZW5kZXJlcigpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHMuaAppbmRleCA2ZDYyZjhmYWQwOGVmZDVhMjQxODMx
MTUzZDQzNzgyOWY5YjFjYTEwLi4zMjIzMjZkNzczZjg1ZjJkNzFmMzE4OTc4OGNhOWQwNmI4Njc5
YTNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9scy5oCkBAIC04
MywyNSArODMsNyBAQCBwdWJsaWM6CiAgICAgUmVuZGVyQm94KiByZW5kZXJCb3goKTsKIAogcHJp
dmF0ZToKLSAgICB2b2lkIGNyZWF0ZUNvbnRyb2xzU2hhZG93Um9vdCgpOwotICAgIHZvaWQgZGVz
dHJveUNvbnRyb2xzU2hhZG93Um9vdCgpOwotICAgIHZvaWQgY3JlYXRlUGFuZWwoKTsKLSAgICB2
b2lkIGNyZWF0ZU11dGVCdXR0b24oKTsKLSAgICB2b2lkIGNyZWF0ZVBsYXlCdXR0b24oKTsKLSAg
ICB2b2lkIGNyZWF0ZVNlZWtCYWNrQnV0dG9uKCk7Ci0gICAgdm9pZCBjcmVhdGVTZWVrRm9yd2Fy
ZEJ1dHRvbigpOwotICAgIHZvaWQgY3JlYXRlUmV3aW5kQnV0dG9uKCk7Ci0gICAgdm9pZCBjcmVh
dGVSZXR1cm5Ub1JlYWx0aW1lQnV0dG9uKCk7Ci0gICAgdm9pZCBjcmVhdGVUb2dnbGVDbG9zZWRD
YXB0aW9uc0J1dHRvbigpOwotICAgIHZvaWQgY3JlYXRlU3RhdHVzRGlzcGxheSgpOwotICAgIHZv
aWQgY3JlYXRlVGltZWxpbmVDb250YWluZXIoKTsKLSAgICB2b2lkIGNyZWF0ZVRpbWVsaW5lKCk7
Ci0gICAgdm9pZCBjcmVhdGVWb2x1bWVTbGlkZXJDb250YWluZXIoKTsKLSAgICB2b2lkIGNyZWF0
ZVZvbHVtZVNsaWRlcigpOwotICAgIHZvaWQgY3JlYXRlVm9sdW1lU2xpZGVyTXV0ZUJ1dHRvbigp
OwotICAgIHZvaWQgY3JlYXRlQ3VycmVudFRpbWVEaXNwbGF5KCk7Ci0gICAgdm9pZCBjcmVhdGVU
aW1lUmVtYWluaW5nRGlzcGxheSgpOwotICAgIHZvaWQgY3JlYXRlRnVsbHNjcmVlbkJ1dHRvbigp
OworICAgIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sU2hhZG93Um9vdEVsZW1lbnQ+IGNyZWF0ZShI
VE1MTWVkaWFFbGVtZW50Kik7CiAKICAgICB2b2lkIHVwZGF0ZUNvbnRyb2xWaXNpYmlsaXR5KCk7
CiAgICAgdm9pZCBjaGFuZ2VPcGFjaXR5KEhUTUxFbGVtZW50KiwgZmxvYXQgb3BhY2l0eSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTWVkaWFDb250cm9sRWxlbWVudHMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcApp
bmRleCA5ZTYxMjhhYWYzZmFhM2UzNWViZDc4YjM3YjEzNjAyNGE2OTZiYjRhLi5jZjA5OGZmYzY2
YTM3MTUxNDYyMTY0YzJjYThlMDZlYjdiMDUwNDkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKQEAgLTc5Nyw2ICs3OTcsNyBAQCBj
b25zdCBBdG9taWNTdHJpbmcmIE1lZGlhQ29udHJvbFRvZ2dsZUNsb3NlZENhcHRpb25zQnV0dG9u
RWxlbWVudDo6c2hhZG93UHNldWRvSQogTWVkaWFDb250cm9sVGltZWxpbmVFbGVtZW50OjpNZWRp
YUNvbnRyb2xUaW1lbGluZUVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KQog
ICAgIDogTWVkaWFDb250cm9sSW5wdXRFbGVtZW50KG1lZGlhRWxlbWVudCwgTWVkaWFTbGlkZXIp
CiB7CisgICAgc2V0QXR0cmlidXRlKHByZWNpc2lvbkF0dHIsICJmbG9hdCIpOwogfQogCiBQYXNz
UmVmUHRyPE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudD4gTWVkaWFDb250cm9sVGltZWxpbmVF
bGVtZW50OjpjcmVhdGUoSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KQpAQCAtODU4LDYg
Kzg1OSw5IEBAIGNvbnN0IEF0b21pY1N0cmluZyYgTWVkaWFDb250cm9sVGltZWxpbmVFbGVtZW50
OjpzaGFkb3dQc2V1ZG9JZCgpIGNvbnN0CiBpbmxpbmUgTWVkaWFDb250cm9sVm9sdW1lU2xpZGVy
RWxlbWVudDo6TWVkaWFDb250cm9sVm9sdW1lU2xpZGVyRWxlbWVudChIVE1MTWVkaWFFbGVtZW50
KiBtZWRpYUVsZW1lbnQpCiAgICAgOiBNZWRpYUNvbnRyb2xJbnB1dEVsZW1lbnQobWVkaWFFbGVt
ZW50LCBNZWRpYVZvbHVtZVNsaWRlcikKIHsKKyAgICBzZXRBdHRyaWJ1dGUocHJlY2lzaW9uQXR0
ciwgImZsb2F0Iik7CisgICAgc2V0QXR0cmlidXRlKG1heEF0dHIsICIxIik7CisgICAgc2V0QXR0
cmlidXRlKHZhbHVlQXR0ciwgU3RyaW5nOjpudW1iZXIobWVkaWFFbGVtZW50LT52b2x1bWUoKSkp
OwogfQogCiBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFZvbHVtZVNsaWRlckVsZW1lbnQ+IE1lZGlh
Q29udHJvbFZvbHVtZVNsaWRlckVsZW1lbnQ6OmNyZWF0ZShIVE1MTWVkaWFFbGVtZW50KiBtZWRp
YUVsZW1lbnQpCg==
</data>
<flag name="review"
          id="79026"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>