<?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>54991</bug_id>
          
          <creation_ts>2011-02-22 13:33:59 -0800</creation_ts>
          <short_desc>Scrollbar::nativeTheme()-&gt;usesOverlayScrollbars() should not be consulted for CSS Scrollbars</short_desc>
          <delta_ts>2011-02-22 14:29:15 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Beth Dakin">bdakin</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bdakin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>355555</commentid>
    <comment_count>0</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-02-22 13:33:59 -0800</bug_when>
    <thetext>Right now, to determine if there are overlay scrollbars, we always consult the native theme. This is not good because that is not relevant for RenderScrollbars (CSS Scrollbars).

I have a fix.

&lt;rdar://problem/9034318&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355574</commentid>
    <comment_count>1</comment_count>
      <attachid>83381</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-02-22 14:01:32 -0800</bug_when>
    <thetext>Created attachment 83381
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355582</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-22 14:08:06 -0800</bug_when>
    <thetext>Attachment 83381 did not build on chromium:
Build output: http://queues.webkit.org/results/7944405</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355590</commentid>
    <comment_count>3</comment_count>
      <attachid>83384</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-02-22 14:12:05 -0800</bug_when>
    <thetext>Created attachment 83384
Patch that hopefully doesn&apos;t break things</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355609</commentid>
    <comment_count>4</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-02-22 14:29:15 -0800</bug_when>
    <thetext>Thanks Sam! Fixed with revision 79360.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83381</attachid>
            <date>2011-02-22 14:01:32 -0800</date>
            <delta_ts>2011-02-22 14:12:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>for-review.txt</filename>
            <type>text/plain</type>
            <size>10859</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc5MzU2KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzggQEAKKzIwMTEtMDItMjIgIEJldGggRGFr
