<?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>120358</bug_id>
          
          <creation_ts>2013-08-27 06:34:32 -0700</creation_ts>
          <short_desc>Remove branch from DescendantIteratorAdapter::begin() when invoking for ContainerNode</short_desc>
          <delta_ts>2013-08-27 23:15:34 -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>DOM</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kling</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>921484</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-08-27 06:34:32 -0700</bug_when>
    <thetext>Currently we have an unnecessary branch in begin().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921490</commentid>
    <comment_count>1</comment_count>
      <attachid>209764</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-08-27 06:41:17 -0700</bug_when>
    <thetext>Created attachment 209764
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921494</commentid>
    <comment_count>2</comment_count>
      <attachid>209764</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-08-27 06:58:02 -0700</bug_when>
    <thetext>Comment on attachment 209764
patch

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

r=me I guess.

&gt; Source/WebCore/dom/ContainerNode.h:150
&gt; +    bool isContainerNode() WTF_DELETED_FUNCTION;

Does this do the right thing? Node::isContainerNode() is a const function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921513</commentid>
    <comment_count>3</comment_count>
      <attachid>209771</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-08-27 07:34:00 -0700</bug_when>
    <thetext>Created attachment 209771
Simpler patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921516</commentid>
    <comment_count>4</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-08-27 07:39:00 -0700</bug_when>
    <thetext>https://trac.webkit.org/r154682</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921564</commentid>
    <comment_count>5</comment_count>
      <attachid>209771</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-08-27 09:25:41 -0700</bug_when>
    <thetext>Comment on attachment 209771
Simpler patch

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

&gt; Source/WebCore/dom/DescendantIterator.h:41
&gt; -    DescendantIterator(const ContainerNode* root);
&gt; -    DescendantIterator(const ContainerNode* root, ElementType* current);
&gt; +    DescendantIterator(const Node* root);
&gt; +    DescendantIterator(const Node* root, ElementType* current);

Why is this a good change? I understand it’s only used for equality comparison, but are there really callers that need to use this with a Node*?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921847</commentid>
    <comment_count>6</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-08-27 23:15:34 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Why is this a good change? I understand it’s only used for equality comparison, but are there really callers that need to use this with a Node*?

Yeah, for now. But it is true that it might be better to just fix the call sites.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209764</attachid>
            <date>2013-08-27 06:41:17 -0700</date>
            <delta_ts>2013-08-27 07:34:00 -0700</delta_ts>
            <desc>patch</desc>
            <filename>descendant-adapter-specialize.patch</filename>
            <type>text/plain</type>
            <size>4486</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NDY3OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEzLTA4LTI3ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBTcGVjaWFsaXplIERlc2NlbmRh
