<?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>146737</bug_id>
          
          <creation_ts>2015-07-08 12:41:51 -0700</creation_ts>
          <short_desc>Make ApplicationStateTracker be per view instead of being a singleton</short_desc>
          <delta_ts>2015-07-08 13:37:12 -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>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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1107846</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-07-08 12:41:51 -0700</bug_when>
    <thetext>Make ApplicationStateTracker be per view instead of being a singleton</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1107847</commentid>
    <comment_count>1</comment_count>
      <attachid>256398</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-07-08 12:43:56 -0700</bug_when>
    <thetext>Created attachment 256398
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1107848</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-08 12:46:56 -0700</bug_when>
    <thetext>Attachment 256398 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/ApplicationStateTracker.mm:101:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/ApplicationStateTracker.mm:126:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/ApplicationStateTracker.mm:130:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 3 in 4 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>1107856</commentid>
    <comment_count>3</comment_count>
      <attachid>256401</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-07-08 12:58:11 -0700</bug_when>
    <thetext>Created attachment 256401
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1107857</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-08 12:59:59 -0700</bug_when>
    <thetext>Attachment 256401 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/ApplicationStateTracker.mm:101:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/ApplicationStateTracker.mm:126:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/ApplicationStateTracker.mm:130:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 3 in 5 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>1107860</commentid>
    <comment_count>5</comment_count>
      <attachid>256401</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-07-08 13:16:52 -0700</bug_when>
    <thetext>Comment on attachment 256401
Patch

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1107862</commentid>
    <comment_count>6</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-07-08 13:37:12 -0700</bug_when>
    <thetext>Committed r186523: &lt;http://trac.webkit.org/changeset/186523&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256398</attachid>
            <date>2015-07-08 12:43:56 -0700</date>
            <delta_ts>2015-07-08 12:58:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146737-20150708124257.patch</filename>
            <type>text/plain</type>
            <size>11876</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2NTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNDY5NzE2MTI5ODQ3YzQ0