aW4gIDxiZGFraW5AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZpeCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTU0OTkxIAorICAgICAgICBTY3JvbGxiYXI6Om5hdGl2ZVRoZW1lKCktPnVzZXNPdmVy
bGF5U2Nyb2xsYmFycygpIHNob3VsZCBub3QgYmUgY29uc3VsdGVkIGZvciBDU1MgCisgICAgICAg
IFNjcm9sbGJhcnMKKyAgICAgICAgLWFuZCBjb3JyZXNwb25kaW5nLQorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vOTAzNDMxOD4KKworICAgICAgICBJbnN0ZWFkIG9mIGNvbnN1bHRpbmcgdGhlIHRo
ZW1lIGRpcmVjdGx5LCBjYWxsZXJzIHNob3VsZCBhc2sgdGhlIFNjcm9sbGJhciBvciAKKyAgICAg
ICAgU2Nyb2xsYWJsZUFyZWEgaWYgdGhlIHNjcm9sbGJhcnMgYXJlIG92ZXJsYXkgb3Igbm90LiAK
KworICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U2Nyb2xsVmlldzo6dmlzaWJsZUNvbnRlbnRSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9s
bFZpZXc6OnNjcm9sbENvbnRlbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6Ondo
ZWVsRXZlbnQpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpzZXRTY3JvbGxPZmZzZXRGcm9tQW5pbWF0aW9u
KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpoYXNPdmVybGF5U2Nyb2xsYmFy
cyk6CisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxiYXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjppc092ZXJs
YXlTY3JvbGxiYXIpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbGJhci5oOgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94Ojpp
bmNsdWRlVmVydGljYWxTY3JvbGxiYXJTaXplKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJv
eDo6aW5jbHVkZUhvcml6b250YWxTY3JvbGxiYXJTaXplKToKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnZlcnRpY2Fs
U2Nyb2xsYmFyV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6Omhvcml6b250
YWxTY3JvbGxiYXJIZWlnaHQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxpc3RCb3g6OnZlcnRpY2FsU2Nyb2xsYmFyV2lk
dGgpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTY3JvbGxiYXIuaDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclNjcm9sbGJhcjo6aXNPdmVybGF5U2Nyb2xsYmFyKToKKwogMjAxMS0wMi0y
MiAgQW5kcmFzIEJlY3NpICA8YWJlY3NpQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgQ3NhYmEgT3N6dHJvZ29uw6FjLgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xs
Vmlldy5jcHAJKHJldmlzaW9uIDc5MzMzKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzMywxMSArMjMzLDEwIEBAIEludFJlY3Qg
U2Nyb2xsVmlldzo6dmlzaWJsZUNvbnRlbnRSZWN0KGIKICAgICBpZiAocGFpbnRzRW50aXJlQ29u
dGVudHMoKSkKICAgICAgICAgcmV0dXJuIEludFJlY3QoSW50UG9pbnQoMCwgMCksIGNvbnRlbnRz
U2l6ZSgpKTsKIAotICAgIGJvb2wgaGFzT3ZlcmxheVNjcm9sbGJhcnMgPSBTY3JvbGxiYXJUaGVt
ZTo6bmF0aXZlVGhlbWUoKS0+dXNlc092ZXJsYXlTY3JvbGxiYXJzKCk7Ci0gICAgaW50IHZlcnRp
Y2FsU2Nyb2xsYmFyV2lkdGggPSB2ZXJ0aWNhbFNjcm9sbGJhcigpICYmICFoYXNPdmVybGF5U2Ny
b2xsYmFycyAmJiAhaW5jbHVkZVNjcm9sbGJhcnMKLSAgICAgICAgPyB2ZXJ0aWNhbFNjcm9sbGJh
cigpLT53aWR0aCgpIDogMDsKLSAgICBpbnQgaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCA9IGhv
cml6b250YWxTY3JvbGxiYXIoKSAmJiAhaGFzT3ZlcmxheVNjcm9sbGJhcnMgJiYgIWluY2x1ZGVT
Y3JvbGxiYXJzCi0gICAgICAgID8gaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5oZWlnaHQoKSA6IDA7
CisgICAgaW50IHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGggPSB2ZXJ0aWNhbFNjcm9sbGJhcigpICYm
ICF2ZXJ0aWNhbFNjcm9sbGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKQorICAgICAgICAmJiAh
aW5jbHVkZVNjcm9sbGJhcnMgPyB2ZXJ0aWNhbFNjcm9sbGJhcigpLT53aWR0aCgpIDogMDsKKyAg
ICBpbnQgaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCA9IGhvcml6b250YWxTY3JvbGxiYXIoKSAm
JiAhaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKQorICAgICAgICAm
JiAhaW5jbHVkZVNjcm9sbGJhcnMgPyBob3Jpem9udGFsU2Nyb2xsYmFyKCktPmhlaWdodCgpIDog
MDsKIAogICAgIHJldHVybiBJbnRSZWN0KEludFBvaW50KG1fc2Nyb2xsT2Zmc2V0LndpZHRoKCks
IG1fc2Nyb2xsT2Zmc2V0LmhlaWdodCgpKSwKICAgICAgICAgICAgICAgICAgICBJbnRTaXplKG1h
eCgwLCBtX2JvdW5kc1NpemUud2lkdGgoKSAtIHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGgpLCAKQEAg
LTU5OCw3ICs1OTcsNyBAQCB2b2lkIFNjcm9sbFZpZXc6OnNjcm9sbENvbnRlbnRzKGNvbnN0IElu
CiAgICAgLy8gd2l0aCB0aGUgY2xpcCByZWN0IGV2ZXJ5IHRpbWUgdG8ga2VlcCBpdCBzbW9vdGgu
CiAgICAgSW50UmVjdCBjbGlwUmVjdCA9IHdpbmRvd0NsaXBSZWN0KCk7CiAgICAgSW50UmVjdCBz
Y3JvbGxWaWV3UmVjdCA9IGNvbnZlcnRUb0NvbnRhaW5pbmdXaW5kb3coSW50UmVjdCgwLCAwLCB2
aXNpYmxlV2lkdGgoKSwgdmlzaWJsZUhlaWdodCgpKSk7Ci0gICAgaWYgKFNjcm9sbGJhclRoZW1l
OjpuYXRpdmVUaGVtZSgpLT51c2VzT3ZlcmxheVNjcm9sbGJhcnMoKSkgeworICAgIGlmIChoYXNP
dmVybGF5U2Nyb2xsYmFycygpKSB7CiAgICAgICAgIGludCB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRo
ID0gdmVydGljYWxTY3JvbGxiYXIoKSA/IHZlcnRpY2FsU2Nyb2xsYmFyKCktPndpZHRoKCkgOiAw
OwogICAgICAgICBpbnQgaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCA9IGhvcml6b250YWxTY3Jv
bGxiYXIoKSA/IGhvcml6b250YWxTY3JvbGxiYXIoKS0+aGVpZ2h0KCkgOiAwOwogCkBAIC04NjAs
NyArODU5LDcgQEAgSW50UmVjdCBTY3JvbGxWaWV3OjpzY3JvbGxDb3JuZXJSZWN0KCkgYwogewog
ICAgIEludFJlY3QgY29ybmVyUmVjdDsKIAotICAgIGlmIChTY3JvbGxiYXJUaGVtZTo6bmF0aXZl
VGhlbWUoKS0+dXNlc092ZXJsYXlTY3JvbGxiYXJzKCkpCisgICAgaWYgKGhhc092ZXJsYXlTY3Jv
bGxiYXJzKCkpCiAgICAgICAgIHJldHVybiBjb3JuZXJSZWN0OwogCiAgICAgaWYgKG1faG9yaXpv
bnRhbFNjcm9sbGJhciAmJiBtX2JvdW5kc1NpemUud2lkdGgoKSAtIG1faG9yaXpvbnRhbFNjcm9s
bGJhci0+d2lkdGgoKSA+IDApIHsKQEAgLTk2Myw5ICs5NjIsMTAgQEAgdm9pZCBTY3JvbGxWaWV3
OjpwYWludChHcmFwaGljc0NvbnRleHQqIAogCiB2b2lkIFNjcm9sbFZpZXc6OmNhbGN1bGF0ZU92
ZXJoYW5nQXJlYXNGb3JQYWludGluZyhJbnRSZWN0JiBob3Jpem9udGFsT3ZlcmhhbmdSZWN0LCBJ
bnRSZWN0JiB2ZXJ0aWNhbE92ZXJoYW5nUmVjdCkKIHsKLSAgICBib29sIGhhc092ZXJsYXlTY3Jv
bGxiYXJzID0gU2Nyb2xsYmFyVGhlbWU6Om5hdGl2ZVRoZW1lKCktPnVzZXNPdmVybGF5U2Nyb2xs
YmFycygpOwotICAgIGludCB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoID0gKHZlcnRpY2FsU2Nyb2xs
YmFyKCkgJiYgIWhhc092ZXJsYXlTY3JvbGxiYXJzKSA/IHZlcnRpY2FsU2Nyb2xsYmFyKCktPndp
ZHRoKCkgOiAwOwotICAgIGludCBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0ID0gKGhvcml6b250
YWxTY3JvbGxiYXIoKSAmJiAhaGFzT3ZlcmxheVNjcm9sbGJhcnMpID8gaG9yaXpvbnRhbFNjcm9s
bGJhcigpLT5oZWlnaHQoKSA6IDA7CisgICAgaW50IHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGggPSAo
dmVydGljYWxTY3JvbGxiYXIoKSAmJiAhdmVydGljYWxTY3JvbGxiYXIoKS0+aXNPdmVybGF5U2Ny
b2xsYmFyKCkpCisgICAgICAgID8gdmVydGljYWxTY3JvbGxiYXIoKS0+d2lkdGgoKSA6IDA7Cisg
ICAgaW50IGhvcml6b250YWxTY3JvbGxiYXJIZWlnaHQgPSAoaG9yaXpvbnRhbFNjcm9sbGJhcigp
ICYmICFob3Jpem9udGFsU2Nyb2xsYmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpKQorICAgICAg
ICA/IGhvcml6b250YWxTY3JvbGxiYXIoKS0+aGVpZ2h0KCkgOiAwOwogCiAgICAgaWYgKHNjcm9s
bFkoKSA8IDApIHsKICAgICAgICAgaG9yaXpvbnRhbE92ZXJoYW5nUmVjdCA9IGZyYW1lUmVjdCgp
OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmNwcAkocmV2
aXNpb24gNzkzMzMpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTEyOCwxNyArMTI4LDE1IEBAIHZvaWQgU2Nyb2xsYWJsZUFy
ZWE6OnNldFNjcm9sbE9mZnNldEZyb20KICAgICAvLyBUZWxsIHRoZSBkZXJpdmVkIGNsYXNzIHRv
IHNjcm9sbCBpdHMgY29udGVudHMuCiAgICAgc2V0U2Nyb2xsT2Zmc2V0KG9mZnNldCk7CiAKLSAg
ICBib29sIGhhc092ZXJsYXlTY3JvbGxiYXJzID0gU2Nyb2xsYmFyVGhlbWU6Om5hdGl2ZVRoZW1l
KCktPnVzZXNPdmVybGF5U2Nyb2xsYmFycygpOwotCiAgICAgLy8gVGVsbCB0aGUgc2Nyb2xsYmFy
cyB0byB1cGRhdGUgdGhlaXIgdGh1bWIgcG9zdGlvbnMuCiAgICAgaWYgKFNjcm9sbGJhciogaG9y
aXpvbnRhbFNjcm9sbGJhciA9IHRoaXMtPmhvcml6b250YWxTY3JvbGxiYXIoKSkgewogICAgICAg
ICBob3Jpem9udGFsU2Nyb2xsYmFyLT5vZmZzZXREaWRDaGFuZ2UoKTsKLSAgICAgICAgaWYgKGhh
c092ZXJsYXlTY3JvbGxiYXJzKQorICAgICAgICBpZiAoaG9yaXpvbnRhbFNjcm9sbGJhci0+aXNP
dmVybGF5U2Nyb2xsYmFyKCkpCiAgICAgICAgICAgICBob3Jpem9udGFsU2Nyb2xsYmFyLT5pbnZh
bGlkYXRlKCk7CiAgICAgfQogICAgIGlmIChTY3JvbGxiYXIqIHZlcnRpY2FsU2Nyb2xsYmFyID0g
dGhpcy0+dmVydGljYWxTY3JvbGxiYXIoKSkgewogICAgICAgICB2ZXJ0aWNhbFNjcm9sbGJhci0+
b2Zmc2V0RGlkQ2hhbmdlKCk7Ci0gICAgICAgIGlmIChoYXNPdmVybGF5U2Nyb2xsYmFycykKKyAg
ICAgICAgaWYgKHZlcnRpY2FsU2Nyb2xsYmFyLT5pc092ZXJsYXlTY3JvbGxiYXIoKSkKICAgICAg
ICAgICAgIHZlcnRpY2FsU2Nyb2xsYmFyLT5pbnZhbGlkYXRlKCk7CiAgICAgfQogfQpAQCAtMTc5
LDQgKzE3NywxMCBAQCB2b2lkIFNjcm9sbGFibGVBcmVhOjp3aWxsUmVtb3ZlSG9yaXpvbnRhCiAg
ICAgc2Nyb2xsQW5pbWF0b3IoKS0+d2lsbFJlbW92ZUhvcml6b250YWxTY3JvbGxiYXIoc2Nyb2xs
YmFyKTsKIH0KIAorYm9vbCBTY3JvbGxhYmxlQXJlYTo6aGFzT3ZlcmxheVNjcm9sbGJhcnMoKSBj
b25zdAoreworICAgIHJldHVybiB2ZXJ0aWNhbFNjcm9sbGJhcigpICYmIHZlcnRpY2FsU2Nyb2xs
YmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpCisgICAgICAgIHx8IGhvcml6b250YWxTY3JvbGxi
YXIoKSAmJiBob3Jpem9udGFsU2Nyb2xsYmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpOworfQor
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9T
Y3JvbGxhYmxlQXJlYS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Nj
cm9sbGFibGVBcmVhLmgJKHJldmlzaW9uIDc5MzMzKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsYWJsZUFyZWEuaAkod29ya2luZyBjb3B5KQpAQCAtNjYsNiArNjYsOCBAQCBwdWJs
aWM6CiAgICAgdm9pZCBkaWRBZGRIb3Jpem9udGFsU2Nyb2xsYmFyKFNjcm9sbGJhciopOwogICAg
IHZvaWQgd2lsbFJlbW92ZUhvcml6b250YWxTY3JvbGxiYXIoU2Nyb2xsYmFyKik7CiAKKyAgICBi
b29sIGhhc092ZXJsYXlTY3JvbGxiYXJzKCkgY29uc3Q7CisKICAgICBTY3JvbGxBbmltYXRvciog
c2Nyb2xsQW5pbWF0b3IoKSBjb25zdCB7IHJldHVybiBtX3Njcm9sbEFuaW1hdG9yLmdldCgpOyB9
CiAKICAgICB2aXJ0dWFsIGludCBzY3JvbGxTaXplKFNjcm9sbGJhck9yaWVudGF0aW9uKSBjb25z
dCA9IDA7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhci5jcHAJKHJldmlzaW9u
IDc5MzMzKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNDMzLDYgKzQzMywxMSBAQCB2b2lkIFNjcm9sbGJhcjo6c2V0RW5hYmxlZChi
b29sIGUpCiAgICAgaW52YWxpZGF0ZSgpOwogfQogCitib29sIFNjcm9sbGJhcjo6aXNPdmVybGF5
U2Nyb2xsYmFyKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV90aGVtZS0+dXNlc092ZXJsYXlTY3Jv
bGxiYXJzKCk7Cit9CisKIGJvb2wgU2Nyb2xsYmFyOjppc1dpbmRvd0FjdGl2ZSgpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIG1fc2Nyb2xsYWJsZUFyZWEgJiYgbV9zY3JvbGxhYmxlQXJlYS0+aXNBY3Rp
dmUoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhci5oCShyZXZpc2lvbiA3OTMz
MykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhci5oCSh3b3JraW5nIGNvcHkp
CkBAIC04Niw2ICs4Niw4IEBAIHB1YmxpYzoKICAgICBib29sIGVuYWJsZWQoKSBjb25zdCB7IHJl
dHVybiBtX2VuYWJsZWQ7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0RW5hYmxlZChib29sIGUpOwog
CisgICAgdmlydHVhbCBib29sIGlzT3ZlcmxheVNjcm9sbGJhcigpIGNvbnN0OworCiAgICAgYm9v
bCBpc1dpbmRvd0FjdGl2ZSgpIGNvbnN0OwogCiAgICAgLy8gVGhlc2UgbWV0aG9kcyBhcmUgdXNl
ZCBmb3IgcGxhdGZvcm0gc2Nyb2xsYmFycyB0byBnaXZlIDpob3ZlciBmZWVkYmFjay4gIFRoZXkg
d2lsbCBub3QgZ2V0IGNhbGxlZApJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJveC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJv
eC5jcHAJKHJldmlzaW9uIDc5MzMzKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJveC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU2MywxNCArNTYzLDE0IEBAIEludFJlY3QgUmVu
ZGVyQm94OjpyZWZsZWN0ZWRSZWN0KGNvbnN0IEkKIAogYm9vbCBSZW5kZXJCb3g6OmluY2x1ZGVW
ZXJ0aWNhbFNjcm9sbGJhclNpemUoKSBjb25zdAogewotICAgIHJldHVybiAhU2Nyb2xsYmFyVGhl
bWU6Om5hdGl2ZVRoZW1lKCktPnVzZXNPdmVybGF5U2Nyb2xsYmFycygpIAotICAgICAgICAmJiBo
YXNPdmVyZmxvd0NsaXAoKSAmJiAoc3R5bGUoKS0+b3ZlcmZsb3dZKCkgPT0gT1NDUk9MTCB8fCBz
dHlsZSgpLT5vdmVyZmxvd1koKSA9PSBPQVVUTyk7CisgICAgcmV0dXJuIGhhc092ZXJmbG93Q2xp
cCgpICYmICFsYXllcigpLT5oYXNPdmVybGF5U2Nyb2xsYmFycygpCisgICAgICAgICYmIChzdHls
ZSgpLT5vdmVyZmxvd1koKSA9PSBPU0NST0xMIHx8IHN0eWxlKCktPm92ZXJmbG93WSgpID09IE9B
VVRPKTsKIH0KIAogYm9vbCBSZW5kZXJCb3g6OmluY2x1ZGVIb3Jpem9udGFsU2Nyb2xsYmFyU2l6
ZSgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuICFTY3JvbGxiYXJUaGVtZTo6bmF0aXZlVGhlbWUoKS0+
dXNlc092ZXJsYXlTY3JvbGxiYXJzKCkKLSAgICAgICAgJiYgaGFzT3ZlcmZsb3dDbGlwKCkgJiYg
KHN0eWxlKCktPm92ZXJmbG93WCgpID09IE9TQ1JPTEwgfHwgc3R5bGUoKS0+b3ZlcmZsb3dYKCkg
PT0gT0FVVE8pOworICAgIHJldHVybiBoYXNPdmVyZmxvd0NsaXAoKSAmJiAhbGF5ZXIoKS0+aGFz
T3ZlcmxheVNjcm9sbGJhcnMoKQorICAgICAgICAmJiAoc3R5bGUoKS0+b3ZlcmZsb3dYKCkgPT0g
T1NDUk9MTCB8fCBzdHlsZSgpLT5vdmVyZmxvd1goKSA9PSBPQVVUTyk7CiB9CiAKIGludCBSZW5k
ZXJCb3g6OnZlcnRpY2FsU2Nyb2xsYmFyV2lkdGgoKSBjb25zdApJbmRleDogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCShyZXZpc2lvbiA3OTMzMykKKysrIFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5MDEs
MTQgKzE5MDEsMTQgQEAgdm9pZCBSZW5kZXJMYXllcjo6c2V0SGFzVmVydGljYWxTY3JvbGxiYQog
CiBpbnQgUmVuZGVyTGF5ZXI6OnZlcnRpY2FsU2Nyb2xsYmFyV2lkdGgoKSBjb25zdAogewotICAg
IGlmICghbV92QmFyIHx8IFNjcm9sbGJhclRoZW1lOjpuYXRpdmVUaGVtZSgpLT51c2VzT3Zlcmxh
eVNjcm9sbGJhcnMoKSkKKyAgICBpZiAoIW1fdkJhciB8fCBtX3ZCYXItPmlzT3ZlcmxheVNjcm9s
bGJhcigpKQogICAgICAgICByZXR1cm4gMDsKICAgICByZXR1cm4gbV92QmFyLT53aWR0aCgpOwog
fQogCiBpbnQgUmVuZGVyTGF5ZXI6Omhvcml6b250YWxTY3JvbGxiYXJIZWlnaHQoKSBjb25zdAog
ewotICAgIGlmICghbV9oQmFyIHx8IFNjcm9sbGJhclRoZW1lOjpuYXRpdmVUaGVtZSgpLT51c2Vz
T3ZlcmxheVNjcm9sbGJhcnMoKSkKKyAgICBpZiAoIW1faEJhciB8fCBtX2hCYXItPmlzT3Zlcmxh
eVNjcm9sbGJhcigpKQogICAgICAgICByZXR1cm4gMDsKICAgICByZXR1cm4gbV9oQmFyLT5oZWln
aHQoKTsKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5j
cHAJKHJldmlzaW9uIDc5MzMzKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxp
c3RCb3guY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NTcsNyArNTU3LDcgQEAgaW50IFJlbmRlckxp
c3RCb3g6Oml0ZW1IZWlnaHQoKSBjb25zdAogCiBpbnQgUmVuZGVyTGlzdEJveDo6dmVydGljYWxT
Y3JvbGxiYXJXaWR0aCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fdkJhciAmJiAhU2Nyb2xsYmFy
VGhlbWU6Om5hdGl2ZVRoZW1lKCktPnVzZXNPdmVybGF5U2Nyb2xsYmFycygpID8gbV92QmFyLT53
aWR0aCgpIDogMDsKKyAgICByZXR1cm4gbV92QmFyICYmICFtX3ZCYXItPmlzT3ZlcmxheVNjcm9s
bGJhcigpID8gbV92QmFyLT53aWR0aCgpIDogMDsKIH0KIAogLy8gRklYTUU6IFdlIGlnbm9yZSBw
YWRkaW5nIGluIHRoZSB2ZXJ0aWNhbCBkaXJlY3Rpb24gYXMgZmFyIGFzIHRoZXNlIHZhbHVlcyBh
cmUgY29uY2VybmVkLCBzaW5jZSB0aGF0J3MKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJTY3JvbGxiYXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyU2Nyb2xsYmFyLmgJKHJldmlzaW9uIDc5MzMzKQorKysgU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclNjcm9sbGJhci5oCSh3b3JraW5nIGNvcHkpCkBAIC02MCw2ICs2MCw4
IEBAIHB1YmxpYzoKIAogICAgIGludCBtaW5pbXVtVGh1bWJMZW5ndGgoKTsKIAorICAgIHZpcnR1
YWwgYm9vbCBpc092ZXJsYXlTY3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorCiBw
cml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBzZXRQYXJlbnQoU2Nyb2xsVmlldyopOwogICAgIHZp
cnR1YWwgdm9pZCBzZXRFbmFibGVkKGJvb2wpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83384</attachid>
            <date>2011-02-22 14:12:05 -0800</date>
            <delta_ts>2011-02-22 14:26:08 -0800</delta_ts>
            <desc>Patch that hopefully doesn&apos;t break things</desc>
            <filename>for-review-2.txt</filename>
            <type>text/plain</type>
            <size>10863</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc5MzU2KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzggQEAKKzIwMTEtMDItMjIgIEJldGggRGFr