bnRJdGVyYXRvckFkYXB0ZXIgZm9yIENvbnRhaW5lck5vZGVzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjAzNTgKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGRvbS9Db250YWluZXJOb2RlLmg6CisgICAg
ICAgIAorICAgICAgICAgICAgRGVsZXRlIGlzQ29udGFpbmVyTm9kZSgpIHNvIGl0IGNhbid0IGJl
IGNhbGxlZCBpZiB0aGVyZSBpcyBzdGF0aWMga25vd2xlZGdlIHRoYXQgdGhlIG9iamVjdCBpcyBh
IENvbnRhaW5lck5vZGUuCisKKyAgICAgICAgKiBkb20vRGVzY2VuZGFudEl0ZXJhdG9yLmg6Cisg
ICAgICAgIChXZWJDb3JlOjo6OkRlc2NlbmRhbnRJdGVyYXRvckFkYXB0ZXIpOgorICAgICAgICAo
V2ViQ29yZTo6OjpiZWdpbik6IAorICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgV2UgZG9u
J3QgbmVlZCBhIGJyYW5jaCBmb3Iga25vd24gQ29udGFpbmVyTm9kZXMuCisKKyAgICAgICAgKFdl
YkNvcmU6Ojo6ZW5kKToKKwogMjAxMy0wOC0yNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBs
ZS5jb20+CiAKICAgICAgICAgU3dpdGNoIHNvbWUgbW9yZSBjb2RlIHRvIGVsZW1lbnQgY2hpbGQv
ZGVzY2VuZGFudCBpdGVyYXRvcnMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9Db250YWluZXJO
b2RlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZG9tL0NvbnRhaW5lck5vZGUuaAko
cmV2aXNpb24gMTU0Njc4KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0NvbnRhaW5lck5vZGUuaAko
d29ya2luZyBjb3B5KQpAQCAtMTQ3LDYgKzE0Nyw4IEBAIHByaXZhdGU6CiAgICAgYm9vbCBnZXRV
cHBlckxlZnRDb3JuZXIoRmxvYXRQb2ludCYpIGNvbnN0OwogICAgIGJvb2wgZ2V0TG93ZXJSaWdo
dENvcm5lcihGbG9hdFBvaW50JikgY29uc3Q7CiAKKyAgICBib29sIGlzQ29udGFpbmVyTm9kZSgp
IFdURl9ERUxFVEVEX0ZVTkNUSU9OOworCiAgICAgTm9kZSogbV9maXJzdENoaWxkOwogICAgIE5v
ZGUqIG1fbGFzdENoaWxkOwogfTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9EZXNjZW5kYW50
SXRlcmF0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRGVzY2VuZGFudEl0
ZXJhdG9yLmgJKHJldmlzaW9uIDE1NDY3OCkKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXNjZW5k
YW50SXRlcmF0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNTMsMTUgKzUzLDI4IEBAIHByaXZhdGU6
CiAjZW5kaWYKIH07CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBFbGVtZW50VHlwZSwgdHlwZW5hbWUg
Q29udGFpbmVyVHlwZT4KLWNsYXNzIERlc2NlbmRhbnRJdGVyYXRvckFkYXB0ZXIgewordGVtcGxh
dGUgPHR5cGVuYW1lIEVsZW1lbnRUeXBlLCB0eXBlbmFtZSBDb250YWluZXJUeXBlPiBjbGFzcyBE
ZXNjZW5kYW50SXRlcmF0b3JBZGFwdGVyIHsgfTsKKwordGVtcGxhdGUgPHR5cGVuYW1lIEVsZW1l
bnRUeXBlPgorY2xhc3MgRGVzY2VuZGFudEl0ZXJhdG9yQWRhcHRlcjxFbGVtZW50VHlwZSwgQ29u
dGFpbmVyTm9kZT4geworcHVibGljOgorICAgIERlc2NlbmRhbnRJdGVyYXRvckFkYXB0ZXIoQ29u
dGFpbmVyTm9kZSogcm9vdCk7CisgICAgRGVzY2VuZGFudEl0ZXJhdG9yPEVsZW1lbnRUeXBlPiBi
ZWdpbigpOworICAgIERlc2NlbmRhbnRJdGVyYXRvcjxFbGVtZW50VHlwZT4gZW5kKCk7CisKK3By
aXZhdGU6CisgICAgQ29udGFpbmVyTm9kZSogbV9yb290OworfTsKKwordGVtcGxhdGUgPHR5cGVu
YW1lIEVsZW1lbnRUeXBlPgorY2xhc3MgRGVzY2VuZGFudEl0ZXJhdG9yQWRhcHRlcjxFbGVtZW50
VHlwZSwgTm9kZT4gewogcHVibGljOgotICAgIERlc2NlbmRhbnRJdGVyYXRvckFkYXB0ZXIoQ29u
dGFpbmVyVHlwZSogcm9vdCk7CisgICAgRGVzY2VuZGFudEl0ZXJhdG9yQWRhcHRlcihOb2RlKiBy
b290KTsKICAgICBEZXNjZW5kYW50SXRlcmF0b3I8RWxlbWVudFR5cGU+IGJlZ2luKCk7CiAgICAg
RGVzY2VuZGFudEl0ZXJhdG9yPEVsZW1lbnRUeXBlPiBlbmQoKTsKIAogcHJpdmF0ZToKLSAgICBD
b250YWluZXJUeXBlKiBtX3Jvb3Q7CisgICAgTm9kZSogbV9yb290OwogfTsKIAogRGVzY2VuZGFu
dEl0ZXJhdG9yQWRhcHRlcjxFbGVtZW50LCBDb250YWluZXJOb2RlPiBlbGVtZW50RGVzY2VuZGFu
dHMoQ29udGFpbmVyTm9kZSogcm9vdCk7CkBAIC0xMDYsMjIgKzExOSw0MCBAQCBpbmxpbmUgYm9v
bCBEZXNjZW5kYW50SXRlcmF0b3I8RWxlbWVudFR5CiAgICAgcmV0dXJuIG1fY3VycmVudCAhPSBv
dGhlci5tX2N1cnJlbnQ7CiB9CiAKLXRlbXBsYXRlIDx0eXBlbmFtZSBFbGVtZW50VHlwZSwgdHlw
ZW5hbWUgQ29udGFpbmVyVHlwZT4KLWlubGluZSBEZXNjZW5kYW50SXRlcmF0b3JBZGFwdGVyPEVs
ZW1lbnRUeXBlLCBDb250YWluZXJUeXBlPjo6RGVzY2VuZGFudEl0ZXJhdG9yQWRhcHRlcihDb250
YWluZXJUeXBlKiByb290KQordGVtcGxhdGUgPHR5cGVuYW1lIEVsZW1lbnRUeXBlPgoraW5saW5l
IERlc2NlbmRhbnRJdGVyYXRvckFkYXB0ZXI8RWxlbWVudFR5cGUsIENvbnRhaW5lck5vZGU+OjpE
ZXNjZW5kYW50SXRlcmF0b3JBZGFwdGVyKENvbnRhaW5lck5vZGUqIHJvb3QpCiAgICAgOiBtX3Jv
b3Qocm9vdCkKIHsKIH0KIAotdGVtcGxhdGUgPHR5cGVuYW1lIEVsZW1lbnRUeXBlLCB0eXBlbmFt
ZSBDb250YWluZXJUeXBlPgotaW5saW5lIERlc2NlbmRhbnRJdGVyYXRvcjxFbGVtZW50VHlwZT4g
RGVzY2VuZGFudEl0ZXJhdG9yQWRhcHRlcjxFbGVtZW50VHlwZSwgQ29udGFpbmVyVHlwZT46OmJl
Z2luKCkKK3RlbXBsYXRlIDx0eXBlbmFtZSBFbGVtZW50VHlwZT4KK2lubGluZSBEZXNjZW5kYW50
SXRlcmF0b3I8RWxlbWVudFR5cGU+IERlc2NlbmRhbnRJdGVyYXRvckFkYXB0ZXI8RWxlbWVudFR5
cGUsIENvbnRhaW5lck5vZGU+OjpiZWdpbigpCit7CisgICAgcmV0dXJuIERlc2NlbmRhbnRJdGVy
YXRvcjxFbGVtZW50VHlwZT4obV9yb290LCBUcmF2ZXJzYWw8RWxlbWVudFR5cGU+OjpmaXJzdFdp
dGhpbihtX3Jvb3QpKTsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVsZW1lbnRUeXBlPgoraW5s
aW5lIERlc2NlbmRhbnRJdGVyYXRvcjxFbGVtZW50VHlwZT4gRGVzY2VuZGFudEl0ZXJhdG9yQWRh
cHRlcjxFbGVtZW50VHlwZSwgQ29udGFpbmVyTm9kZT46OmVuZCgpCit7CisgICAgcmV0dXJuIERl
c2NlbmRhbnRJdGVyYXRvcjxFbGVtZW50VHlwZT4obV9yb290KTsKK30KKwordGVtcGxhdGUgPHR5
cGVuYW1lIEVsZW1lbnRUeXBlPgoraW5saW5lIERlc2NlbmRhbnRJdGVyYXRvckFkYXB0ZXI8RWxl
bWVudFR5cGUsIE5vZGU+OjpEZXNjZW5kYW50SXRlcmF0b3JBZGFwdGVyKE5vZGUqIHJvb3QpCisg
ICAgOiBtX3Jvb3Qocm9vdCkKK3sKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVsZW1lbnRUeXBl
PgoraW5saW5lIERlc2NlbmRhbnRJdGVyYXRvcjxFbGVtZW50VHlwZT4gRGVzY2VuZGFudEl0ZXJh
dG9yQWRhcHRlcjxFbGVtZW50VHlwZSwgTm9kZT46OmJlZ2luKCkKIHsKICAgICBpZiAoIW1fcm9v
dC0+aXNDb250YWluZXJOb2RlKCkpCiAgICAgICAgIHJldHVybiBEZXNjZW5kYW50SXRlcmF0b3I8
RWxlbWVudFR5cGU+KG1fcm9vdCk7CiAgICAgcmV0dXJuIERlc2NlbmRhbnRJdGVyYXRvcjxFbGVt
ZW50VHlwZT4obV9yb290LCBUcmF2ZXJzYWw8RWxlbWVudFR5cGU+OjpmaXJzdFdpdGhpbihzdGF0
aWNfY2FzdDxDb250YWluZXJOb2RlKj4obV9yb290KSkpOwogfQogCi10ZW1wbGF0ZSA8dHlwZW5h
bWUgRWxlbWVudFR5cGUsIHR5cGVuYW1lIENvbnRhaW5lclR5cGU+Ci1pbmxpbmUgRGVzY2VuZGFu
dEl0ZXJhdG9yPEVsZW1lbnRUeXBlPiBEZXNjZW5kYW50SXRlcmF0b3JBZGFwdGVyPEVsZW1lbnRU
eXBlLCBDb250YWluZXJUeXBlPjo6ZW5kKCkKK3RlbXBsYXRlIDx0eXBlbmFtZSBFbGVtZW50VHlw
ZT4KK2lubGluZSBEZXNjZW5kYW50SXRlcmF0b3I8RWxlbWVudFR5cGU+IERlc2NlbmRhbnRJdGVy
YXRvckFkYXB0ZXI8RWxlbWVudFR5cGUsIE5vZGU+OjplbmQoKQogewogICAgIHJldHVybiBEZXNj
ZW5kYW50SXRlcmF0b3I8RWxlbWVudFR5cGU+KG1fcm9vdCk7CiB9Cg==
</data>
<flag name="review"
          id="231815"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209771</attachid>
            <date>2013-08-27 07:34:00 -0700</date>
            <delta_ts>2013-08-27 09:25:41 -0700</delta_ts>
            <desc>Simpler patch</desc>
            <filename>descendant-container-branch.patch</filename>
            <type>text/plain</type>
            <size>3944</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NDY4MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDEzLTA4LTI3ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgYnJhbmNoIGZyb20g
RGVzY2VuZGFudEl0ZXJhdG9yQWRhcHRlcjo6YmVnaW4oKSB3aGVuIGludm9raW5nIGZvciBDb250
YWluZXJOb2RlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTIwMzU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vQ29udGFpbmVyTm9kZS5o
OgorICAgICAgICAKKyAgICAgICAgICAgIERlbGV0ZSBpc0NvbnRhaW5lck5vZGUoKSBzbyBpdCBj
YW4ndCBiZSBjYWxsZWQgaWYgdGhlcmUgaXMgc3RhdGljIGtub3dsZWRnZSB0aGF0IHRoZSBvYmpl
Y3QgaXMgYSBDb250YWluZXJOb2RlLgorCisgICAgICAgICogZG9tL0Rlc2NlbmRhbnRJdGVyYXRv
ci5oOgorICAgICAgICAoV2ViQ29yZTo6OjpEZXNjZW5kYW50SXRlcmF0b3IpOgorCisgICAgICAg
ICAgICBNYWtlIERlc2NlbmRhbnRJdGVyYXRvciB1c2UgTm9kZSogYXMgcm9vdCBpbnN0ZWFkIG9m
IENvbnRhaW5lck5vZGUqLiBJdCBpcyBvbmx5IHVzZWQgZm9yIGVxdWFsaXR5IGNvbXBhcmlzb24u
CisKKyAgICAgICAgKFdlYkNvcmU6Ojo6YmVnaW4pOgorICAgICAgICAKKyAgICAgICAgICAgIFJl
bW92ZSBicmFuY2guIFJlbHkgb24gRWxlbWVudFRyYXZlcnNhbCBzcGVjaWFsaXphdGlvbiBmb3Ig
Q29udGFpbmVyTm9kZXMuCisKIDIwMTMtMDgtMjcgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJv
QGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBDb2x1bW4gQnJlYWtwb2ludCBu
b3Qgd29ya2luZywgbWF5IGJlIG9mZiBieSAxCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vQ29u
dGFpbmVyTm9kZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Db250YWluZXJO
b2RlLmgJKHJldmlzaW9uIDE1NDY3OCkKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Db250YWluZXJO
b2RlLmgJKHdvcmtpbmcgY29weSkKQEAgLTE0Nyw2ICsxNDcsOCBAQCBwcml2YXRlOgogICAgIGJv
b2wgZ2V0VXBwZXJMZWZ0Q29ybmVyKEZsb2F0UG9pbnQmKSBjb25zdDsKICAgICBib29sIGdldExv
d2VyUmlnaHRDb3JuZXIoRmxvYXRQb2ludCYpIGNvbnN0OwogCisgICAgYm9vbCBpc0NvbnRhaW5l
ck5vZGUoKSBjb25zdCBXVEZfREVMRVRFRF9GVU5DVElPTjsKKwogICAgIE5vZGUqIG1fZmlyc3RD
aGlsZDsKICAgICBOb2RlKiBtX2xhc3RDaGlsZDsKIH07CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9k
b20vRGVzY2VuZGFudEl0ZXJhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZG9t
L0Rlc2NlbmRhbnRJdGVyYXRvci5oCShyZXZpc2lvbiAxNTQ2NzgpCisrKyBTb3VyY2UvV2ViQ29y
ZS9kb20vRGVzY2VuZGFudEl0ZXJhdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTM3LDE1ICszNywx
NSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiB0ZW1wbGF0ZSA8dHlwZW5hbWUgRWxlbWVudFR5cGU+
CiBjbGFzcyBEZXNjZW5kYW50SXRlcmF0b3IgewogcHVibGljOgotICAgIERlc2NlbmRhbnRJdGVy
YXRvcihjb25zdCBDb250YWluZXJOb2RlKiByb290KTsKLSAgICBEZXNjZW5kYW50SXRlcmF0b3Io
Y29uc3QgQ29udGFpbmVyTm9kZSogcm9vdCwgRWxlbWVudFR5cGUqIGN1cnJlbnQpOworICAgIERl
c2NlbmRhbnRJdGVyYXRvcihjb25zdCBOb2RlKiByb290KTsKKyAgICBEZXNjZW5kYW50SXRlcmF0
b3IoY29uc3QgTm9kZSogcm9vdCwgRWxlbWVudFR5cGUqIGN1cnJlbnQpOwogICAgIERlc2NlbmRh
bnRJdGVyYXRvciYgb3BlcmF0b3IrKygpOwogICAgIEVsZW1lbnRUeXBlJiBvcGVyYXRvciooKSB7
IHJldHVybiAqbV9jdXJyZW50OyB9CiAgICAgRWxlbWVudFR5cGUqIG9wZXJhdG9yLT4oKSB7IHJl
dHVybiBtX2N1cnJlbnQ7IH0KICAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgRGVzY2VuZGFudEl0
ZXJhdG9yJiBvdGhlcikgY29uc3Q7CiAKIHByaXZhdGU6Ci0gICAgY29uc3QgQ29udGFpbmVyTm9k
ZSogbV9yb290OworICAgIGNvbnN0IE5vZGUqIG1fcm9vdDsKICAgICBFbGVtZW50VHlwZSogbV9j
dXJyZW50OwogI2lmbmRlZiBOREVCVUcKICAgICBPd25QdHI8Tm9FdmVudERpc3BhdGNoQXNzZXJ0
aW9uPiBtX25vRXZlbnREaXNwYXRjaEFzc2VydGlvbjsKQEAgLTcwLDcgKzcwLDcgQEAgdGVtcGxh
dGUgPHR5cGVuYW1lIEVsZW1lbnRUeXBlPiBEZXNjZW5kYQogdGVtcGxhdGUgPHR5cGVuYW1lIEVs
ZW1lbnRUeXBlPiBEZXNjZW5kYW50SXRlcmF0b3JBZGFwdGVyPEVsZW1lbnRUeXBlLCBOb2RlPiBk
ZXNjZW5kYW50c09mVHlwZShOb2RlKiByb290KTsKIAogdGVtcGxhdGUgPHR5cGVuYW1lIEVsZW1l
bnRUeXBlPgotaW5saW5lIERlc2NlbmRhbnRJdGVyYXRvcjxFbGVtZW50VHlwZT46OkRlc2NlbmRh
bnRJdGVyYXRvcihjb25zdCBDb250YWluZXJOb2RlKiByb290KQoraW5saW5lIERlc2NlbmRhbnRJ
dGVyYXRvcjxFbGVtZW50VHlwZT46OkRlc2NlbmRhbnRJdGVyYXRvcihjb25zdCBOb2RlKiByb290
KQogICAgIDogbV9yb290KHJvb3QpCiAgICAgLCBtX2N1cnJlbnQobnVsbHB0cikKICNpZm5kZWYg
TkRFQlVHCkBAIC04MCw3ICs4MCw3IEBAIGlubGluZSBEZXNjZW5kYW50SXRlcmF0b3I8RWxlbWVu
dFR5cGU+OjoKIH0KIAogdGVtcGxhdGUgPHR5cGVuYW1lIEVsZW1lbnRUeXBlPgotaW5saW5lIERl
c2NlbmRhbnRJdGVyYXRvcjxFbGVtZW50VHlwZT46OkRlc2NlbmRhbnRJdGVyYXRvcihjb25zdCBD
b250YWluZXJOb2RlKiByb290LCBFbGVtZW50VHlwZSogY3VycmVudCkKK2lubGluZSBEZXNjZW5k
YW50SXRlcmF0b3I8RWxlbWVudFR5cGU+OjpEZXNjZW5kYW50SXRlcmF0b3IoY29uc3QgTm9kZSog
cm9vdCwgRWxlbWVudFR5cGUqIGN1cnJlbnQpCiAgICAgOiBtX3Jvb3Qocm9vdCkKICAgICAsIG1f
Y3VycmVudChjdXJyZW50KQogI2lmbmRlZiBOREVCVUcKQEAgLTExNSw5ICsxMTUsNyBAQCBpbmxp
bmUgRGVzY2VuZGFudEl0ZXJhdG9yQWRhcHRlcjxFbGVtZW50CiB0ZW1wbGF0ZSA8dHlwZW5hbWUg
RWxlbWVudFR5cGUsIHR5cGVuYW1lIENvbnRhaW5lclR5cGU+CiBpbmxpbmUgRGVzY2VuZGFudEl0
ZXJhdG9yPEVsZW1lbnRUeXBlPiBEZXNjZW5kYW50SXRlcmF0b3JBZGFwdGVyPEVsZW1lbnRUeXBl
LCBDb250YWluZXJUeXBlPjo6YmVnaW4oKQogewotICAgIGlmICghbV9yb290LT5pc0NvbnRhaW5l
ck5vZGUoKSkKLSAgICAgICAgcmV0dXJuIERlc2NlbmRhbnRJdGVyYXRvcjxFbGVtZW50VHlwZT4o
bV9yb290KTsKLSAgICByZXR1cm4gRGVzY2VuZGFudEl0ZXJhdG9yPEVsZW1lbnRUeXBlPihtX3Jv
b3QsIFRyYXZlcnNhbDxFbGVtZW50VHlwZT46OmZpcnN0V2l0aGluKHN0YXRpY19jYXN0PENvbnRh
aW5lck5vZGUqPihtX3Jvb3QpKSk7CisgICAgcmV0dXJuIERlc2NlbmRhbnRJdGVyYXRvcjxFbGVt
ZW50VHlwZT4obV9yb290LCBUcmF2ZXJzYWw8RWxlbWVudFR5cGU+OjpmaXJzdFdpdGhpbihtX3Jv
b3QpKTsKIH0KIAogdGVtcGxhdGUgPHR5cGVuYW1lIEVsZW1lbnRUeXBlLCB0eXBlbmFtZSBDb250
YWluZXJUeXBlPgo=
</data>
<flag name="review"
          id="231823"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>