MzU0M2I4Yzg1YjJhNmJlZjg5NDRjMGViMC4uZDdkMzEyYjhiZjlhZTMzNjQzNjZlMmExMDM1ZjZh
M2YzMTgzNDA0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDE1LTA3LTA4ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBBcHBsaWNh
dGlvblN0YXRlVHJhY2tlciBiZSBwZXIgdmlldyBpbnN0ZWFkIG9mIGJlaW5nIGEgc2luZ2xldG9u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY3MzcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9BcHBsaWNhdGlvblN0YXRlVHJhY2tlci5oOgorICAgICAgICBVcGRhdGUgdG8gYmUgcGVy
IHZpZXcgaW5zdGVhZCBvZiBhIHNpbmdsZXRvbi4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BcHBs
aWNhdGlvblN0YXRlVHJhY2tlci5tbToKKyAgICAgICAgKFdlYktpdDo6QXBwbGljYXRpb25TdGF0
ZVRyYWNrZXI6OkFwcGxpY2F0aW9uU3RhdGVUcmFja2VyKToKKyAgICAgICAgQ2hhbmdlIHRvIHRh
a2UgYSB2aWV3ICsgc2VsZWN0b3JzLgorCisgICAgICAgIChXZWJLaXQ6OkFwcGxpY2F0aW9uU3Rh
dGVUcmFja2VyOjp+QXBwbGljYXRpb25TdGF0ZVRyYWNrZXIpOgorICAgICAgICBJbnZhbGlkYXRl
IHRoZSBzdGF0ZSBtb25pdG9yIGFuZCByZW1vdmUgdGhlIGxpc3RlbmVycy4KKworICAgICAgICAo
V2ViS2l0OjpBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6YXBwbGljYXRpb25EaWRFbnRlckJhY2tn
cm91bmQpOgorICAgICAgICBKdXN0IGNhbGwgdGhlIHNpbmdsZSBiYWNrZ3JvdW5kIG1ldGhvZC4K
KworICAgICAgICAoV2ViS2l0OjpBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6YXBwbGljYXRpb25X
aWxsRW50ZXJGb3JlZ3JvdW5kKToKKyAgICAgICAgSnVzdCBjYWxsIHRoZSBzaW5nbGUgZm9yZWdy
b3VuZCBtZXRob2QuCisKKyAgICAgICAgKFdlYktpdDo6QXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6
OnNpbmdsZXRvbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OkFwcGxpY2F0aW9uU3RhdGVU
cmFja2VyOjphZGRMaXN0ZW5lcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OkFwcGxpY2F0
aW9uU3RhdGVUcmFja2VyOjppbnZva2VMaXN0ZW5lcnMpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
S2l0OjpBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6cHJ1bmVMaXN0ZW5lcnMpOiBEZWxldGVkLgor
CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3Lm1tOgorICAgICAgICAoLVtX
S0NvbnRlbnRWaWV3IF9jb21tb25Jbml0aWFsaXphdGlvbldpdGhQcm9jZXNzUG9vbDpjb25maWd1
cmF0aW9uOl0pOgorICAgICAgICBDcmVhdGUgdGhlIEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyIGhl
cmUuCisKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBpc0JhY2tncm91bmRdKToKKyAgICAgICAg
R2V0IHRoZSBpdmFyIGluc3RlYWQgb2YgdGhlIHNpbmdsZXRvbi4KKwogMjAxNS0wNy0wNyAgQW5k
ZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIEFsd2F5cyBiZWdp
biBhIGJhY2tncm91bmQgdGFzayB3aGVuIG5lZWRlZCwgbm90IGp1c3Qgd2hlbiB3ZSBnbyBpbnRv
IHRoZSBiYWNrZ3JvdW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQXBw
bGljYXRpb25TdGF0ZVRyYWNrZXIuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BcHBsaWNh
dGlvblN0YXRlVHJhY2tlci5oCmluZGV4IGMyNTI1NGY2YTAwMjAxM2Y0ZGQ0NTRhNWRiM2JlOWZk
MTkzMTBjYzUuLjVhZjQ5ZGZkYWMxYjQ2OTdmMGEyMGRhNWIyNmUxMTBjYjFjNzg5OWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BcHBsaWNhdGlvblN0YXRlVHJhY2tlci5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BcHBsaWNhdGlvblN0YXRlVHJhY2tlci5o
CkBAIC0zMCw0MCArMzAsMzYgQEAKIAogI2ltcG9ydCAiV2Vha09iakNQdHIuaCIKICNpbXBvcnQg
PHd0Zi9Gb3J3YXJkLmg+Ci0jaW1wb3J0IDx3dGYvVmVjdG9yLmg+CisjaW1wb3J0IDx3dGYvV2Vh
a1B0ci5oPgorCitPQkpDX0NMQVNTIEJLU0FwcGxpY2F0aW9uU3RhdGVNb25pdG9yOworT0JKQ19D
TEFTUyBVSVZpZXc7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBBcHBsaWNhdGlvblN0
YXRlVHJhY2tlciB7Ci0gICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPEFwcGxpY2F0aW9uU3RhdGVU
cmFja2VyPjsKLQogcHVibGljOgotICAgIHN0YXRpYyBBcHBsaWNhdGlvblN0YXRlVHJhY2tlciYg
c2luZ2xldG9uKCk7CisgICAgQXBwbGljYXRpb25TdGF0ZVRyYWNrZXIoVUlWaWV3ICosIFNFTCBk
aWRFbnRlckJhY2tncm91bmRTZWxlY3RvciwgU0VMIHdpbGxFbnRlckZvcmVncm91bmRTZWxlY3Rv
cik7CisgICAgfkFwcGxpY2F0aW9uU3RhdGVUcmFja2VyKCk7CiAKICAgICBib29sIGlzSW5CYWNr
Z3JvdW5kKCkgY29uc3QgeyByZXR1cm4gbV9pc0luQmFja2dyb3VuZDsgfQogCi0gICAgdm9pZCBh
ZGRMaXN0ZW5lcihpZCwgU0VMIHdpbGxFbnRlckZvcmVncm91bmRTZWxlY3RvciwgU0VMIGRpZEVu
dGVyQmFja2dyb3VuZFNlbGVjdG9yKTsKLQogcHJpdmF0ZToKLSAgICBBcHBsaWNhdGlvblN0YXRl
VHJhY2tlcigpOwotICAgIH5BcHBsaWNhdGlvblN0YXRlVHJhY2tlcigpID0gZGVsZXRlOwotCiAg
ICAgdm9pZCBhcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZCgpOwogICAgIHZvaWQgYXBwbGlj
YXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5kKCk7CiAKLSAgICBzdHJ1Y3QgTGlzdGVuZXI7Ci0KLSAg
ICB2b2lkIGludm9rZUxpc3RlbmVycyhTRUwgTGlzdGVuZXI6OiopOwotICAgIHZvaWQgcHJ1bmVM
aXN0ZW5lcnMoKTsKKyAgICBXZWFrT2JqQ1B0cjxVSVZpZXc+IG1fdmlldzsKKyAgICBTRUwgbV9k
aWRFbnRlckJhY2tncm91bmRTZWxlY3RvcjsKKyAgICBTRUwgbV93aWxsRW50ZXJGb3JlZ3JvdW5k
U2VsZWN0b3I7CiAKICAgICBib29sIG1faXNJbkJhY2tncm91bmQ7CiAKLSAgICBzdHJ1Y3QgTGlz
dGVuZXIgewotICAgICAgICBXZWFrT2JqQ1B0cjxpZD4gb2JqZWN0OwotICAgICAgICBTRUwgZGlk
RW50ZXJCYWNrZ3JvdW5kU2VsZWN0b3I7Ci0gICAgICAgIFNFTCB3aWxsRW50ZXJGb3JlZ3JvdW5k
U2VsZWN0b3I7Ci0gICAgfTsKLSAgICBWZWN0b3I8TGlzdGVuZXI+IG1fbGlzdGVuZXJzOworICAg
IFdlYWtQdHJGYWN0b3J5PEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyPiBtX3dlYWtQdHJGYWN0b3J5
OworCisgICAgUmV0YWluUHRyPEJLU0FwcGxpY2F0aW9uU3RhdGVNb25pdG9yPiBtX2FwcGxpY2F0
aW9uU3RhdGVNb25pdG9yOworCisgICAgaWQgbV9kaWRFbnRlckJhY2tncm91bmRPYnNlcnZlcjsK
KyAgICBpZCBtX3dpbGxFbnRlckZvcmVncm91bmRPYnNlcnZlcjsKIH07CiAKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BcHBsaWNhdGlvblN0YXRlVHJhY2tlci5tbSBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BcHBsaWNhdGlvblN0YXRlVHJhY2tlci5tbQppbmRl
eCBmNzJkM2FhNGUzMGM5ZjlhZjljNDE1NTc2OWE1MGIzNjZlNmJlYzY4Li41ODg0NjI4OTFhOGMz
NTRiYWMwNjI4MDI5ODY4ZDU5NjVlY2QxYzVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQXBwbGljYXRpb25TdGF0ZVRyYWNrZXIubW0KKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FwcGxpY2F0aW9uU3RhdGVUcmFja2VyLm1tCkBAIC0zNywxMyArMzcsNiBAQAog
CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotQXBwbGljYXRpb25TdGF0ZVRyYWNrZXImIEFwcGxpY2F0
aW9uU3RhdGVUcmFja2VyOjpzaW5nbGV0b24oKQotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3ll
ZDxBcHBsaWNhdGlvblN0YXRlVHJhY2tlcj4gYXBwbGljYXRpb25TdGF0ZVRyYWNrZXI7Ci0KLSAg
ICByZXR1cm4gYXBwbGljYXRpb25TdGF0ZVRyYWNrZXI7Ci19Ci0KIHN0YXRpYyBib29sIGhhc0Vu
dGl0bGVtZW50KE5TU3RyaW5nICplbnRpdGxlbWVudCkKIHsKICNpZiBQTEFURk9STShJT1NfU0lN
VUxBVE9SKQpAQCAtODgsMTQgKzgxLDI0IEBAIHN0YXRpYyBib29sIGlzQmFja2dyb3VuZFN0YXRl
KEJLU0FwcGxpY2F0aW9uU3RhdGUgc3RhdGUpCiAgICAgfQogfQogCi1BcHBsaWNhdGlvblN0YXRl
VHJhY2tlcjo6QXBwbGljYXRpb25TdGF0ZVRyYWNrZXIoKQorQXBwbGljYXRpb25TdGF0ZVRyYWNr
ZXI6OkFwcGxpY2F0aW9uU3RhdGVUcmFja2VyKFVJVmlldyAqdmlldywgU0VMIGRpZEVudGVyQmFj
a2dyb3VuZFNlbGVjdG9yLCBTRUwgd2lsbEVudGVyRm9yZWdyb3VuZFNlbGVjdG9yKQorICAgIDog
bV92aWV3KHZpZXcpCisgICAgLCBtX2RpZEVudGVyQmFja2dyb3VuZFNlbGVjdG9yKGRpZEVudGVy
QmFja2dyb3VuZFNlbGVjdG9yKQorICAgICwgbV93aWxsRW50ZXJGb3JlZ3JvdW5kU2VsZWN0b3Io
d2lsbEVudGVyRm9yZWdyb3VuZFNlbGVjdG9yKQorICAgICwgbV93ZWFrUHRyRmFjdG9yeSh0aGlz
KQorICAgICwgbV9kaWRFbnRlckJhY2tncm91bmRPYnNlcnZlcihudWxscHRyKQorICAgICwgbV93
aWxsRW50ZXJGb3JlZ3JvdW5kT2JzZXJ2ZXIobnVsbHB0cikKIHsKKyAgICBBU1NFUlQoW21fdmll
dy5nZXQoKSByZXNwb25kc1RvU2VsZWN0b3I6bV9kaWRFbnRlckJhY2tncm91bmRTZWxlY3Rvcl0p
OworICAgIEFTU0VSVChbbV92aWV3LmdldCgpIHJlc3BvbmRzVG9TZWxlY3RvcjptX3dpbGxFbnRl
ckZvcmVncm91bmRTZWxlY3Rvcl0pOworCiAgICAgaWYgKGlzVmlld1NlcnZpY2UoKSkgewotICAg
ICAgICBCS1NBcHBsaWNhdGlvblN0YXRlTW9uaXRvciAqYXBwbGljYXRpb25TdGF0ZU1vbml0b3Ig
PSBbW0JLU0FwcGxpY2F0aW9uU3RhdGVNb25pdG9yIGFsbG9jXSBpbml0XTsKKyAgICAgICAgbV9h
cHBsaWNhdGlvblN0YXRlTW9uaXRvciA9IGFkb3B0TlMoW1tCS1NBcHBsaWNhdGlvblN0YXRlTW9u
aXRvciBhbGxvY10gaW5pdF0pOwogCi0gICAgICAgIG1faXNJbkJhY2tncm91bmQgPSBpc0JhY2tn
cm91bmRTdGF0ZShbYXBwbGljYXRpb25TdGF0ZU1vbml0b3IgbW9zdEVsZXZhdGVkQXBwbGljYXRp
b25TdGF0ZUZvclBJRDpnZXRwaWQoKV0pOworICAgICAgICBtX2lzSW5CYWNrZ3JvdW5kID0gaXNC
YWNrZ3JvdW5kU3RhdGUoW21fYXBwbGljYXRpb25TdGF0ZU1vbml0b3IgbW9zdEVsZXZhdGVkQXBw
bGljYXRpb25TdGF0ZUZvclBJRDpnZXRwaWQoKV0pOwogCi0gICAgICAgIGFwcGxpY2F0aW9uU3Rh
dGVNb25pdG9yLmhhbmRsZXIgPSBbdGhpc10oTlNEaWN0aW9uYXJ5ICp1c2VySW5mbykgeworICAg
ICAgICBhdXRvIHdlYWtUaGlzID0gbV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVXZWFrUHRyKCk7Cisg
ICAgICAgIFttX2FwcGxpY2F0aW9uU3RhdGVNb25pdG9yIHNldEhhbmRsZXI6W3dlYWtUaGlzXShO
U0RpY3Rpb25hcnkgKnVzZXJJbmZvKSB7CiAgICAgICAgICAgICBwaWRfdCBwaWQgPSBbdXNlcklu
Zm9bQktTQXBwbGljYXRpb25TdGF0ZVByb2Nlc3NJREtleV0gaW50ZWdlclZhbHVlXTsKICAgICAg
ICAgICAgIGlmIChwaWQgIT0gZ2V0cGlkKCkpCiAgICAgICAgICAgICAgICAgcmV0dXJuOwpAQCAt
MTAzLDgwICsxMDYsNjAgQEAgQXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6OkFwcGxpY2F0aW9uU3Rh
dGVUcmFja2VyKCkKICAgICAgICAgICAgIEJLU0FwcGxpY2F0aW9uU3RhdGUgbmV3U3RhdGUgPSAo
QktTQXBwbGljYXRpb25TdGF0ZSlbdXNlckluZm9bQktTQXBwbGljYXRpb25TdGF0ZU1vc3RFbGV2
YXRlZFN0YXRlRm9yUHJvY2Vzc0lES2V5XSB1bnNpZ25lZEludFZhbHVlXTsKICAgICAgICAgICAg
IGJvb2wgbmV3SW5CYWNrZ3JvdW5kID0gaXNCYWNrZ3JvdW5kU3RhdGUobmV3U3RhdGUpOwogCi0g
ICAgICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1ZSgpLCBbdGhp
cywgbmV3SW5CYWNrZ3JvdW5kXSB7Ci0gICAgICAgICAgICAgICAgaWYgKCFtX2lzSW5CYWNrZ3Jv
dW5kICYmIG5ld0luQmFja2dyb3VuZCkKLSAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb25E
aWRFbnRlckJhY2tncm91bmQoKTsKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChtX2lzSW5CYWNr
Z3JvdW5kICYmICFuZXdJbkJhY2tncm91bmQpCi0gICAgICAgICAgICAgICAgICAgIGFwcGxpY2F0
aW9uV2lsbEVudGVyRm9yZWdyb3VuZCgpOworICAgICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlz
cGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgW3dlYWtUaGlzLCBuZXdJbkJhY2tncm91bmRdIHsKKyAg
ICAgICAgICAgICAgICBhdXRvIGFwcGxpY2F0aW9uU3RhdGVUcmFja2VyID0gd2Vha1RoaXMuZ2V0
KCk7CisgICAgICAgICAgICAgICAgaWYgKCFhcHBsaWNhdGlvblN0YXRlVHJhY2tlcikKKyAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgICAgICAgICAgaWYgKCFhcHBsaWNhdGlv
blN0YXRlVHJhY2tlci0+bV9pc0luQmFja2dyb3VuZCAmJiBuZXdJbkJhY2tncm91bmQpCisgICAg
ICAgICAgICAgICAgICAgIGFwcGxpY2F0aW9uU3RhdGVUcmFja2VyLT5hcHBsaWNhdGlvbkRpZEVu
dGVyQmFja2dyb3VuZCgpOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGFwcGxpY2F0aW9uU3Rh
dGVUcmFja2VyLT5tX2lzSW5CYWNrZ3JvdW5kICYmICFuZXdJbkJhY2tncm91bmQpCisgICAgICAg
ICAgICAgICAgICAgIGFwcGxpY2F0aW9uU3RhdGVUcmFja2VyLT5hcHBsaWNhdGlvbldpbGxFbnRl
ckZvcmVncm91bmQoKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICB9OworICAgICAgICB9XTsK
ICAgICB9IGVsc2UgewogICAgICAgICBVSUFwcGxpY2F0aW9uICphcHBsaWNhdGlvbiA9IFtVSUFw
cGxpY2F0aW9uIHNoYXJlZEFwcGxpY2F0aW9uXTsKICAgICAgICAgTlNOb3RpZmljYXRpb25DZW50
ZXIgKm5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2Vu
dGVyXTsKIAogICAgICAgICBtX2lzSW5CYWNrZ3JvdW5kID0gYXBwbGljYXRpb24uYXBwbGljYXRp
b25TdGF0ZSA9PSBVSUFwcGxpY2F0aW9uU3RhdGVCYWNrZ3JvdW5kOwogCi0gICAgICAgIFtub3Rp
ZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOlVJQXBwbGljYXRpb25EaWRFbnRlckJh
Y2tncm91bmROb3RpZmljYXRpb24gb2JqZWN0OmFwcGxpY2F0aW9uIHF1ZXVlOm5pbCB1c2luZ0Js
b2NrOlt0aGlzXShOU05vdGlmaWNhdGlvbiAqKSB7CisgICAgICAgIG1fZGlkRW50ZXJCYWNrZ3Jv
dW5kT2JzZXJ2ZXIgPSBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyRm9yTmFtZTpVSUFw
cGxpY2F0aW9uRGlkRW50ZXJCYWNrZ3JvdW5kTm90aWZpY2F0aW9uIG9iamVjdDphcHBsaWNhdGlv
biBxdWV1ZTpuaWwgdXNpbmdCbG9jazpbdGhpc10oTlNOb3RpZmljYXRpb24gKikgewogICAgICAg
ICAgICAgYXBwbGljYXRpb25EaWRFbnRlckJhY2tncm91bmQoKTsKICAgICAgICAgfV07CiAKLSAg
ICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlckZvck5hbWU6VUlBcHBsaWNhdGlv
bldpbGxFbnRlckZvcmVncm91bmROb3RpZmljYXRpb24gb2JqZWN0OmFwcGxpY2F0aW9uIHF1ZXVl
Om5pbCB1c2luZ0Jsb2NrOlt0aGlzXShOU05vdGlmaWNhdGlvbiAqKSB7CisgICAgICAgIG1fd2ls
bEVudGVyRm9yZWdyb3VuZE9ic2VydmVyID0gW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZl
ckZvck5hbWU6VUlBcHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91bmROb3RpZmljYXRpb24gb2Jq
ZWN0OmFwcGxpY2F0aW9uIHF1ZXVlOm5pbCB1c2luZ0Jsb2NrOlt0aGlzXShOU05vdGlmaWNhdGlv
biAqKSB7CiAgICAgICAgICAgICBhcHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91bmQoKTsKICAg
ICAgICAgfV07CisKICAgICB9CiB9CiAKLXZvaWQgQXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6OmFk
ZExpc3RlbmVyKGlkIG9iamVjdCwgU0VMIHdpbGxFbnRlckZvcmVncm91bmRTZWxlY3RvciwgU0VM
IGRpZEVudGVyQmFja2dyb3VuZFNlbGVjdG9yKQorQXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6On5B
cHBsaWNhdGlvblN0YXRlVHJhY2tlcigpCiB7Ci0gICAgQVNTRVJUKFtvYmplY3QgcmVzcG9uZHNU
b1NlbGVjdG9yOndpbGxFbnRlckZvcmVncm91bmRTZWxlY3Rvcl0pOwotICAgIEFTU0VSVChbb2Jq
ZWN0IHJlc3BvbmRzVG9TZWxlY3RvcjpkaWRFbnRlckJhY2tncm91bmRTZWxlY3Rvcl0pOworICAg
IGlmIChtX2FwcGxpY2F0aW9uU3RhdGVNb25pdG9yKSB7CisgICAgICAgIFttX2FwcGxpY2F0aW9u
U3RhdGVNb25pdG9yIGludmFsaWRhdGVdOworICAgICAgICByZXR1cm47CisgICAgfQogCi0gICAg
bV9saXN0ZW5lcnMuYXBwZW5kKHsgb2JqZWN0LCB3aWxsRW50ZXJGb3JlZ3JvdW5kU2VsZWN0b3Is
IGRpZEVudGVyQmFja2dyb3VuZFNlbGVjdG9yIH0pOworICAgIE5TTm90aWZpY2F0aW9uQ2VudGVy
ICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRl
cl07CisgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjptX2RpZEVudGVyQmFj
a2dyb3VuZE9ic2VydmVyXTsKKyAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVy
Om1fd2lsbEVudGVyRm9yZWdyb3VuZE9ic2VydmVyXTsKIH0KIAogdm9pZCBBcHBsaWNhdGlvblN0
YXRlVHJhY2tlcjo6YXBwbGljYXRpb25EaWRFbnRlckJhY2tncm91bmQoKQogewogICAgIG1faXNJ
bkJhY2tncm91bmQgPSB0cnVlOwogCi0gICAgaW52b2tlTGlzdGVuZXJzKCZMaXN0ZW5lcjo6ZGlk
RW50ZXJCYWNrZ3JvdW5kU2VsZWN0b3IpOworICAgIGlmIChhdXRvIHZpZXcgPSBtX3ZpZXcuZ2V0
KCkpCisgICAgICAgIHd0Zk9iamNNc2dTZW5kPHZvaWQ+KHZpZXcuZ2V0KCksIG1fZGlkRW50ZXJC
YWNrZ3JvdW5kU2VsZWN0b3IpOwogfQogCiB2b2lkIEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyOjph
cHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91bmQoKQogewogICAgIG1faXNJbkJhY2tncm91bmQg
PSBmYWxzZTsKIAotICAgIGludm9rZUxpc3RlbmVycygmTGlzdGVuZXI6OndpbGxFbnRlckZvcmVn
cm91bmRTZWxlY3Rvcik7Ci19Ci0KLXZvaWQgQXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6Omludm9r
ZUxpc3RlbmVycyhTRUwgTGlzdGVuZXI6Oiogc2VsZWN0b3IpCi17Ci0gICAgYm9vbCBzaG91bGRQ
cnVuZUxpc3RlbmVycyA9IGZhbHNlOwotCi0gICAgZm9yIChhdXRvJiBsaXN0ZW5lciA6IG1fbGlz
dGVuZXJzKSB7Ci0gICAgICAgIGF1dG8gb2JqZWN0ID0gbGlzdGVuZXIub2JqZWN0LmdldCgpOwot
ICAgICAgICBpZiAoIW9iamVjdCkgewotICAgICAgICAgICAgc2hvdWxkUHJ1bmVMaXN0ZW5lcnMg
PSB0cnVlOwotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLQotICAgICAgICB3dGZP
YmpjTXNnU2VuZDx2b2lkPihvYmplY3QuZ2V0KCksIGxpc3RlbmVyLipzZWxlY3Rvcik7Ci0gICAg
fQotCi0gICAgaWYgKHNob3VsZFBydW5lTGlzdGVuZXJzKQotICAgICAgICBwcnVuZUxpc3RlbmVy
cygpOwotfQotCi12b2lkIEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyOjpwcnVuZUxpc3RlbmVycygp
Ci17Ci0gICAgYXV0byBsaXN0ZW5lcnMgPSBXVEY6Om1vdmUobV9saXN0ZW5lcnMpOwotICAgIEFT
U0VSVChtX2xpc3RlbmVycy5pc0VtcHR5KCkpOwotCi0gICAgZm9yIChhdXRvJiBsaXN0ZW5lciA6
IGxpc3RlbmVycykgewotICAgICAgICBpZiAoIWxpc3RlbmVyLm9iamVjdCkKLSAgICAgICAgICAg
IGNvbnRpbnVlOwotCi0gICAgICAgIG1fbGlzdGVuZXJzLmFwcGVuZChXVEY6Om1vdmUobGlzdGVu
ZXIpKTsKLSAgICB9CisgICAgaWYgKGF1dG8gdmlldyA9IG1fdmlldy5nZXQoKSkKKyAgICAgICAg
d3RmT2JqY01zZ1NlbmQ8dm9pZD4odmlldy5nZXQoKSwgbV93aWxsRW50ZXJGb3JlZ3JvdW5kU2Vs
ZWN0b3IpOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9z
L1dLQ29udGVudFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXcubW0KaW5kZXggMDhkOWQ0OTYxY2MwMDUwNjRlNGEzZGU5NGM3M2ZmZTAzMzYyYWFiMC4u
NDA3Y2Q3ZjFlYTZiYWY5Yjg1N2UyZjUyYmViNjdjNjkzYTQ2YjAxMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3Lm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlldy5tbQpAQCAtMTc3LDYgKzE3Nyw4IEBA
IHByaXZhdGU6CiAgICAgSGlzdG9yaWNhbFZlbG9jaXR5RGF0YSBfaGlzdG9yaWNhbEtpbmVtYXRp
Y0RhdGE7CiAKICAgICBSZXRhaW5QdHI8TlNVbmRvTWFuYWdlcj4gX3VuZG9NYW5hZ2VyOworCisg
ICAgc3RkOjp1bmlxdWVfcHRyPEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyPiBfYXBwbGljYXRpb25T
dGF0ZVRyYWNrZXI7CiB9CiAKIC0gKGluc3RhbmNldHlwZSlfY29tbW9uSW5pdGlhbGl6YXRpb25X
aXRoUHJvY2Vzc1Bvb2w6KFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2wmKXByb2Nlc3NQb29sIGNvbmZp
Z3VyYXRpb246KFdlYktpdDo6V2ViUGFnZUNvbmZpZ3VyYXRpb24pd2ViUGFnZUNvbmZpZ3VyYXRp
b24KQEAgLTIxMCw3ICsyMTIsNyBAQCBwcml2YXRlOgogCiAgICAgc2VsZi5sYXllci5oaXRUZXN0
c0FzT3BhcXVlID0gWUVTOwogCi0gICAgQXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6OnNpbmdsZXRv
bigpLmFkZExpc3RlbmVyKHNlbGYsIEBzZWxlY3RvcihfYXBwbGljYXRpb25EaWRFbnRlckJhY2tn
cm91bmQpLCBAc2VsZWN0b3IoX2FwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdyb3VuZCkpOworICAg
IF9hcHBsaWNhdGlvblN0YXRlVHJhY2tlciA9IHN0ZDo6bWFrZV91bmlxdWU8QXBwbGljYXRpb25T
dGF0ZVRyYWNrZXI+KHNlbGYsIEBzZWxlY3RvcihfYXBwbGljYXRpb25EaWRFbnRlckJhY2tncm91
bmQpLCBAc2VsZWN0b3IoX2FwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdyb3VuZCkpOwogCiAgICAg
W1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNl
bGVjdG9yOkBzZWxlY3RvcihfYXBwbGljYXRpb25XaWxsUmVzaWduQWN0aXZlOikgbmFtZTpVSUFw
cGxpY2F0aW9uV2lsbFJlc2lnbkFjdGl2ZU5vdGlmaWNhdGlvbiBvYmplY3Q6W1VJQXBwbGljYXRp
b24gc2hhcmVkQXBwbGljYXRpb25dXTsKICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1
bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKF9hcHBsaWNhdGlv
bkRpZEJlY29tZUFjdGl2ZTopIG5hbWU6VUlBcHBsaWNhdGlvbkRpZEJlY29tZUFjdGl2ZU5vdGlm
aWNhdGlvbiBvYmplY3Q6W1VJQXBwbGljYXRpb24gc2hhcmVkQXBwbGljYXRpb25dXTsKQEAgLTMw
NSw3ICszMDcsNyBAQCBwcml2YXRlOgogCiAtIChCT09MKWlzQmFja2dyb3VuZAogewotICAgIHJl
dHVybiBBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6c2luZ2xldG9uKCkuaXNJbkJhY2tncm91bmQo
KTsKKyAgICByZXR1cm4gX2FwcGxpY2F0aW9uU3RhdGVUcmFja2VyLT5pc0luQmFja2dyb3VuZCgp
OwogfQogCiAtICh2b2lkKV9zaG93SW5zcGVjdG9ySGlnaGxpZ2h0Oihjb25zdCBXZWJDb3JlOjpI
aWdobGlnaHQmKWhpZ2hsaWdodAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256401</attachid>
            <date>2015-07-08 12:58:11 -0700</date>
            <delta_ts>2015-07-08 13:16:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146737-20150708125712.patch</filename>
            <type>text/plain</type>
            <size>12487</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2NTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNDY5NzE2MTI5ODQ3YzQ0
