<?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>82694</bug_id>
          
          <creation_ts>2012-03-29 23:17:08 -0700</creation_ts>
          <short_desc>[Shadow DOM] Use ComposedShadowTreeWalker in FocusController.</short_desc>
          <delta_ts>2012-04-03 19:12:02 -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>
          <dependson>82009</dependson>
          <blocked>78585</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hayato Ito">hayato</reporter>
          <assigned_to name="Hayato Ito">hayato</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>dominicc</cc>
    
    <cc>morrita</cc>
    
    <cc>shinyak</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>591889</commentid>
    <comment_count>0</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-03-29 23:17:08 -0700</bug_when>
    <thetext>Rewrite FocusController so that it uses coming ComposedShadowTreeWalker APIs  instead of currently used ReifiedTreeTraversal APIs.
Which might resolve bug82593 also hopefully.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>594283</commentid>
    <comment_count>1</comment_count>
      <attachid>135290</attachid>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-04-03 01:31:53 -0700</bug_when>
    <thetext>Created attachment 135290
use a Walker</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>595142</commentid>
    <comment_count>2</comment_count>
      <attachid>135290</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-03 19:11:58 -0700</bug_when>
    <thetext>Comment on attachment 135290
use a Walker

Clearing flags on attachment: 135290

Committed r113125: &lt;http://trac.webkit.org/changeset/113125&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>595143</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-03 19:12:02 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135290</attachid>
            <date>2012-04-03 01:31:53 -0700</date>
            <delta_ts>2012-04-03 19:11:58 -0700</delta_ts>
            <desc>use a Walker</desc>
            <filename>bug-82694-20120403173151.patch</filename>
            <type>text/plain</type>
            <size>9155</size>
            <attacher name="Hayato Ito">hayato</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyOTkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzg5N2ZkODUwYjZiM2Rl