aW4gIDxiZGFraW5AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEZpeCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTU0OTkxIAorICAgICAgICBTY3JvbGxiYXI6Om5hdGl2ZVRoZW1lKCktPnVzZXNPdmVy
bGF5U2Nyb2xsYmFycygpIHNob3VsZCBub3QgYmUgY29uc3VsdGVkIGZvciBDU1MgCisgICAgICAg
IFNjcm9sbGJhcnMKKyAgICAgICAgLWFuZCBjb3JyZXNwb25kaW5nLQorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vOTAzNDMxOD4KKworICAgICAgICBJbnN0ZWFkIG9mIGNvbnN1bHRpbmcgdGhlIHRo
ZW1lIGRpcmVjdGx5LCBjYWxsZXJzIHNob3VsZCBhc2sgdGhlIFNjcm9sbGJhciBvciAKKyAgICAg
ICAgU2Nyb2xsYWJsZUFyZWEgaWYgdGhlIHNjcm9sbGJhcnMgYXJlIG92ZXJsYXkgb3Igbm90LiAK
KworICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U2Nyb2xsVmlldzo6dmlzaWJsZUNvbnRlbnRSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9s
bFZpZXc6OnNjcm9sbENvbnRlbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6Ondo
ZWVsRXZlbnQpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpzZXRTY3JvbGxPZmZzZXRGcm9tQW5pbWF0aW9u
KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpoYXNPdmVybGF5U2Nyb2xsYmFy
cyk6CisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxiYXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjppc092ZXJs
YXlTY3JvbGxiYXIpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbGJhci5oOgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94Ojpp
bmNsdWRlVmVydGljYWxTY3JvbGxiYXJTaXplKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJv
eDo6aW5jbHVkZUhvcml6b250YWxTY3JvbGxiYXJTaXplKToKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnZlcnRpY2Fs
U2Nyb2xsYmFyV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6Omhvcml6b250
YWxTY3JvbGxiYXJIZWlnaHQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxpc3RCb3g6OnZlcnRpY2FsU2Nyb2xsYmFyV2lk
dGgpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTY3JvbGxiYXIuaDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclNjcm9sbGJhcjo6aXNPdmVybGF5U2Nyb2xsYmFyKToKKwogMjAxMS0wMi0y
MiAgQW5kcmFzIEJlY3NpICA8YWJlY3NpQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgQ3NhYmEgT3N6dHJvZ29uw6FjLgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xs
Vmlldy5jcHAJKHJldmlzaW9uIDc5MzMzKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzMywxMSArMjMzLDEwIEBAIEludFJlY3Qg
U2Nyb2xsVmlldzo6dmlzaWJsZUNvbnRlbnRSZWN0KGIKICAgICBpZiAocGFpbnRzRW50aXJlQ29u
dGVudHMoKSkKICAgICAgICAgcmV0dXJuIEludFJlY3QoSW50UG9pbnQoMCwgMCksIGNvbnRlbnRz
U2l6ZSgpKTsKIAotICAgIGJvb2wgaGFzT3ZlcmxheVNjcm9sbGJhcnMgPSBTY3JvbGxiYXJUaGVt
ZTo6bmF0aXZlVGhlbWUoKS0+dXNlc092ZXJsYXlTY3JvbGxiYXJzKCk7Ci0gICAgaW50IHZlcnRp
Y2FsU2Nyb2xsYmFyV2lkdGggPSB2ZXJ0aWNhbFNjcm9sbGJhcigpICYmICFoYXNPdmVybGF5U2Ny
b2xsYmFycyAmJiAhaW5jbHVkZVNjcm9sbGJhcnMKLSAgICAgICAgPyB2ZXJ0aWNhbFNjcm9sbGJh
cigpLT53aWR0aCgpIDogMDsKLSAgICBpbnQgaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCA9IGhv
cml6b250YWxTY3JvbGxiYXIoKSAmJiAhaGFzT3ZlcmxheVNjcm9sbGJhcnMgJiYgIWluY2x1ZGVT
Y3JvbGxiYXJzCi0gICAgICAgID8gaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5oZWlnaHQoKSA6IDA7
CisgICAgaW50IHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGggPSB2ZXJ0aWNhbFNjcm9sbGJhcigpICYm
ICF2ZXJ0aWNhbFNjcm9sbGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKQorICAgICAgICAmJiAh
aW5jbHVkZVNjcm9sbGJhcnMgPyB2ZXJ0aWNhbFNjcm9sbGJhcigpLT53aWR0aCgpIDogMDsKKyAg
ICBpbnQgaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCA9IGhvcml6b250YWxTY3JvbGxiYXIoKSAm
JiAhaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKQorICAgICAgICAm
JiAhaW5jbHVkZVNjcm9sbGJhcnMgPyBob3Jpem9udGFsU2Nyb2xsYmFyKCktPmhlaWdodCgpIDog
MDsKIAogICAgIHJldHVybiBJbnRSZWN0KEludFBvaW50KG1fc2Nyb2xsT2Zmc2V0LndpZHRoKCks
IG1fc2Nyb2xsT2Zmc2V0LmhlaWdodCgpKSwKICAgICAgICAgICAgICAgICAgICBJbnRTaXplKG1h
eCgwLCBtX2JvdW5kc1NpemUud2lkdGgoKSAtIHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGgpLCAKQEAg
LTU5OCw3ICs1OTcsNyBAQCB2b2lkIFNjcm9sbFZpZXc6OnNjcm9sbENvbnRlbnRzKGNvbnN0IElu
CiAgICAgLy8gd2l0aCB0aGUgY2xpcCByZWN0IGV2ZXJ5IHRpbWUgdG8ga2VlcCBpdCBzbW9vdGgu
CiAgICAgSW50UmVjdCBjbGlwUmVjdCA9IHdpbmRvd0NsaXBSZWN0KCk7CiAgICAgSW50UmVjdCBz
Y3JvbGxWaWV3UmVjdCA9IGNvbnZlcnRUb0NvbnRhaW5pbmdXaW5kb3coSW50UmVjdCgwLCAwLCB2
aXNpYmxlV2lkdGgoKSwgdmlzaWJsZUhlaWdodCgpKSk7Ci0gICAgaWYgKFNjcm9sbGJhclRoZW1l
OjpuYXRpdmVUaGVtZSgpLT51c2VzT3ZlcmxheVNjcm9sbGJhcnMoKSkgeworICAgIGlmIChoYXNP
dmVybGF5U2Nyb2xsYmFycygpKSB7CiAgICAgICAgIGludCB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRo
ID0gdmVydGljYWxTY3JvbGxiYXIoKSA/IHZlcnRpY2FsU2Nyb2xsYmFyKCktPndpZHRoKCkgOiAw
OwogICAgICAgICBpbnQgaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCA9IGhvcml6b250YWxTY3Jv
bGxiYXIoKSA/IGhvcml6b250YWxTY3JvbGxiYXIoKS0+aGVpZ2h0KCkgOiAwOwogCkBAIC04NjAs
NyArODU5LDcgQEAgSW50UmVjdCBTY3JvbGxWaWV3OjpzY3JvbGxDb3JuZXJSZWN0KCkgYwogewog
ICAgIEludFJlY3QgY29ybmVyUmVjdDsKIAotICAgIGlmIChTY3JvbGxiYXJUaGVtZTo6bmF0aXZl
VGhlbWUoKS0+dXNlc092ZXJsYXlTY3JvbGxiYXJzKCkpCisgICAgaWYgKGhhc092ZXJsYXlTY3Jv
bGxiYXJzKCkpCiAgICAgICAgIHJldHVybiBjb3JuZXJSZWN0OwogCiAgICAgaWYgKG1faG9yaXpv
bnRhbFNjcm9sbGJhciAmJiBtX2JvdW5kc1NpemUud2lkdGgoKSAtIG1faG9yaXpvbnRhbFNjcm9s
bGJhci0+d2lkdGgoKSA+IDApIHsKQEAgLTk2Myw5ICs5NjIsMTAgQEAgdm9pZCBTY3JvbGxWaWV3
OjpwYWludChHcmFwaGljc0NvbnRleHQqIAogCiB2b2lkIFNjcm9sbFZpZXc6OmNhbGN1bGF0ZU92
ZXJoYW5nQXJlYXNGb3JQYWludGluZyhJbnRSZWN0JiBob3Jpem9udGFsT3ZlcmhhbmdSZWN0LCBJ
bnRSZWN0JiB2ZXJ0aWNhbE92ZXJoYW5nUmVjdCkKIHsKLSAgICBib29sIGhhc092ZXJsYXlTY3Jv
bGxiYXJzID0gU2Nyb2xsYmFyVGhlbWU6Om5hdGl2ZVRoZW1lKCktPnVzZXNPdmVybGF5U2Nyb2xs
YmFycygpOwotICAgIGludCB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoID0gKHZlcnRpY2FsU2Nyb2xs
YmFyKCkgJiYgIWhhc092ZXJsYXlTY3JvbGxiYXJzKSA/IHZlcnRpY2FsU2Nyb2xsYmFyKCktPndp
ZHRoKCkgOiAwOwotICAgIGludCBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0ID0gKGhvcml6b250
YWxTY3JvbGxiYXIoKSAmJiAhaGFzT3ZlcmxheVNjcm9sbGJhcnMpID8gaG9yaXpvbnRhbFNjcm9s
bGJhcigpLT5oZWlnaHQoKSA6IDA7CisgICAgaW50IHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGggPSAo
dmVydGljYWxTY3JvbGxiYXIoKSAmJiAhdmVydGljYWxTY3JvbGxiYXIoKS0+aXNPdmVybGF5U2Ny
b2xsYmFyKCkpCisgICAgICAgID8gdmVydGljYWxTY3JvbGxiYXIoKS0+d2lkdGgoKSA6IDA7Cisg
ICAgaW50IGhvcml6b250YWxTY3JvbGxiYXJIZWlnaHQgPSAoaG9yaXpvbnRhbFNjcm9sbGJhcigp
ICYmICFob3Jpem9udGFsU2Nyb2xsYmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpKQorICAgICAg
ICA/IGhvcml6b250YWxTY3JvbGxiYXIoKS0+aGVpZ2h0KCkgOiAwOwogCiAgICAgaWYgKHNjcm9s
bFkoKSA8IDApIHsKICAgICAgICAgaG9yaXpvbnRhbE92ZXJoYW5nUmVjdCA9IGZyYW1lUmVjdCgp
OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmNwcAkocmV2
aXNpb24gNzkzMzMpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTEyOCwxNyArMTI4LDE1IEBAIHZvaWQgU2Nyb2xsYWJsZUFy
ZWE6OnNldFNjcm9sbE9mZnNldEZyb20KICAgICAvLyBUZWxsIHRoZSBkZXJpdmVkIGNsYXNzIHRv
IHNjcm9sbCBpdHMgY29udGVudHMuCiAgICAgc2V0U2Nyb2xsT2Zmc2V0KG9mZnNldCk7CiAKLSAg
ICBib29sIGhhc092ZXJsYXlTY3JvbGxiYXJzID0gU2Nyb2xsYmFyVGhlbWU6Om5hdGl2ZVRoZW1l
KCktPnVzZXNPdmVybGF5U2Nyb2xsYmFycygpOwotCiAgICAgLy8gVGVsbCB0aGUgc2Nyb2xsYmFy
cyB0byB1cGRhdGUgdGhlaXIgdGh1bWIgcG9zdGlvbnMuCiAgICAgaWYgKFNjcm9sbGJhciogaG9y
aXpvbnRhbFNjcm9sbGJhciA9IHRoaXMtPmhvcml6b250YWxTY3JvbGxiYXIoKSkgewogICAgICAg
ICBob3Jpem9udGFsU2Nyb2xsYmFyLT5vZmZzZXREaWRDaGFuZ2UoKTsKLSAgICAgICAgaWYgKGhh
c092ZXJsYXlTY3JvbGxiYXJzKQorICAgICAgICBpZiAoaG9yaXpvbnRhbFNjcm9sbGJhci0+aXNP
dmVybGF5U2Nyb2xsYmFyKCkpCiAgICAgICAgICAgICBob3Jpem9udGFsU2Nyb2xsYmFyLT5pbnZh
bGlkYXRlKCk7CiAgICAgfQogICAgIGlmIChTY3JvbGxiYXIqIHZlcnRpY2FsU2Nyb2xsYmFyID0g
dGhpcy0+dmVydGljYWxTY3JvbGxiYXIoKSkgewogICAgICAgICB2ZXJ0aWNhbFNjcm9sbGJhci0+
b2Zmc2V0RGlkQ2hhbmdlKCk7Ci0gICAgICAgIGlmIChoYXNPdmVybGF5U2Nyb2xsYmFycykKKyAg
ICAgICAgaWYgKHZlcnRpY2FsU2Nyb2xsYmFyLT5pc092ZXJsYXlTY3JvbGxiYXIoKSkKICAgICAg
ICAgICAgIHZlcnRpY2FsU2Nyb2xsYmFyLT5pbnZhbGlkYXRlKCk7CiAgICAgfQogfQpAQCAtMTc5
LDQgKzE3NywxMCBAQCB2b2lkIFNjcm9sbGFibGVBcmVhOjp3aWxsUmVtb3ZlSG9yaXpvbnRhCiAg
ICAgc2Nyb2xsQW5pbWF0b3IoKS0+d2lsbFJlbW92ZUhvcml6b250YWxTY3JvbGxiYXIoc2Nyb2xs
YmFyKTsKIH0KIAorYm9vbCBTY3JvbGxhYmxlQXJlYTo6aGFzT3ZlcmxheVNjcm9sbGJhcnMoKSBj
b25zdAoreworICAgIHJldHVybiAodmVydGljYWxTY3JvbGxiYXIoKSAmJiB2ZXJ0aWNhbFNjcm9s
bGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKSkKKyAgICAgICAgfHwgKGhvcml6b250YWxTY3Jv
bGxiYXIoKSAmJiBob3Jpem9udGFsU2Nyb2xsYmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpKTsK
K30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsYWJsZUFyZWEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9TY3JvbGxhYmxlQXJlYS5oCShyZXZpc2lvbiA3OTMzMykKKysrIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbGFibGVBcmVhLmgJKHdvcmtpbmcgY29weSkKQEAgLTY2LDYgKzY2LDggQEAg
cHVibGljOgogICAgIHZvaWQgZGlkQWRkSG9yaXpvbnRhbFNjcm9sbGJhcihTY3JvbGxiYXIqKTsK
ICAgICB2b2lkIHdpbGxSZW1vdmVIb3Jpem9udGFsU2Nyb2xsYmFyKFNjcm9sbGJhciopOwogCisg
ICAgYm9vbCBoYXNPdmVybGF5U2Nyb2xsYmFycygpIGNvbnN0OworCiAgICAgU2Nyb2xsQW5pbWF0
b3IqIHNjcm9sbEFuaW1hdG9yKCkgY29uc3QgeyByZXR1cm4gbV9zY3JvbGxBbmltYXRvci5nZXQo
KTsgfQogCiAgICAgdmlydHVhbCBpbnQgc2Nyb2xsU2l6ZShTY3JvbGxiYXJPcmllbnRhdGlvbikg
Y29uc3QgPSAwOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuY3BwCShyZXZp
c2lvbiA3OTMzMykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTQzMyw2ICs0MzMsMTEgQEAgdm9pZCBTY3JvbGxiYXI6OnNldEVuYWJs
ZWQoYm9vbCBlKQogICAgIGludmFsaWRhdGUoKTsKIH0KIAorYm9vbCBTY3JvbGxiYXI6OmlzT3Zl
cmxheVNjcm9sbGJhcigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fdGhlbWUtPnVzZXNPdmVybGF5
U2Nyb2xsYmFycygpOworfQorCiBib29sIFNjcm9sbGJhcjo6aXNXaW5kb3dBY3RpdmUoKSBjb25z
dAogewogICAgIHJldHVybiBtX3Njcm9sbGFibGVBcmVhICYmIG1fc2Nyb2xsYWJsZUFyZWEtPmlz
QWN0aXZlKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuaAkocmV2aXNpb24g
NzkzMzMpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuaAkod29ya2luZyBj
b3B5KQpAQCAtODYsNiArODYsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBlbmFibGVkKCkgY29uc3Qg
eyByZXR1cm4gbV9lbmFibGVkOyB9CiAgICAgdmlydHVhbCB2b2lkIHNldEVuYWJsZWQoYm9vbCBl
KTsKIAorICAgIHZpcnR1YWwgYm9vbCBpc092ZXJsYXlTY3JvbGxiYXIoKSBjb25zdDsKKwogICAg
IGJvb2wgaXNXaW5kb3dBY3RpdmUoKSBjb25zdDsKIAogICAgIC8vIFRoZXNlIG1ldGhvZHMgYXJl
IHVzZWQgZm9yIHBsYXRmb3JtIHNjcm9sbGJhcnMgdG8gZ2l2ZSA6aG92ZXIgZmVlZGJhY2suICBU
aGV5IHdpbGwgbm90IGdldCBjYWxsZWQKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCb3guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCb3guY3BwCShyZXZpc2lvbiA3OTMzMykKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCb3guY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NjMsMTQgKzU2MywxNCBAQCBJbnRSZWN0
IFJlbmRlckJveDo6cmVmbGVjdGVkUmVjdChjb25zdCBJCiAKIGJvb2wgUmVuZGVyQm94OjppbmNs
dWRlVmVydGljYWxTY3JvbGxiYXJTaXplKCkgY29uc3QKIHsKLSAgICByZXR1cm4gIVNjcm9sbGJh
clRoZW1lOjpuYXRpdmVUaGVtZSgpLT51c2VzT3ZlcmxheVNjcm9sbGJhcnMoKSAKLSAgICAgICAg
JiYgaGFzT3ZlcmZsb3dDbGlwKCkgJiYgKHN0eWxlKCktPm92ZXJmbG93WSgpID09IE9TQ1JPTEwg
fHwgc3R5bGUoKS0+b3ZlcmZsb3dZKCkgPT0gT0FVVE8pOworICAgIHJldHVybiBoYXNPdmVyZmxv
d0NsaXAoKSAmJiAhbGF5ZXIoKS0+aGFzT3ZlcmxheVNjcm9sbGJhcnMoKQorICAgICAgICAmJiAo
c3R5bGUoKS0+b3ZlcmZsb3dZKCkgPT0gT1NDUk9MTCB8fCBzdHlsZSgpLT5vdmVyZmxvd1koKSA9
PSBPQVVUTyk7CiB9CiAKIGJvb2wgUmVuZGVyQm94OjppbmNsdWRlSG9yaXpvbnRhbFNjcm9sbGJh
clNpemUoKSBjb25zdAogewotICAgIHJldHVybiAhU2Nyb2xsYmFyVGhlbWU6Om5hdGl2ZVRoZW1l
KCktPnVzZXNPdmVybGF5U2Nyb2xsYmFycygpCi0gICAgICAgICYmIGhhc092ZXJmbG93Q2xpcCgp
ICYmIChzdHlsZSgpLT5vdmVyZmxvd1goKSA9PSBPU0NST0xMIHx8IHN0eWxlKCktPm92ZXJmbG93
WCgpID09IE9BVVRPKTsKKyAgICByZXR1cm4gaGFzT3ZlcmZsb3dDbGlwKCkgJiYgIWxheWVyKCkt
Pmhhc092ZXJsYXlTY3JvbGxiYXJzKCkKKyAgICAgICAgJiYgKHN0eWxlKCktPm92ZXJmbG93WCgp
ID09IE9TQ1JPTEwgfHwgc3R5bGUoKS0+b3ZlcmZsb3dYKCkgPT0gT0FVVE8pOwogfQogCiBpbnQg
UmVuZGVyQm94Ojp2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKCkgY29uc3QKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAkocmV2aXNpb24gNzkzMzMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
OTAxLDE0ICsxOTAxLDE0IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnNldEhhc1ZlcnRpY2FsU2Nyb2xs
YmEKIAogaW50IFJlbmRlckxheWVyOjp2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKCkgY29uc3QKIHsK
LSAgICBpZiAoIW1fdkJhciB8fCBTY3JvbGxiYXJUaGVtZTo6bmF0aXZlVGhlbWUoKS0+dXNlc092
ZXJsYXlTY3JvbGxiYXJzKCkpCisgICAgaWYgKCFtX3ZCYXIgfHwgbV92QmFyLT5pc092ZXJsYXlT
Y3JvbGxiYXIoKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuIG1fdkJhci0+d2lkdGgo
KTsKIH0KIAogaW50IFJlbmRlckxheWVyOjpob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0KCkgY29u
c3QKIHsKLSAgICBpZiAoIW1faEJhciB8fCBTY3JvbGxiYXJUaGVtZTo6bmF0aXZlVGhlbWUoKS0+
dXNlc092ZXJsYXlTY3JvbGxiYXJzKCkpCisgICAgaWYgKCFtX2hCYXIgfHwgbV9oQmFyLT5pc092
ZXJsYXlTY3JvbGxiYXIoKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuIG1faEJhci0+
aGVpZ2h0KCk7CiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJv
eC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RC
b3guY3BwCShyZXZpc2lvbiA3OTMzMykKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMaXN0Qm94LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTU3LDcgKzU1Nyw3IEBAIGludCBSZW5k
ZXJMaXN0Qm94OjppdGVtSGVpZ2h0KCkgY29uc3QKIAogaW50IFJlbmRlckxpc3RCb3g6OnZlcnRp
Y2FsU2Nyb2xsYmFyV2lkdGgoKSBjb25zdAogewotICAgIHJldHVybiBtX3ZCYXIgJiYgIVNjcm9s
bGJhclRoZW1lOjpuYXRpdmVUaGVtZSgpLT51c2VzT3ZlcmxheVNjcm9sbGJhcnMoKSA/IG1fdkJh
ci0+d2lkdGgoKSA6IDA7CisgICAgcmV0dXJuIG1fdkJhciAmJiAhbV92QmFyLT5pc092ZXJsYXlT
Y3JvbGxiYXIoKSA/IG1fdkJhci0+d2lkdGgoKSA6IDA7CiB9CiAKIC8vIEZJWE1FOiBXZSBpZ25v
cmUgcGFkZGluZyBpbiB0aGUgdmVydGljYWwgZGlyZWN0aW9uIGFzIGZhciBhcyB0aGVzZSB2YWx1
ZXMgYXJlIGNvbmNlcm5lZCwgc2luY2UgdGhhdCdzCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyU2Nyb2xsYmFyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclNjcm9sbGJhci5oCShyZXZpc2lvbiA3OTMzMykKKysrIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJTY3JvbGxiYXIuaAkod29ya2luZyBjb3B5KQpAQCAtNjAsNiAr
NjAsOCBAQCBwdWJsaWM6CiAKICAgICBpbnQgbWluaW11bVRodW1iTGVuZ3RoKCk7CiAKKyAgICB2
aXJ0dWFsIGJvb2wgaXNPdmVybGF5U2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0K
KwogcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgc2V0UGFyZW50KFNjcm9sbFZpZXcqKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0RW5hYmxlZChib29sKTsK
</data>
<flag name="review"
          id="75198"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>