MzU0M2I4Yzg1YjJhNmJlZjg5NDRjMGViMC4uZDdkMzEyYjhiZjlhZTMzNjQzNjZlMmExMDM1ZjZh
M2YzMTgzNDA0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDE1LTA3LTA4ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBBcHBsaWNh
dGlvblN0YXRlVHJhY2tlciBiZSBwZXIgdmlldyBpbnN0ZWFkIG9mIGJlaW5nIGEgc2luZ2xldG9u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY3MzcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9BcHBsaWNhdGlvblN0YXRlVHJhY2tlci5oOgorICAgICAgICBVcGRhdGUgdG8gYmUgcGVy
IHZpZXcgaW5zdGVhZCBvZiBhIHNpbmdsZXRvbi4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BcHBs
aWNhdGlvblN0YXRlVHJhY2tlci5tbToKKyAgICAgICAgKFdlYktpdDo6QXBwbGljYXRpb25TdGF0
ZVRyYWNrZXI6OkFwcGxpY2F0aW9uU3RhdGVUcmFja2VyKToKKyAgICAgICAgQ2hhbmdlIHRvIHRh
a2UgYSB2aWV3ICsgc2VsZWN0b3JzLgorCisgICAgICAgIChXZWJLaXQ6OkFwcGxpY2F0aW9uU3Rh
dGVUcmFja2VyOjp+QXBwbGljYXRpb25TdGF0ZVRyYWNrZXIpOgorICAgICAgICBJbnZhbGlkYXRl
IHRoZSBzdGF0ZSBtb25pdG9yIGFuZCByZW1vdmUgdGhlIGxpc3RlbmVycy4KKworICAgICAgICAo
V2ViS2l0OjpBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6YXBwbGljYXRpb25EaWRFbnRlckJhY2tn
cm91bmQpOgorICAgICAgICBKdXN0IGNhbGwgdGhlIHNpbmdsZSBiYWNrZ3JvdW5kIG1ldGhvZC4K
KworICAgICAgICAoV2ViS2l0OjpBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6YXBwbGljYXRpb25X
aWxsRW50ZXJGb3JlZ3JvdW5kKToKKyAgICAgICAgSnVzdCBjYWxsIHRoZSBzaW5nbGUgZm9yZWdy
b3VuZCBtZXRob2QuCisKKyAgICAgICAgKFdlYktpdDo6QXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6
OnNpbmdsZXRvbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OkFwcGxpY2F0aW9uU3RhdGVU
cmFja2VyOjphZGRMaXN0ZW5lcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OkFwcGxpY2F0
aW9uU3RhdGVUcmFja2VyOjppbnZva2VMaXN0ZW5lcnMpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
S2l0OjpBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6cHJ1bmVMaXN0ZW5lcnMpOiBEZWxldGVkLgor
CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3Lm1tOgorICAgICAgICAoLVtX
S0NvbnRlbnRWaWV3IF9jb21tb25Jbml0aWFsaXphdGlvbldpdGhQcm9jZXNzUG9vbDpjb25maWd1
cmF0aW9uOl0pOgorICAgICAgICBDcmVhdGUgdGhlIEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyIGhl
cmUuCisKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBpc0JhY2tncm91bmRdKToKKyAgICAgICAg
R2V0IHRoZSBpdmFyIGluc3RlYWQgb2YgdGhlIHNpbmdsZXRvbi4KKwogMjAxNS0wNy0wNyAgQW5k
ZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIEFsd2F5cyBiZWdp
biBhIGJhY2tncm91bmQgdGFzayB3aGVuIG5lZWRlZCwgbm90IGp1c3Qgd2hlbiB3ZSBnbyBpbnRv
IHRoZSBiYWNrZ3JvdW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9zcGkv
aW9zL0Fzc2VydGlvblNlcnZpY2VzU1BJLmggYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9zcGkv
aW9zL0Fzc2VydGlvblNlcnZpY2VzU1BJLmgKaW5kZXggNDE1Nzc4MDYyOWE1ZDc1NzUwOWI2Mzg4
NDI4ZDRiYTJkNzU5NjBhYi4uYWI5OTVjYmY1NmI2MWVlNDhkMmRhNjcwOTUzOTJmMjcyNGZhYWRi
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vc3BpL2lvcy9Bc3NlcnRpb25T
ZXJ2aWNlc1NQSS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL3NwaS9pb3MvQXNzZXJ0
aW9uU2VydmljZXNTUEkuaApAQCAtNTMsNiArNTMsNyBAQCB0eXBlZGVmIHZvaWQoXkJLU0FwcGxp
Y2F0aW9uU3RhdGVDaGFuZ2VkSGFuZGxlcikoTlNEaWN0aW9uYXJ5ICp1c2VySW5mbyk7CiBAcHJv
cGVydHkgKG5vbmF0b21pYywgY29weSkgQktTQXBwbGljYXRpb25TdGF0ZUNoYW5nZWRIYW5kbGVy
IGhhbmRsZXI7CiAKIC0gKEJLU0FwcGxpY2F0aW9uU3RhdGUpbW9zdEVsZXZhdGVkQXBwbGljYXRp
b25TdGF0ZUZvclBJRDoocGlkX3QpcGlkOworLSAodm9pZClpbnZhbGlkYXRlOwogCiBAZW5kCiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BcHBsaWNhdGlvblN0YXRlVHJh
Y2tlci5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FwcGxpY2F0aW9uU3RhdGVUcmFja2Vy
LmgKaW5kZXggYzI1MjU0ZjZhMDAyMDEzZjRkZDQ1NGE1ZGIzYmU5ZmQxOTMxMGNjNS4uNWFmNDlk
ZmRhYzFiNDY5N2YwYTIwZGE1YjI2ZTExMGNiMWM3ODk5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FwcGxpY2F0aW9uU3RhdGVUcmFja2VyLmgKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FwcGxpY2F0aW9uU3RhdGVUcmFja2VyLmgKQEAgLTMwLDQwICszMCwz
NiBAQAogCiAjaW1wb3J0ICJXZWFrT2JqQ1B0ci5oIgogI2ltcG9ydCA8d3RmL0ZvcndhcmQuaD4K
LSNpbXBvcnQgPHd0Zi9WZWN0b3IuaD4KKyNpbXBvcnQgPHd0Zi9XZWFrUHRyLmg+CisKK09CSkNf
Q0xBU1MgQktTQXBwbGljYXRpb25TdGF0ZU1vbml0b3I7CitPQkpDX0NMQVNTIFVJVmlldzsKIAog
bmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyIHsKLSAg
ICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8QXBwbGljYXRpb25TdGF0ZVRyYWNrZXI+OwotCiBwdWJs
aWM6Ci0gICAgc3RhdGljIEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyJiBzaW5nbGV0b24oKTsKKyAg
ICBBcHBsaWNhdGlvblN0YXRlVHJhY2tlcihVSVZpZXcgKiwgU0VMIGRpZEVudGVyQmFja2dyb3Vu
ZFNlbGVjdG9yLCBTRUwgd2lsbEVudGVyRm9yZWdyb3VuZFNlbGVjdG9yKTsKKyAgICB+QXBwbGlj
YXRpb25TdGF0ZVRyYWNrZXIoKTsKIAogICAgIGJvb2wgaXNJbkJhY2tncm91bmQoKSBjb25zdCB7
IHJldHVybiBtX2lzSW5CYWNrZ3JvdW5kOyB9CiAKLSAgICB2b2lkIGFkZExpc3RlbmVyKGlkLCBT
RUwgd2lsbEVudGVyRm9yZWdyb3VuZFNlbGVjdG9yLCBTRUwgZGlkRW50ZXJCYWNrZ3JvdW5kU2Vs
ZWN0b3IpOwotCiBwcml2YXRlOgotICAgIEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyKCk7Ci0gICAg
fkFwcGxpY2F0aW9uU3RhdGVUcmFja2VyKCkgPSBkZWxldGU7Ci0KICAgICB2b2lkIGFwcGxpY2F0
aW9uRGlkRW50ZXJCYWNrZ3JvdW5kKCk7CiAgICAgdm9pZCBhcHBsaWNhdGlvbldpbGxFbnRlckZv
cmVncm91bmQoKTsKIAotICAgIHN0cnVjdCBMaXN0ZW5lcjsKLQotICAgIHZvaWQgaW52b2tlTGlz
dGVuZXJzKFNFTCBMaXN0ZW5lcjo6Kik7Ci0gICAgdm9pZCBwcnVuZUxpc3RlbmVycygpOworICAg
IFdlYWtPYmpDUHRyPFVJVmlldz4gbV92aWV3OworICAgIFNFTCBtX2RpZEVudGVyQmFja2dyb3Vu
ZFNlbGVjdG9yOworICAgIFNFTCBtX3dpbGxFbnRlckZvcmVncm91bmRTZWxlY3RvcjsKIAogICAg
IGJvb2wgbV9pc0luQmFja2dyb3VuZDsKIAotICAgIHN0cnVjdCBMaXN0ZW5lciB7Ci0gICAgICAg
IFdlYWtPYmpDUHRyPGlkPiBvYmplY3Q7Ci0gICAgICAgIFNFTCBkaWRFbnRlckJhY2tncm91bmRT
ZWxlY3RvcjsKLSAgICAgICAgU0VMIHdpbGxFbnRlckZvcmVncm91bmRTZWxlY3RvcjsKLSAgICB9
OwotICAgIFZlY3RvcjxMaXN0ZW5lcj4gbV9saXN0ZW5lcnM7CisgICAgV2Vha1B0ckZhY3Rvcnk8
QXBwbGljYXRpb25TdGF0ZVRyYWNrZXI+IG1fd2Vha1B0ckZhY3Rvcnk7CisKKyAgICBSZXRhaW5Q
dHI8QktTQXBwbGljYXRpb25TdGF0ZU1vbml0b3I+IG1fYXBwbGljYXRpb25TdGF0ZU1vbml0b3I7
CisKKyAgICBpZCBtX2RpZEVudGVyQmFja2dyb3VuZE9ic2VydmVyOworICAgIGlkIG1fd2lsbEVu
dGVyRm9yZWdyb3VuZE9ic2VydmVyOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FwcGxpY2F0aW9uU3RhdGVUcmFja2VyLm1tIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FwcGxpY2F0aW9uU3RhdGVUcmFja2VyLm1tCmluZGV4IGY3MmQzYWE0ZTMwYzlm
OWFmOWM0MTU1NzY5YTUwYjM2NmU2YmVjNjguLjU4ODQ2Mjg5MWE4YzM1NGJhYzA2MjgwMjk4Njhk
NTk2NWVjZDFjNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BcHBsaWNh
dGlvblN0YXRlVHJhY2tlci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQXBwbGlj
YXRpb25TdGF0ZVRyYWNrZXIubW0KQEAgLTM3LDEzICszNyw2IEBACiAKIG5hbWVzcGFjZSBXZWJL
aXQgewogCi1BcHBsaWNhdGlvblN0YXRlVHJhY2tlciYgQXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6
OnNpbmdsZXRvbigpCi17Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEFwcGxpY2F0aW9uU3Rh
dGVUcmFja2VyPiBhcHBsaWNhdGlvblN0YXRlVHJhY2tlcjsKLQotICAgIHJldHVybiBhcHBsaWNh
dGlvblN0YXRlVHJhY2tlcjsKLX0KLQogc3RhdGljIGJvb2wgaGFzRW50aXRsZW1lbnQoTlNTdHJp
bmcgKmVudGl0bGVtZW50KQogewogI2lmIFBMQVRGT1JNKElPU19TSU1VTEFUT1IpCkBAIC04OCwx
NCArODEsMjQgQEAgc3RhdGljIGJvb2wgaXNCYWNrZ3JvdW5kU3RhdGUoQktTQXBwbGljYXRpb25T
dGF0ZSBzdGF0ZSkKICAgICB9CiB9CiAKLUFwcGxpY2F0aW9uU3RhdGVUcmFja2VyOjpBcHBsaWNh
dGlvblN0YXRlVHJhY2tlcigpCitBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6QXBwbGljYXRpb25T
dGF0ZVRyYWNrZXIoVUlWaWV3ICp2aWV3LCBTRUwgZGlkRW50ZXJCYWNrZ3JvdW5kU2VsZWN0b3Is
IFNFTCB3aWxsRW50ZXJGb3JlZ3JvdW5kU2VsZWN0b3IpCisgICAgOiBtX3ZpZXcodmlldykKKyAg
ICAsIG1fZGlkRW50ZXJCYWNrZ3JvdW5kU2VsZWN0b3IoZGlkRW50ZXJCYWNrZ3JvdW5kU2VsZWN0
b3IpCisgICAgLCBtX3dpbGxFbnRlckZvcmVncm91bmRTZWxlY3Rvcih3aWxsRW50ZXJGb3JlZ3Jv
dW5kU2VsZWN0b3IpCisgICAgLCBtX3dlYWtQdHJGYWN0b3J5KHRoaXMpCisgICAgLCBtX2RpZEVu
dGVyQmFja2dyb3VuZE9ic2VydmVyKG51bGxwdHIpCisgICAgLCBtX3dpbGxFbnRlckZvcmVncm91
bmRPYnNlcnZlcihudWxscHRyKQogeworICAgIEFTU0VSVChbbV92aWV3LmdldCgpIHJlc3BvbmRz
VG9TZWxlY3RvcjptX2RpZEVudGVyQmFja2dyb3VuZFNlbGVjdG9yXSk7CisgICAgQVNTRVJUKFtt
X3ZpZXcuZ2V0KCkgcmVzcG9uZHNUb1NlbGVjdG9yOm1fd2lsbEVudGVyRm9yZWdyb3VuZFNlbGVj
dG9yXSk7CisKICAgICBpZiAoaXNWaWV3U2VydmljZSgpKSB7Ci0gICAgICAgIEJLU0FwcGxpY2F0
aW9uU3RhdGVNb25pdG9yICphcHBsaWNhdGlvblN0YXRlTW9uaXRvciA9IFtbQktTQXBwbGljYXRp
b25TdGF0ZU1vbml0b3IgYWxsb2NdIGluaXRdOworICAgICAgICBtX2FwcGxpY2F0aW9uU3RhdGVN
b25pdG9yID0gYWRvcHROUyhbW0JLU0FwcGxpY2F0aW9uU3RhdGVNb25pdG9yIGFsbG9jXSBpbml0
XSk7CiAKLSAgICAgICAgbV9pc0luQmFja2dyb3VuZCA9IGlzQmFja2dyb3VuZFN0YXRlKFthcHBs
aWNhdGlvblN0YXRlTW9uaXRvciBtb3N0RWxldmF0ZWRBcHBsaWNhdGlvblN0YXRlRm9yUElEOmdl
dHBpZCgpXSk7CisgICAgICAgIG1faXNJbkJhY2tncm91bmQgPSBpc0JhY2tncm91bmRTdGF0ZShb
bV9hcHBsaWNhdGlvblN0YXRlTW9uaXRvciBtb3N0RWxldmF0ZWRBcHBsaWNhdGlvblN0YXRlRm9y
UElEOmdldHBpZCgpXSk7CiAKLSAgICAgICAgYXBwbGljYXRpb25TdGF0ZU1vbml0b3IuaGFuZGxl
ciA9IFt0aGlzXShOU0RpY3Rpb25hcnkgKnVzZXJJbmZvKSB7CisgICAgICAgIGF1dG8gd2Vha1Ro
aXMgPSBtX3dlYWtQdHJGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsKKyAgICAgICAgW21fYXBwbGlj
YXRpb25TdGF0ZU1vbml0b3Igc2V0SGFuZGxlcjpbd2Vha1RoaXNdKE5TRGljdGlvbmFyeSAqdXNl
ckluZm8pIHsKICAgICAgICAgICAgIHBpZF90IHBpZCA9IFt1c2VySW5mb1tCS1NBcHBsaWNhdGlv
blN0YXRlUHJvY2Vzc0lES2V5XSBpbnRlZ2VyVmFsdWVdOwogICAgICAgICAgICAgaWYgKHBpZCAh
PSBnZXRwaWQoKSkKICAgICAgICAgICAgICAgICByZXR1cm47CkBAIC0xMDMsODAgKzEwNiw2MCBA
QCBBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6QXBwbGljYXRpb25TdGF0ZVRyYWNrZXIoKQogICAg
ICAgICAgICAgQktTQXBwbGljYXRpb25TdGF0ZSBuZXdTdGF0ZSA9IChCS1NBcHBsaWNhdGlvblN0
YXRlKVt1c2VySW5mb1tCS1NBcHBsaWNhdGlvblN0YXRlTW9zdEVsZXZhdGVkU3RhdGVGb3JQcm9j
ZXNzSURLZXldIHVuc2lnbmVkSW50VmFsdWVdOwogICAgICAgICAgICAgYm9vbCBuZXdJbkJhY2tn
cm91bmQgPSBpc0JhY2tncm91bmRTdGF0ZShuZXdTdGF0ZSk7CiAKLSAgICAgICAgICAgIGRpc3Bh
dGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFt0aGlzLCBuZXdJbkJhY2tncm91
bmRdIHsKLSAgICAgICAgICAgICAgICBpZiAoIW1faXNJbkJhY2tncm91bmQgJiYgbmV3SW5CYWNr
Z3JvdW5kKQotICAgICAgICAgICAgICAgICAgICBhcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3Vu
ZCgpOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1faXNJbkJhY2tncm91bmQgJiYgIW5ld0lu
QmFja2dyb3VuZCkKLSAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb25XaWxsRW50ZXJGb3Jl
Z3JvdW5kKCk7CisgICAgICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9x
dWV1ZSgpLCBbd2Vha1RoaXMsIG5ld0luQmFja2dyb3VuZF0geworICAgICAgICAgICAgICAgIGF1
dG8gYXBwbGljYXRpb25TdGF0ZVRyYWNrZXIgPSB3ZWFrVGhpcy5nZXQoKTsKKyAgICAgICAgICAg
ICAgICBpZiAoIWFwcGxpY2F0aW9uU3RhdGVUcmFja2VyKQorICAgICAgICAgICAgICAgICAgICBy
ZXR1cm47CisKKyAgICAgICAgICAgICAgICBpZiAoIWFwcGxpY2F0aW9uU3RhdGVUcmFja2VyLT5t
X2lzSW5CYWNrZ3JvdW5kICYmIG5ld0luQmFja2dyb3VuZCkKKyAgICAgICAgICAgICAgICAgICAg
YXBwbGljYXRpb25TdGF0ZVRyYWNrZXItPmFwcGxpY2F0aW9uRGlkRW50ZXJCYWNrZ3JvdW5kKCk7
CisgICAgICAgICAgICAgICAgZWxzZSBpZiAoYXBwbGljYXRpb25TdGF0ZVRyYWNrZXItPm1faXNJ
bkJhY2tncm91bmQgJiYgIW5ld0luQmFja2dyb3VuZCkKKyAgICAgICAgICAgICAgICAgICAgYXBw
bGljYXRpb25TdGF0ZVRyYWNrZXItPmFwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdyb3VuZCgpOwog
ICAgICAgICAgICAgfSk7Ci0gICAgICAgIH07CisgICAgICAgIH1dOwogICAgIH0gZWxzZSB7CiAg
ICAgICAgIFVJQXBwbGljYXRpb24gKmFwcGxpY2F0aW9uID0gW1VJQXBwbGljYXRpb24gc2hhcmVk
QXBwbGljYXRpb25dOwogICAgICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9u
Q2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogCiAgICAgICAg
IG1faXNJbkJhY2tncm91bmQgPSBhcHBsaWNhdGlvbi5hcHBsaWNhdGlvblN0YXRlID09IFVJQXBw
bGljYXRpb25TdGF0ZUJhY2tncm91bmQ7CiAKLSAgICAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBh
ZGRPYnNlcnZlckZvck5hbWU6VUlBcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZE5vdGlmaWNh
dGlvbiBvYmplY3Q6YXBwbGljYXRpb24gcXVldWU6bmlsIHVzaW5nQmxvY2s6W3RoaXNdKE5TTm90
aWZpY2F0aW9uICopIHsKKyAgICAgICAgbV9kaWRFbnRlckJhY2tncm91bmRPYnNlcnZlciA9IFtu
b3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOlVJQXBwbGljYXRpb25EaWRFbnRl
ckJhY2tncm91bmROb3RpZmljYXRpb24gb2JqZWN0OmFwcGxpY2F0aW9uIHF1ZXVlOm5pbCB1c2lu
Z0Jsb2NrOlt0aGlzXShOU05vdGlmaWNhdGlvbiAqKSB7CiAgICAgICAgICAgICBhcHBsaWNhdGlv
bkRpZEVudGVyQmFja2dyb3VuZCgpOwogICAgICAgICB9XTsKIAotICAgICAgICBbbm90aWZpY2F0
aW9uQ2VudGVyIGFkZE9ic2VydmVyRm9yTmFtZTpVSUFwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdy
b3VuZE5vdGlmaWNhdGlvbiBvYmplY3Q6YXBwbGljYXRpb24gcXVldWU6bmlsIHVzaW5nQmxvY2s6
W3RoaXNdKE5TTm90aWZpY2F0aW9uICopIHsKKyAgICAgICAgbV93aWxsRW50ZXJGb3JlZ3JvdW5k
T2JzZXJ2ZXIgPSBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyRm9yTmFtZTpVSUFwcGxp
Y2F0aW9uV2lsbEVudGVyRm9yZWdyb3VuZE5vdGlmaWNhdGlvbiBvYmplY3Q6YXBwbGljYXRpb24g
cXVldWU6bmlsIHVzaW5nQmxvY2s6W3RoaXNdKE5TTm90aWZpY2F0aW9uICopIHsKICAgICAgICAg
ICAgIGFwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdyb3VuZCgpOwogICAgICAgICB9XTsKKwogICAg
IH0KIH0KIAotdm9pZCBBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6YWRkTGlzdGVuZXIoaWQgb2Jq
ZWN0LCBTRUwgd2lsbEVudGVyRm9yZWdyb3VuZFNlbGVjdG9yLCBTRUwgZGlkRW50ZXJCYWNrZ3Jv
dW5kU2VsZWN0b3IpCitBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6fkFwcGxpY2F0aW9uU3RhdGVU
cmFja2VyKCkKIHsKLSAgICBBU1NFUlQoW29iamVjdCByZXNwb25kc1RvU2VsZWN0b3I6d2lsbEVu
dGVyRm9yZWdyb3VuZFNlbGVjdG9yXSk7Ci0gICAgQVNTRVJUKFtvYmplY3QgcmVzcG9uZHNUb1Nl
bGVjdG9yOmRpZEVudGVyQmFja2dyb3VuZFNlbGVjdG9yXSk7CisgICAgaWYgKG1fYXBwbGljYXRp
b25TdGF0ZU1vbml0b3IpIHsKKyAgICAgICAgW21fYXBwbGljYXRpb25TdGF0ZU1vbml0b3IgaW52
YWxpZGF0ZV07CisgICAgICAgIHJldHVybjsKKyAgICB9CiAKLSAgICBtX2xpc3RlbmVycy5hcHBl
bmQoeyBvYmplY3QsIHdpbGxFbnRlckZvcmVncm91bmRTZWxlY3RvciwgZGlkRW50ZXJCYWNrZ3Jv
dW5kU2VsZWN0b3IgfSk7CisgICAgTlNOb3RpZmljYXRpb25DZW50ZXIgKm5vdGlmaWNhdGlvbkNl
bnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKKyAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOm1fZGlkRW50ZXJCYWNrZ3JvdW5kT2JzZXJ2ZXJd
OworICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6bV93aWxsRW50ZXJGb3Jl
Z3JvdW5kT2JzZXJ2ZXJdOwogfQogCiB2b2lkIEFwcGxpY2F0aW9uU3RhdGVUcmFja2VyOjphcHBs
aWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZCgpCiB7CiAgICAgbV9pc0luQmFja2dyb3VuZCA9IHRy
dWU7CiAKLSAgICBpbnZva2VMaXN0ZW5lcnMoJkxpc3RlbmVyOjpkaWRFbnRlckJhY2tncm91bmRT
ZWxlY3Rvcik7CisgICAgaWYgKGF1dG8gdmlldyA9IG1fdmlldy5nZXQoKSkKKyAgICAgICAgd3Rm
T2JqY01zZ1NlbmQ8dm9pZD4odmlldy5nZXQoKSwgbV9kaWRFbnRlckJhY2tncm91bmRTZWxlY3Rv
cik7CiB9CiAKIHZvaWQgQXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6OmFwcGxpY2F0aW9uV2lsbEVu
dGVyRm9yZWdyb3VuZCgpCiB7CiAgICAgbV9pc0luQmFja2dyb3VuZCA9IGZhbHNlOwogCi0gICAg
aW52b2tlTGlzdGVuZXJzKCZMaXN0ZW5lcjo6d2lsbEVudGVyRm9yZWdyb3VuZFNlbGVjdG9yKTsK
LX0KLQotdm9pZCBBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6aW52b2tlTGlzdGVuZXJzKFNFTCBM
aXN0ZW5lcjo6KiBzZWxlY3RvcikKLXsKLSAgICBib29sIHNob3VsZFBydW5lTGlzdGVuZXJzID0g
ZmFsc2U7Ci0KLSAgICBmb3IgKGF1dG8mIGxpc3RlbmVyIDogbV9saXN0ZW5lcnMpIHsKLSAgICAg
ICAgYXV0byBvYmplY3QgPSBsaXN0ZW5lci5vYmplY3QuZ2V0KCk7Ci0gICAgICAgIGlmICghb2Jq
ZWN0KSB7Ci0gICAgICAgICAgICBzaG91bGRQcnVuZUxpc3RlbmVycyA9IHRydWU7Ci0gICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgfQotCi0gICAgICAgIHd0Zk9iamNNc2dTZW5kPHZvaWQ+
KG9iamVjdC5nZXQoKSwgbGlzdGVuZXIuKnNlbGVjdG9yKTsKLSAgICB9Ci0KLSAgICBpZiAoc2hv
dWxkUHJ1bmVMaXN0ZW5lcnMpCi0gICAgICAgIHBydW5lTGlzdGVuZXJzKCk7Ci19Ci0KLXZvaWQg
QXBwbGljYXRpb25TdGF0ZVRyYWNrZXI6OnBydW5lTGlzdGVuZXJzKCkKLXsKLSAgICBhdXRvIGxp
c3RlbmVycyA9IFdURjo6bW92ZShtX2xpc3RlbmVycyk7Ci0gICAgQVNTRVJUKG1fbGlzdGVuZXJz
LmlzRW1wdHkoKSk7Ci0KLSAgICBmb3IgKGF1dG8mIGxpc3RlbmVyIDogbGlzdGVuZXJzKSB7Ci0g
ICAgICAgIGlmICghbGlzdGVuZXIub2JqZWN0KQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAg
ICAgICAgbV9saXN0ZW5lcnMuYXBwZW5kKFdURjo6bW92ZShsaXN0ZW5lcikpOwotICAgIH0KKyAg
ICBpZiAoYXV0byB2aWV3ID0gbV92aWV3LmdldCgpKQorICAgICAgICB3dGZPYmpjTXNnU2VuZDx2
b2lkPih2aWV3LmdldCgpLCBtX3dpbGxFbnRlckZvcmVncm91bmRTZWxlY3Rvcik7CiB9CiAKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlldy5t
bSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlldy5tbQppbmRleCAw
OGQ5ZDQ5NjFjYzAwNTA2NGU0YTNkZTk0YzczZmZlMDMzNjJhYWIwLi40MDdjZDdmMWVhNmJhZjli
ODU3ZTJmNTJiZWI2N2M2OTNhNDZiMDEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2lvcy9XS0NvbnRlbnRWaWV3Lm1tCkBAIC0xNzcsNiArMTc3LDggQEAgcHJpdmF0ZToKICAgICBI
aXN0b3JpY2FsVmVsb2NpdHlEYXRhIF9oaXN0b3JpY2FsS2luZW1hdGljRGF0YTsKIAogICAgIFJl
dGFpblB0cjxOU1VuZG9NYW5hZ2VyPiBfdW5kb01hbmFnZXI7CisKKyAgICBzdGQ6OnVuaXF1ZV9w
dHI8QXBwbGljYXRpb25TdGF0ZVRyYWNrZXI+IF9hcHBsaWNhdGlvblN0YXRlVHJhY2tlcjsKIH0K
IAogLSAoaW5zdGFuY2V0eXBlKV9jb21tb25Jbml0aWFsaXphdGlvbldpdGhQcm9jZXNzUG9vbDoo
V2ViS2l0OjpXZWJQcm9jZXNzUG9vbCYpcHJvY2Vzc1Bvb2wgY29uZmlndXJhdGlvbjooV2ViS2l0
OjpXZWJQYWdlQ29uZmlndXJhdGlvbil3ZWJQYWdlQ29uZmlndXJhdGlvbgpAQCAtMjEwLDcgKzIx
Miw3IEBAIHByaXZhdGU6CiAKICAgICBzZWxmLmxheWVyLmhpdFRlc3RzQXNPcGFxdWUgPSBZRVM7
CiAKLSAgICBBcHBsaWNhdGlvblN0YXRlVHJhY2tlcjo6c2luZ2xldG9uKCkuYWRkTGlzdGVuZXIo
c2VsZiwgQHNlbGVjdG9yKF9hcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZCksIEBzZWxlY3Rv
cihfYXBwbGljYXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5kKSk7CisgICAgX2FwcGxpY2F0aW9uU3Rh
dGVUcmFja2VyID0gc3RkOjptYWtlX3VuaXF1ZTxBcHBsaWNhdGlvblN0YXRlVHJhY2tlcj4oc2Vs
ZiwgQHNlbGVjdG9yKF9hcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZCksIEBzZWxlY3Rvcihf
YXBwbGljYXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5kKSk7CiAKICAgICBbW05TTm90aWZpY2F0aW9u
Q2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9y
KF9hcHBsaWNhdGlvbldpbGxSZXNpZ25BY3RpdmU6KSBuYW1lOlVJQXBwbGljYXRpb25XaWxsUmVz
aWduQWN0aXZlTm90aWZpY2F0aW9uIG9iamVjdDpbVUlBcHBsaWNhdGlvbiBzaGFyZWRBcHBsaWNh
dGlvbl1dOwogICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2Jz
ZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoX2FwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZl
OikgbmFtZTpVSUFwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZlTm90aWZpY2F0aW9uIG9iamVjdDpb
VUlBcHBsaWNhdGlvbiBzaGFyZWRBcHBsaWNhdGlvbl1dOwpAQCAtMzA1LDcgKzMwNyw3IEBAIHBy
aXZhdGU6CiAKIC0gKEJPT0wpaXNCYWNrZ3JvdW5kCiB7Ci0gICAgcmV0dXJuIEFwcGxpY2F0aW9u
U3RhdGVUcmFja2VyOjpzaW5nbGV0b24oKS5pc0luQmFja2dyb3VuZCgpOworICAgIHJldHVybiBf
YXBwbGljYXRpb25TdGF0ZVRyYWNrZXItPmlzSW5CYWNrZ3JvdW5kKCk7CiB9CiAKIC0gKHZvaWQp
X3Nob3dJbnNwZWN0b3JIaWdobGlnaHQ6KGNvbnN0IFdlYkNvcmU6OkhpZ2hsaWdodCYpaGlnaGxp
Z2h0Cg==
</data>
<flag name="review"
          id="281470"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>