NDUyY2YyOWZlNjZlY2Y1NTkyNjhlMzJhYS4uOTRlMDFhOWIxYjEwMzEzNGZlNDMwYTZlOGZlYjE1
NGE4MmY5NjQwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTA0LTAzICBIYXlh
dG8gSXRvICA8aGF5YXRvQGNocm9taXVtLm9yZz4KKworICAgICAgICBNYWtlIEZvY3VzQ29udHJv
bGxlciB1c2UgYSBDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIsIGluc3RlYWQgb2YgUmVpZmllZFRy
ZWVUcmF2ZXJzYWwgQVBJcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTgyNjk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgUmV3cml0ZSBhIGZvY3VzIGNvbnRyb2xsZXIgc28gdGhhdCBpdCB1c2VzIENvbXBv
c2VkU2hhZG93VHJlZVdhbGtlcgorICAgICAgICBzaW5jZSB0aGF0IGlzIGEgcHJlZmVycmVkIHdh
eSB0byB0cmF2ZXJzZSBjb21wb3NlZCBzaGFkb3cgdHJlZS4KKyAgICAgICAgSSdsbCBnZXQgcmlk
IG9mIFJlaWZpZWRUcmVlVHJhdmVyc2FsIGluIGZvbGxvdy11cCBwYXRjaGVzLCB3aGljaCBpcyBu
b3cgZGVwcmVjYXRlZC4KKworICAgICAgICBObyBuZXcgdGVzdHMuIE5vIGNoYW5nZSBpbiBmdW5j
dGlvbmFsaXR5LgorCisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6d2Fsa2VyRnJvbSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdl
YkNvcmU6OndhbGtlckZyb21OZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OndhbGtlckZyb21QcmV2
aW91cyk6CisgICAgICAgIChXZWJDb3JlOjpuZXh0Tm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpw
cmV2aW91c05vZGUpOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjpmaW5kTm9k
ZVdpdGhFeGFjdFRhYkluZGV4KToKKyAgICAgICAgKFdlYkNvcmU6Om5leHROb2RlV2l0aEdyZWF0
ZXJUYWJJbmRleCk6CisgICAgICAgIChXZWJDb3JlOjpwcmV2aW91c05vZGVXaXRoTG93ZXJUYWJJ
bmRleCk6CisgICAgICAgIChXZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6Om5leHRGb2N1c2FibGVO
b2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6cHJldmlvdXNGb2N1c2Fi
bGVOb2RlKToKKwogMjAxMi0wNC0wMiAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiAiUGF1c2Ugb24gc3RhcnQiIGRvZXNuJ3Qg
Y2hhbmdlIGNoZWNrZWQgc3RhdGUgaW4gd29ya2VycyBwYW5lbApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9G
b2N1c0NvbnRyb2xsZXIuY3BwCmluZGV4IDUwNGU0YmVhM2NjYTljNGRkNTdjOWJmMWUxYjM2OTg5
OWFlZTg0YTUuLjNmYTE0YmM4YTZjZTYzM2JlMDlmZDVlNjYwNDg2OTNiZGI5ODc5Y2YgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKIAog
I2luY2x1ZGUgIkFYT2JqZWN0Q2FjaGUuaCIKICNpbmNsdWRlICJDaHJvbWUuaCIKKyNpbmNsdWRl
ICJDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIuaCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2lu
Y2x1ZGUgIkVkaXRvci5oIgogI2luY2x1ZGUgIkVkaXRvckNsaWVudC5oIgpAQCAtNDgsNyArNDks
NiBAQAogI2luY2x1ZGUgIktleWJvYXJkRXZlbnQuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5j
bHVkZSAiUmFuZ2UuaCIKLSNpbmNsdWRlICJSZWlmaWVkVHJlZVRyYXZlcnNhbC5oIgogI2luY2x1
ZGUgIlJlbmRlckxheWVyLmgiCiAjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAi
UmVuZGVyV2lkZ2V0LmgiCkBAIC03MSw2ICs3MSwzNSBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNT
aGFkb3dIb3N0KGNvbnN0IE5vZGUqIG5vZGUpCiAgICAgcmV0dXJuIG5vZGUgJiYgbm9kZS0+aXNF
bGVtZW50Tm9kZSgpICYmIHRvRWxlbWVudChub2RlKS0+aGFzU2hhZG93Um9vdCgpOwogfQogCitz
dGF0aWMgaW5saW5lIENvbXBvc2VkU2hhZG93VHJlZVdhbGtlciB3YWxrZXJGcm9tKGNvbnN0IE5v
ZGUqIG5vZGUpCit7CisgICAgcmV0dXJuIENvbXBvc2VkU2hhZG93VHJlZVdhbGtlcihub2RlLCBD
b21wb3NlZFNoYWRvd1RyZWVXYWxrZXI6OkRvTm90Q3Jvc3NVcHBlckJvdW5kYXJ5KTsKK30KKwor
c3RhdGljIGlubGluZSBDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIgd2Fsa2VyRnJvbU5leHQoY29u
c3QgTm9kZSogbm9kZSkKK3sKKyAgICBDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIgd2Fsa2VyID0g
Q29tcG9zZWRTaGFkb3dUcmVlV2Fsa2VyKG5vZGUsIENvbXBvc2VkU2hhZG93VHJlZVdhbGtlcjo6
RG9Ob3RDcm9zc1VwcGVyQm91bmRhcnkpOworICAgIHdhbGtlci5uZXh0KCk7CisgICAgcmV0dXJu
IHdhbGtlcjsKK30KKworc3RhdGljIGlubGluZSBDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIgd2Fs
a2VyRnJvbVByZXZpb3VzKGNvbnN0IE5vZGUqIG5vZGUpCit7CisgICAgQ29tcG9zZWRTaGFkb3dU
cmVlV2Fsa2VyIHdhbGtlciA9IENvbXBvc2VkU2hhZG93VHJlZVdhbGtlcihub2RlLCBDb21wb3Nl
ZFNoYWRvd1RyZWVXYWxrZXI6OkRvTm90Q3Jvc3NVcHBlckJvdW5kYXJ5KTsKKyAgICB3YWxrZXIu
cHJldmlvdXMoKTsKKyAgICByZXR1cm4gd2Fsa2VyOworfQorCitzdGF0aWMgaW5saW5lIE5vZGUq
IG5leHROb2RlKGNvbnN0IE5vZGUqIG5vZGUpCit7CisgICAgcmV0dXJuIHdhbGtlckZyb21OZXh0
KG5vZGUpLmdldCgpOworfQorCitzdGF0aWMgaW5saW5lIE5vZGUqIHByZXZpb3VzTm9kZShjb25z
dCBOb2RlKiBub2RlKQoreworICAgIHJldHVybiB3YWxrZXJGcm9tUHJldmlvdXMobm9kZSkuZ2V0
KCk7Cit9CisKIEZvY3VzU2NvcGU6OkZvY3VzU2NvcGUoVHJlZVNjb3BlKiB0cmVlU2NvcGUpCiAg
ICAgOiBtX3Jvb3RUcmVlU2NvcGUodHJlZVNjb3BlKQogewpAQCAtNDIwLDkgKzQ0OSw5IEBAIE5v
ZGUqIEZvY3VzQ29udHJvbGxlcjo6ZmluZEZvY3VzYWJsZU5vZGUoRm9jdXNEaXJlY3Rpb24gZGly
ZWN0aW9uLCBGb2N1c1Njb3BlIHNjCiBOb2RlKiBGb2N1c0NvbnRyb2xsZXI6OmZpbmROb2RlV2l0
aEV4YWN0VGFiSW5kZXgoTm9kZSogc3RhcnQsIGludCB0YWJJbmRleCwgS2V5Ym9hcmRFdmVudCog
ZXZlbnQsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKIHsKICAgICAvLyBTZWFyY2ggaXMgaW5j
bHVzaXZlIG9mIHN0YXJ0Ci0gICAgZm9yIChOb2RlKiBub2RlID0gc3RhcnQ7IG5vZGU7IG5vZGUg
PSAoZGlyZWN0aW9uID09IEZvY3VzRGlyZWN0aW9uRm9yd2FyZCA/IFJlaWZpZWRUcmVlVHJhdmVy
c2FsOjp0cmF2ZXJzZU5leHROb2RlV2l0aG91dENyb3NzaW5nVXBwZXJCb3VuZGFyeShub2RlKTog
UmVpZmllZFRyZWVUcmF2ZXJzYWw6OnRyYXZlcnNlUHJldmlvdXNOb2RlV2l0aG91dENyb3NzaW5n
VXBwZXJCb3VuZGFyeShub2RlKSkpIHsKLSAgICAgICAgaWYgKHNob3VsZFZpc2l0KG5vZGUsIGV2
ZW50KSAmJiBhZGp1c3RlZFRhYkluZGV4KG5vZGUsIGV2ZW50KSA9PSB0YWJJbmRleCkKLSAgICAg
ICAgICAgIHJldHVybiBub2RlOworICAgIGZvciAoQ29tcG9zZWRTaGFkb3dUcmVlV2Fsa2VyIHdh
bGtlciA9IHdhbGtlckZyb20oc3RhcnQpOyB3YWxrZXIuZ2V0KCk7IGRpcmVjdGlvbiA9PSBGb2N1
c0RpcmVjdGlvbkZvcndhcmQgPyB3YWxrZXIubmV4dCgpIDogd2Fsa2VyLnByZXZpb3VzKCkpIHsK
KyAgICAgICAgaWYgKHNob3VsZFZpc2l0KHdhbGtlci5nZXQoKSwgZXZlbnQpICYmIGFkanVzdGVk
VGFiSW5kZXgod2Fsa2VyLmdldCgpLCBldmVudCkgPT0gdGFiSW5kZXgpCisgICAgICAgICAgICBy
ZXR1cm4gd2Fsa2VyLmdldCgpOwogICAgIH0KICAgICByZXR1cm4gMDsKIH0KQEAgLTQzMiwxMSAr
NDYxLDEzIEBAIHN0YXRpYyBOb2RlKiBuZXh0Tm9kZVdpdGhHcmVhdGVyVGFiSW5kZXgoTm9kZSog
c3RhcnQsIGludCB0YWJJbmRleCwgS2V5Ym9hcmRFdmVuCiAgICAgLy8gU2VhcmNoIGlzIGluY2x1
c2l2ZSBvZiBzdGFydAogICAgIGludCB3aW5uaW5nVGFiSW5kZXggPSBzdGQ6Om51bWVyaWNfbGlt
aXRzPHNob3J0Pjo6bWF4KCkgKyAxOwogICAgIE5vZGUqIHdpbm5lciA9IDA7Ci0gICAgZm9yIChO
b2RlKiBuID0gc3RhcnQ7IG47IG4gPSBSZWlmaWVkVHJlZVRyYXZlcnNhbDo6dHJhdmVyc2VOZXh0
Tm9kZVdpdGhvdXRDcm9zc2luZ1VwcGVyQm91bmRhcnkobikpCi0gICAgICAgIGlmIChzaG91bGRW
aXNpdChuLCBldmVudCkgJiYgbi0+dGFiSW5kZXgoKSA+IHRhYkluZGV4ICYmIG4tPnRhYkluZGV4
KCkgPCB3aW5uaW5nVGFiSW5kZXgpIHsKLSAgICAgICAgICAgIHdpbm5lciA9IG47Ci0gICAgICAg
ICAgICB3aW5uaW5nVGFiSW5kZXggPSBuLT50YWJJbmRleCgpOworICAgIGZvciAoQ29tcG9zZWRT
aGFkb3dUcmVlV2Fsa2VyIHdhbGtlciA9IHdhbGtlckZyb20oc3RhcnQpOyB3YWxrZXIuZ2V0KCk7
IHdhbGtlci5uZXh0KCkpIHsKKyAgICAgICAgTm9kZSogbm9kZSA9IHdhbGtlci5nZXQoKTsKKyAg
ICAgICAgaWYgKHNob3VsZFZpc2l0KG5vZGUsIGV2ZW50KSAmJiBub2RlLT50YWJJbmRleCgpID4g
dGFiSW5kZXggJiYgbm9kZS0+dGFiSW5kZXgoKSA8IHdpbm5pbmdUYWJJbmRleCkgeworICAgICAg
ICAgICAgd2lubmVyID0gbm9kZTsKKyAgICAgICAgICAgIHdpbm5pbmdUYWJJbmRleCA9IG5vZGUt
PnRhYkluZGV4KCk7CiAgICAgICAgIH0KKyAgICB9CiAKICAgICByZXR1cm4gd2lubmVyOwogfQpA
QCAtNDQ2LDEwICs0NzcsMTEgQEAgc3RhdGljIE5vZGUqIHByZXZpb3VzTm9kZVdpdGhMb3dlclRh
YkluZGV4KE5vZGUqIHN0YXJ0LCBpbnQgdGFiSW5kZXgsIEtleWJvYXJkRXYKICAgICAvLyBTZWFy
Y2ggaXMgaW5jbHVzaXZlIG9mIHN0YXJ0CiAgICAgaW50IHdpbm5pbmdUYWJJbmRleCA9IDA7CiAg
ICAgTm9kZSogd2lubmVyID0gMDsKLSAgICBmb3IgKE5vZGUqIG4gPSBzdGFydDsgbjsgbiA9IFJl
aWZpZWRUcmVlVHJhdmVyc2FsOjp0cmF2ZXJzZVByZXZpb3VzTm9kZVdpdGhvdXRDcm9zc2luZ1Vw
cGVyQm91bmRhcnkobikpIHsKLSAgICAgICAgaW50IGN1cnJlbnRUYWJJbmRleCA9IGFkanVzdGVk
VGFiSW5kZXgobiwgZXZlbnQpOwotICAgICAgICBpZiAoKHNob3VsZFZpc2l0KG4sIGV2ZW50KSB8
fCBpc05vbkZvY3VzYWJsZVNoYWRvd0hvc3QobiwgZXZlbnQpKSAmJiBjdXJyZW50VGFiSW5kZXgg
PCB0YWJJbmRleCAmJiBjdXJyZW50VGFiSW5kZXggPiB3aW5uaW5nVGFiSW5kZXgpIHsKLSAgICAg
ICAgICAgIHdpbm5lciA9IG47CisgICAgZm9yIChDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIgd2Fs
a2VyID0gd2Fsa2VyRnJvbShzdGFydCk7IHdhbGtlci5nZXQoKTsgd2Fsa2VyLnByZXZpb3VzKCkp
IHsKKyAgICAgICAgTm9kZSogbm9kZSA9IHdhbGtlci5nZXQoKTsKKyAgICAgICAgaW50IGN1cnJl
bnRUYWJJbmRleCA9IGFkanVzdGVkVGFiSW5kZXgobm9kZSwgZXZlbnQpOworICAgICAgICBpZiAo
KHNob3VsZFZpc2l0KG5vZGUsIGV2ZW50KSB8fCBpc05vbkZvY3VzYWJsZVNoYWRvd0hvc3Qobm9k
ZSwgZXZlbnQpKSAmJiBjdXJyZW50VGFiSW5kZXggPCB0YWJJbmRleCAmJiBjdXJyZW50VGFiSW5k
ZXggPiB3aW5uaW5nVGFiSW5kZXgpIHsKKyAgICAgICAgICAgIHdpbm5lciA9IG5vZGU7CiAgICAg
ICAgICAgICB3aW5uaW5nVGFiSW5kZXggPSBjdXJyZW50VGFiSW5kZXg7CiAgICAgICAgIH0KICAg
ICB9CkBAIC00NjIsMTQgKzQ5NCwxNCBAQCBOb2RlKiBGb2N1c0NvbnRyb2xsZXI6Om5leHRGb2N1
c2FibGVOb2RlKEZvY3VzU2NvcGUgc2NvcGUsIE5vZGUqIHN0YXJ0LCBLZXlib2FyZAogICAgICAg
ICBpbnQgdGFiSW5kZXggPSBhZGp1c3RlZFRhYkluZGV4KHN0YXJ0LCBldmVudCk7CiAgICAgICAg
IC8vIElmIGEgbm9kZSBpcyBleGNsdWRlZCBmcm9tIHRoZSBub3JtYWwgdGFiYmluZyBjeWNsZSwg
dGhlIG5leHQgZm9jdXNhYmxlIG5vZGUgaXMgZGV0ZXJtaW5lZCBieSB0cmVlIG9yZGVyCiAgICAg
ICAgIGlmICh0YWJJbmRleCA8IDApIHsKLSAgICAgICAgICAgIGZvciAoTm9kZSogbiA9IFJlaWZp
ZWRUcmVlVHJhdmVyc2FsOjp0cmF2ZXJzZU5leHROb2RlV2l0aG91dENyb3NzaW5nVXBwZXJCb3Vu
ZGFyeShzdGFydCk7IG47IG4gPSBSZWlmaWVkVHJlZVRyYXZlcnNhbDo6dHJhdmVyc2VOZXh0Tm9k
ZVdpdGhvdXRDcm9zc2luZ1VwcGVyQm91bmRhcnkobikpIHsKLSAgICAgICAgICAgICAgICBpZiAo
c2hvdWxkVmlzaXQobiwgZXZlbnQpICYmIGFkanVzdGVkVGFiSW5kZXgobiwgZXZlbnQpID49IDAp
Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiBuOworICAgICAgICAgICAgZm9yIChDb21wb3Nl
ZFNoYWRvd1RyZWVXYWxrZXIgd2Fsa2VyID0gd2Fsa2VyRnJvbU5leHQoc3RhcnQpOyB3YWxrZXIu
Z2V0KCk7IHdhbGtlci5uZXh0KCkpIHsKKyAgICAgICAgICAgICAgICBpZiAoc2hvdWxkVmlzaXQo
d2Fsa2VyLmdldCgpLCBldmVudCkgJiYgYWRqdXN0ZWRUYWJJbmRleCh3YWxrZXIuZ2V0KCksIGV2
ZW50KSA+PSAwKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gd2Fsa2VyLmdldCgpOwogICAg
ICAgICAgICAgfQogICAgICAgICB9CiAKICAgICAgICAgLy8gRmlyc3QgdHJ5IHRvIGZpbmQgYSBu
b2RlIHdpdGggdGhlIHNhbWUgdGFiaW5kZXggYXMgc3RhcnQgdGhhdCBjb21lcyBhZnRlciBzdGFy
dCBpbiB0aGUgc2NvcGUuCi0gICAgICAgIGlmIChOb2RlKiB3aW5uZXIgPSBmaW5kTm9kZVdpdGhF
eGFjdFRhYkluZGV4KFJlaWZpZWRUcmVlVHJhdmVyc2FsOjp0cmF2ZXJzZU5leHROb2RlV2l0aG91
dENyb3NzaW5nVXBwZXJCb3VuZGFyeShzdGFydCksIHRhYkluZGV4LCBldmVudCwgRm9jdXNEaXJl
Y3Rpb25Gb3J3YXJkKSkKKyAgICAgICAgaWYgKE5vZGUqIHdpbm5lciA9IGZpbmROb2RlV2l0aEV4
YWN0VGFiSW5kZXgobmV4dE5vZGUoc3RhcnQpLCB0YWJJbmRleCwgZXZlbnQsIEZvY3VzRGlyZWN0
aW9uRm9yd2FyZCkpCiAgICAgICAgICAgICByZXR1cm4gd2lubmVyOwogCiAgICAgICAgIGlmICgh
dGFiSW5kZXgpCkBAIC00OTAsMTUgKzUyMiwxNyBAQCBOb2RlKiBGb2N1c0NvbnRyb2xsZXI6Om5l
eHRGb2N1c2FibGVOb2RlKEZvY3VzU2NvcGUgc2NvcGUsIE5vZGUqIHN0YXJ0LCBLZXlib2FyZAog
CiBOb2RlKiBGb2N1c0NvbnRyb2xsZXI6OnByZXZpb3VzRm9jdXNhYmxlTm9kZShGb2N1c1Njb3Bl
IHNjb3BlLCBOb2RlKiBzdGFydCwgS2V5Ym9hcmRFdmVudCogZXZlbnQpCiB7Ci0gICAgTm9kZSog
bGFzdDsKLSAgICBmb3IgKGxhc3QgPSBzY29wZS5yb290Tm9kZSgpOyBSZWlmaWVkVHJlZVRyYXZl
cnNhbDo6bGFzdENoaWxkV2l0aG91dENyb3NzaW5nVXBwZXJCb3VuZGFyeShsYXN0KTsgbGFzdCA9
IFJlaWZpZWRUcmVlVHJhdmVyc2FsOjpsYXN0Q2hpbGRXaXRob3V0Q3Jvc3NpbmdVcHBlckJvdW5k
YXJ5KGxhc3QpKSB7IH0KKyAgICBOb2RlKiBsYXN0ID0gMDsKKyAgICBmb3IgKENvbXBvc2VkU2hh
ZG93VHJlZVdhbGtlciB3YWxrZXIgPSB3YWxrZXJGcm9tKHNjb3BlLnJvb3ROb2RlKCkpOyB3YWxr
ZXIuZ2V0KCk7IHdhbGtlci5sYXN0Q2hpbGQoKSkKKyAgICAgICAgbGFzdCA9IHdhbGtlci5nZXQo
KTsKKyAgICBBU1NFUlQobGFzdCk7CiAKICAgICAvLyBGaXJzdCB0cnkgdG8gZmluZCB0aGUgbGFz
dCBub2RlIGluIHRoZSBzY29wZSB0aGF0IGNvbWVzIGJlZm9yZSBzdGFydCBhbmQgaGFzIHRoZSBz
YW1lIHRhYmluZGV4IGFzIHN0YXJ0LgogICAgIC8vIElmIHN0YXJ0IGlzIG51bGwsIGZpbmQgdGhl
IGxhc3Qgbm9kZSBpbiB0aGUgc2NvcGUgd2l0aCBhIHRhYmluZGV4IG9mIDAuCiAgICAgTm9kZSog
c3RhcnRpbmdOb2RlOwogICAgIGludCBzdGFydGluZ1RhYkluZGV4OwogICAgIGlmIChzdGFydCkg
ewotICAgICAgICBzdGFydGluZ05vZGUgPSBSZWlmaWVkVHJlZVRyYXZlcnNhbDo6dHJhdmVyc2VQ
cmV2aW91c05vZGVXaXRob3V0Q3Jvc3NpbmdVcHBlckJvdW5kYXJ5KHN0YXJ0KTsKKyAgICAgICAg
c3RhcnRpbmdOb2RlID0gcHJldmlvdXNOb2RlKHN0YXJ0KTsKICAgICAgICAgc3RhcnRpbmdUYWJJ
bmRleCA9IGFkanVzdGVkVGFiSW5kZXgoc3RhcnQsIGV2ZW50KTsKICAgICB9IGVsc2UgewogICAg
ICAgICBzdGFydGluZ05vZGUgPSBsYXN0OwpAQCAtNTA3LDkgKzU0MSw5IEBAIE5vZGUqIEZvY3Vz
Q29udHJvbGxlcjo6cHJldmlvdXNGb2N1c2FibGVOb2RlKEZvY3VzU2NvcGUgc2NvcGUsIE5vZGUq
IHN0YXJ0LCBLZXliCiAKICAgICAvLyBIb3dldmVyLCBpZiBhIG5vZGUgaXMgZXhjbHVkZWQgZnJv
bSB0aGUgbm9ybWFsIHRhYmJpbmcgY3ljbGUsIHRoZSBwcmV2aW91cyBmb2N1c2FibGUgbm9kZSBp
cyBkZXRlcm1pbmVkIGJ5IHRyZWUgb3JkZXIKICAgICBpZiAoc3RhcnRpbmdUYWJJbmRleCA8IDAp
IHsKLSAgICAgICAgZm9yIChOb2RlKiBuID0gc3RhcnRpbmdOb2RlOyBuOyBuID0gUmVpZmllZFRy
ZWVUcmF2ZXJzYWw6OnRyYXZlcnNlUHJldmlvdXNOb2RlV2l0aG91dENyb3NzaW5nVXBwZXJCb3Vu
ZGFyeShuKSkgewotICAgICAgICAgICAgaWYgKHNob3VsZFZpc2l0KG4sIGV2ZW50KSAmJiBhZGp1
c3RlZFRhYkluZGV4KG4sIGV2ZW50KSA+PSAwKQotICAgICAgICAgICAgICAgIHJldHVybiBuOwor
ICAgICAgICBmb3IgKENvbXBvc2VkU2hhZG93VHJlZVdhbGtlciB3YWxrZXIgPSB3YWxrZXJGcm9t
KHN0YXJ0aW5nTm9kZSk7IHdhbGtlci5nZXQoKTsgd2Fsa2VyLnByZXZpb3VzKCkpIHsKKyAgICAg
ICAgICAgIGlmIChzaG91bGRWaXNpdCh3YWxrZXIuZ2V0KCksIGV2ZW50KSAmJiBhZGp1c3RlZFRh
YkluZGV4KHdhbGtlci5nZXQoKSwgZXZlbnQpID49IDApCisgICAgICAgICAgICAgICAgcmV0dXJu
IHdhbGtlci5nZXQoKTsKICAgICAgICAgfQogICAgIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>