<?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>25250</bug_id>
          
          <creation_ts>2009-04-16 15:38:00 -0700</creation_ts>
          <short_desc>Allow Windows scrollbars to snap to drag origin when mouse is dragged away</short_desc>
          <delta_ts>2009-04-21 11:35:27 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</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="Peter Kasting">pkasting</reporter>
          <assigned_to name="Peter Kasting">pkasting</assigned_to>
          <cc>hyatt</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>117827</commentid>
    <comment_count>0</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2009-04-16 15:38:00 -0700</bug_when>
    <thetext>This is a platform-native behavior that the old, pre-scrollbar-refactor Chromium code had but the new, refactored code doesn&apos;t.

I have a patch for this for both Chromium and Safari/Win (hyatt is not a huge fan of this behavior but prefers it go in both platforms for ease of future code unification).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>117832</commentid>
    <comment_count>1</comment_count>
      <attachid>29560</attachid>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2009-04-16 16:12:19 -0700</bug_when>
    <thetext>Created attachment 29560
patch v1

Per hyatt on IRC, this implements the functionality for both Chromium and Safari.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>118290</commentid>
    <comment_count>2</comment_count>
      <attachid>29560</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2009-04-21 10:57:24 -0700</bug_when>
    <thetext>Comment on attachment 29560
patch v1

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>118303</commentid>
    <comment_count>3</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2009-04-21 11:35:27 -0700</bug_when>
    <thetext>Fixed in r42721.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>29560</attachid>
            <date>2009-04-16 16:12:19 -0700</date>
            <delta_ts>2009-04-21 10:57:24 -0700</delta_ts>
            <desc>patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>14679</size>
            <attacher name="Peter Kasting">pkasting</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0MjU5NykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMDktMDQtMTYgIFBldGVyIEthc3RpbmcgIDxwa2FzdGluZ0Bnb29n
bGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTI1MAorICAgICAgICBB
bGxvdyBwbGF0Zm9ybXMgdG8gc25hcCB0aGUgc2Nyb2xsIHRodW1iIGJhY2sgdG8gdGhlIGRyYWcg
b3JpZ2luCisgICAgICAgIGR1cmluZyBhIGRyYWcuICBJbXBsZW1lbnQgZnVuY3Rpb25zIGZvciBT
YWZhcmkvV2luIGFuZCBDaHJvbWl1bS9XaW4KKyAgICAgICAgdG8gZG8gdGhpcyBzbmFwcGluZyBh
dCBkaXN0YW5jZXMgYXBwcm94aW1hdGluZyB0aGUgbmF0aXZlIG9uZXMuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9TY3JvbGxiYXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjpTY3Jv
bGxiYXIpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjpzZXRWYWx1ZSk6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxiYXI6OnNjcm9sbCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxi
YXI6Om1vdmVUaHVtYik6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxiYXI6OnNldEN1cnJlbnRQ
b3MpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjptb3VzZU1vdmVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbGJhcjo6bW91c2VEb3duKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3Jv
bGxiYXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxiYXJUaGVtZS5oOgorICAgICAgICAo
V2ViQ29yZTo6U2Nyb2xsYmFyVGhlbWU6OnNob3VsZFNuYXBCYWNrVG9EcmFnT3JpZ2luKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9TY3JvbGxiYXJUaGVtZUNocm9taXVtLmg6CisgICAg
ICAgICogcGxhdGZvcm0vY2hyb21pdW0vU2Nyb2xsYmFyVGhlbWVDaHJvbWl1bUxpbnV4LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGJhclRoZW1lQ2hyb21pdW06OnNob3VsZFNuYXBCYWNr
VG9EcmFnT3JpZ2luKToKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9TY3JvbGxiYXJUaGVt
ZUNocm9taXVtV2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGJhclRoZW1lQ2hyb21p
dW06OnNob3VsZFNuYXBCYWNrVG9EcmFnT3JpZ2luKToKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4v
U2Nyb2xsYmFyVGhlbWVXaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyVGhlbWVX
aW46OnNob3VsZENlbnRlck9uVGh1bWIpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyVGhl
bWVXaW46OnNob3VsZFNuYXBCYWNrVG9EcmFnT3JpZ2luKToKKyAgICAgICAgKiBwbGF0Zm9ybS93
aW4vU2Nyb2xsYmFyVGhlbWVXaW4uaDoKKwogMjAwOS0wNC0xNiAgQWRhbSBMYW5nbGV5ICA8YWds
QGdvb2dsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgpJbmRleDog
V2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxh
dGZvcm0vU2Nyb2xsYmFyLmNwcAkocmV2aXNpb24gNDI1ODQpCisrKyBXZWJDb3JlL3BsYXRmb3Jt
L1Njcm9sbGJhci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU3LDYgKzU3LDcgQEAgU2Nyb2xsYmFy
OjpTY3JvbGxiYXIoU2Nyb2xsYmFyQ2xpZW50KiBjbAogICAgICwgbV92aXNpYmxlU2l6ZSgwKQog
ICAgICwgbV90b3RhbFNpemUoMCkKICAgICAsIG1fY3VycmVudFBvcygwKQorICAgICwgbV9kcmFn
T3JpZ2luKDApCiAgICAgLCBtX2xpbmVTdGVwKDApCiAgICAgLCBtX3BhZ2VTdGVwKDApCiAgICAg
LCBtX3BpeGVsU3RlcCgxKQpAQCAtOTIsMTMgKzkzLDcgQEAgYm9vbCBTY3JvbGxiYXI6OnNldFZh
bHVlKGludCB2KQogICAgIHYgPSBtYXgobWluKHYsIG1fdG90YWxTaXplIC0gbV92aXNpYmxlU2l6
ZSksIDApOwogICAgIGlmICh2YWx1ZSgpID09IHYpCiAgICAgICAgIHJldHVybiBmYWxzZTsgLy8g
T3VyIHZhbHVlIHN0YXllZCB0aGUgc2FtZS4KLSAgICBtX2N1cnJlbnRQb3MgPSB2OwotCi0gICAg
dXBkYXRlVGh1bWJQb3NpdGlvbigpOwotCi0gICAgaWYgKGNsaWVudCgpKQotICAgICAgICBjbGll
bnQoKS0+dmFsdWVDaGFuZ2VkKHRoaXMpOwotICAgIAorICAgIHNldEN1cnJlbnRQb3Modik7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTEzOSwyMCArMTM0LDcgQEAgYm9vbCBTY3JvbGxiYXI6
OnNjcm9sbChTY3JvbGxEaXJlY3Rpb24gZAogICAgICAgICAKICAgICBmbG9hdCBuZXdQb3MgPSBt
X2N1cnJlbnRQb3MgKyBzdGVwICogbXVsdGlwbGllcjsKICAgICBmbG9hdCBtYXhQb3MgPSBtX3Rv
dGFsU2l6ZSAtIG1fdmlzaWJsZVNpemU7Ci0gICAgbmV3UG9zID0gbWF4KG1pbihuZXdQb3MsIG1h
eFBvcyksIDAuMGYpOwotCi0gICAgaWYgKG5ld1BvcyA9PSBtX2N1cnJlbnRQb3MpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICAKLSAgICBpbnQgb2xkVmFsdWUgPSB2YWx1ZSgpOwotICAgIG1f
Y3VycmVudFBvcyA9IG5ld1BvczsKLSAgICB1cGRhdGVUaHVtYlBvc2l0aW9uKCk7Ci0gICAgCi0g
ICAgaWYgKHZhbHVlKCkgIT0gb2xkVmFsdWUgJiYgY2xpZW50KCkpCi0gICAgICAgIGNsaWVudCgp
LT52YWx1ZUNoYW5nZWQodGhpcyk7Ci0gICAgCi0gICAgLy8gcmV0dXJuIHRydWUgZXZlbiBpZiB0
aGUgaW50ZWdlciB2YWx1ZSBkaWQgbm90IGNoYW5nZSBzbyB0aGF0IHNjcm9sbCBldmVudCBnZXRz
IGVhdGVuCi0gICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIHNldEN1cnJlbnRQb3MobWF4KG1p
bihuZXdQb3MsIG1heFBvcyksIDAuMGYpKTsKIH0KIAogdm9pZCBTY3JvbGxiYXI6OnVwZGF0ZVRo
dW1iUG9zaXRpb24oKQpAQCAtMjY5LDE1ICsyNTEsMzAgQEAgdm9pZCBTY3JvbGxiYXI6Om1vdmVU
aHVtYihpbnQgcG9zKQogICAgIGludCB0aHVtYkxlbiA9IHRoZW1lKCktPnRodW1iTGVuZ3RoKHRo
aXMpOwogICAgIGludCB0cmFja0xlbiA9IHRoZW1lKCktPnRyYWNrTGVuZ3RoKHRoaXMpOwogICAg
IGludCBtYXhQb3MgPSB0cmFja0xlbiAtIHRodW1iTGVuOwotICAgIGludCBkZWx0YSA9IHBvcyAt
IHByZXNzZWRQb3MoKTsKKyAgICBpbnQgZGVsdGEgPSBwb3MgLSBtX3ByZXNzZWRQb3M7CiAgICAg
aWYgKGRlbHRhID4gMCkKICAgICAgICAgZGVsdGEgPSBtaW4obWF4UG9zIC0gdGh1bWJQb3MsIGRl
bHRhKTsKICAgICBlbHNlIGlmIChkZWx0YSA8IDApCiAgICAgICAgIGRlbHRhID0gbWF4KC10aHVt
YlBvcywgZGVsdGEpOwotICAgIGlmIChkZWx0YSkgewotICAgICAgICBzZXRWYWx1ZShzdGF0aWNf
Y2FzdDxpbnQ+KHN0YXRpY19jYXN0PGZsb2F0Pih0aHVtYlBvcyArIGRlbHRhKSAqIG1heGltdW0o
KSAvICh0cmFja0xlbiAtIHRodW1iTGVuKSkpOwotICAgICAgICBzZXRQcmVzc2VkUG9zKHByZXNz
ZWRQb3MoKSArIHRoZW1lKCktPnRodW1iUG9zaXRpb24odGhpcykgLSB0aHVtYlBvcyk7Ci0gICAg
fQorICAgIGlmIChkZWx0YSkKKyAgICAgICAgc2V0Q3VycmVudFBvcyhzdGF0aWNfY2FzdDxmbG9h
dD4odGh1bWJQb3MgKyBkZWx0YSkgKiBtYXhpbXVtKCkgLyAodHJhY2tMZW4gLSB0aHVtYkxlbikp
OworfQorCitib29sIFNjcm9sbGJhcjo6c2V0Q3VycmVudFBvcyhmbG9hdCBwb3MpCit7CisgICAg
aWYgKHBvcyA9PSBtX2N1cnJlbnRQb3MpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlu
dCBvbGRWYWx1ZSA9IHZhbHVlKCk7CisgICAgaW50IG9sZFRodW1iUG9zID0gdGhlbWUoKS0+dGh1
bWJQb3NpdGlvbih0aGlzKTsKKyAgICBtX2N1cnJlbnRQb3MgPSBwb3M7CisgICAgdXBkYXRlVGh1
bWJQb3NpdGlvbigpOworICAgIGlmIChtX3ByZXNzZWRQYXJ0ID09IFRodW1iUGFydCkKKyAgICAg
ICAgc2V0UHJlc3NlZFBvcyhtX3ByZXNzZWRQb3MgKyB0aGVtZSgpLT50aHVtYlBvc2l0aW9uKHRo
aXMpIC0gb2xkVGh1bWJQb3MpOworCisgICAgaWYgKHZhbHVlKCkgIT0gb2xkVmFsdWUgJiYgY2xp
ZW50KCkpCisgICAgICAgIGNsaWVudCgpLT52YWx1ZUNoYW5nZWQodGhpcyk7CisgICAgcmV0dXJu
IHRydWU7CiB9CiAKIHZvaWQgU2Nyb2xsYmFyOjpzZXRIb3ZlcmVkUGFydChTY3JvbGxiYXJQYXJ0
IHBhcnQpCkBAIC0zMDYsOSArMzAzLDEzIEBAIHZvaWQgU2Nyb2xsYmFyOjpzZXRQcmVzc2VkUGFy
dChTY3JvbGxiYXIKIGJvb2wgU2Nyb2xsYmFyOjptb3VzZU1vdmVkKGNvbnN0IFBsYXRmb3JtTW91
c2VFdmVudCYgZXZ0KQogewogICAgIGlmIChtX3ByZXNzZWRQYXJ0ID09IFRodW1iUGFydCkgewot
ICAgICAgICBtb3ZlVGh1bWIobV9vcmllbnRhdGlvbiA9PSBIb3Jpem9udGFsU2Nyb2xsYmFyID8g
Ci0gICAgICAgICAgICAgICAgICBjb252ZXJ0RnJvbUNvbnRhaW5pbmdXaW5kb3coZXZ0LnBvcygp
KS54KCkgOgotICAgICAgICAgICAgICAgICAgY29udmVydEZyb21Db250YWluaW5nV2luZG93KGV2
dC5wb3MoKSkueSgpKTsKKyAgICAgICAgaWYgKHRoZW1lKCktPnNob3VsZFNuYXBCYWNrVG9EcmFn
T3JpZ2luKHRoaXMsIGV2dCkpCisgICAgICAgICAgICBzZXRDdXJyZW50UG9zKG1fZHJhZ09yaWdp
bik7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgbW92ZVRodW1iKG1fb3JpZW50YXRpb24g
PT0gSG9yaXpvbnRhbFNjcm9sbGJhciA/IAorICAgICAgICAgICAgICAgICAgICAgIGNvbnZlcnRG
cm9tQ29udGFpbmluZ1dpbmRvdyhldnQucG9zKCkpLngoKSA6CisgICAgICAgICAgICAgICAgICAg
ICAgY29udmVydEZyb21Db250YWluaW5nV2luZG93KGV2dC5wb3MoKSkueSgpKTsKKyAgICAgICAg
fQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKQEAgLTM2NCw5ICszNjUsMTAgQEAgYm9v
bCBTY3JvbGxiYXI6Om1vdXNlRG93bihjb25zdCBQbGF0Zm9ybQogICAgIHNldFByZXNzZWRQYXJ0
KHRoZW1lKCktPmhpdFRlc3QodGhpcywgZXZ0KSk7CiAgICAgaW50IHByZXNzZWRQb3MgPSAob3Jp
ZW50YXRpb24oKSA9PSBIb3Jpem9udGFsU2Nyb2xsYmFyID8gY29udmVydEZyb21Db250YWluaW5n
V2luZG93KGV2dC5wb3MoKSkueCgpIDogY29udmVydEZyb21Db250YWluaW5nV2luZG93KGV2dC5w
b3MoKSkueSgpKTsKICAgICAKLSAgICBpZiAoKHByZXNzZWRQYXJ0KCkgPT0gQmFja1RyYWNrUGFy
dCB8fCBwcmVzc2VkUGFydCgpID09IEZvcndhcmRUcmFja1BhcnQpICYmIHRoZW1lKCktPnNob3Vs
ZENlbnRlck9uVGh1bWIodGhpcywgZXZ0KSkgeworICAgIGlmICgobV9wcmVzc2VkUGFydCA9PSBC
YWNrVHJhY2tQYXJ0IHx8IG1fcHJlc3NlZFBhcnQgPT0gRm9yd2FyZFRyYWNrUGFydCkgJiYgdGhl
bWUoKS0+c2hvdWxkQ2VudGVyT25UaHVtYih0aGlzLCBldnQpKSB7CiAgICAgICAgIHNldEhvdmVy
ZWRQYXJ0KFRodW1iUGFydCk7CiAgICAgICAgIHNldFByZXNzZWRQYXJ0KFRodW1iUGFydCk7Cisg
ICAgICAgIG1fZHJhZ09yaWdpbiA9IG1fY3VycmVudFBvczsKICAgICAgICAgaW50IHRodW1iTGVu
ID0gdGhlbWUoKS0+dGh1bWJMZW5ndGgodGhpcyk7CiAgICAgICAgIGludCBkZXNpcmVkUG9zID0g
cHJlc3NlZFBvczsKICAgICAgICAgLy8gU2V0IHRoZSBwcmVzc2VkIHBvc2l0aW9uIHRvIHRoZSBt
aWRkbGUgb2YgdGhlIHRodW1iIHNvIHRoYXQgd2hlbiB3ZSBkbyB0aGUgbW92ZSwgdGhlIGRlbHRh
CkBAIC0zNzQsNyArMzc2LDggQEAgYm9vbCBTY3JvbGxiYXI6Om1vdXNlRG93bihjb25zdCBQbGF0
Zm9ybQogICAgICAgICBtX3ByZXNzZWRQb3MgPSB0aGVtZSgpLT50cmFja1Bvc2l0aW9uKHRoaXMp
ICsgdGhlbWUoKS0+dGh1bWJQb3NpdGlvbih0aGlzKSArIHRodW1iTGVuIC8gMjsKICAgICAgICAg
bW92ZVRodW1iKGRlc2lyZWRQb3MpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9CisgICAg
fSBlbHNlIGlmIChtX3ByZXNzZWRQYXJ0ID09IFRodW1iUGFydCkKKyAgICAgICAgbV9kcmFnT3Jp
Z2luID0gbV9jdXJyZW50UG9zOwogICAgIAogICAgIG1fcHJlc3NlZFBvcyA9IHByZXNzZWRQb3M7
CiAKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuaAkocmV2aXNpb24gNDI1ODQpCisrKyBXZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbGJhci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzcsNiArMTM3LDcgQEAgcHJv
dGVjdGVkOgogICAgIFNjcm9sbEdyYW51bGFyaXR5IHByZXNzZWRQYXJ0U2Nyb2xsR3JhbnVsYXJp
dHkoKTsKICAgICAKICAgICB2b2lkIG1vdmVUaHVtYihpbnQgcG9zKTsKKyAgICBib29sIHNldEN1
cnJlbnRQb3MoZmxvYXQgcG9zKTsKIAogICAgIFNjcm9sbGJhckNsaWVudCogbV9jbGllbnQ7CiAg
ICAgU2Nyb2xsYmFyT3JpZW50YXRpb24gbV9vcmllbnRhdGlvbjsKQEAgLTE0Niw2ICsxNDcsNyBA
QCBwcm90ZWN0ZWQ6CiAgICAgaW50IG1fdmlzaWJsZVNpemU7CiAgICAgaW50IG1fdG90YWxTaXpl
OwogICAgIGZsb2F0IG1fY3VycmVudFBvczsKKyAgICBmbG9hdCBtX2RyYWdPcmlnaW47CiAgICAg
aW50IG1fbGluZVN0ZXA7CiAgICAgaW50IG1fcGFnZVN0ZXA7CiAgICAgZmxvYXQgbV9waXhlbFN0
ZXA7CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhclRoZW1lLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXJUaGVtZS5oCShyZXZpc2lvbiA0MjU4NCkKKysr
IFdlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyVGhlbWUuaAkod29ya2luZyBjb3B5KQpAQCAtNzYs
NiArNzYsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBhaW50U2Nyb2xsQ29ybmVyKFNj
cm9sbFZpZXcqLCBHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIGNvcm5l
clJlY3QpIHsgY29udGV4dC0+ZmlsbFJlY3QoY29ybmVyUmVjdCwgQ29sb3I6OndoaXRlKTsgfQog
CiAgICAgdmlydHVhbCBib29sIHNob3VsZENlbnRlck9uVGh1bWIoU2Nyb2xsYmFyKiwgY29uc3Qg
UGxhdGZvcm1Nb3VzZUV2ZW50JikgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wg
c2hvdWxkU25hcEJhY2tUb0RyYWdPcmlnaW4oU2Nyb2xsYmFyKiwgY29uc3QgUGxhdGZvcm1Nb3Vz
ZUV2ZW50JikgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGludCB0aHVtYlBvc2l0aW9u
KFNjcm9sbGJhciopIHsgcmV0dXJuIDA7IH0gLy8gVGhlIHBvc2l0aW9uIG9mIHRoZSB0aHVtYiBy
ZWxhdGl2ZSB0byB0aGUgdHJhY2suCiAgICAgdmlydHVhbCBpbnQgdGh1bWJMZW5ndGgoU2Nyb2xs
YmFyKikgeyByZXR1cm4gMDsgfSAvLyBUaGUgbGVuZ3RoIG9mIHRoZSB0aHVtYiBhbG9uZyB0aGUg
YXhpcyBvZiB0aGUgc2Nyb2xsYmFyLgogICAgIHZpcnR1YWwgaW50IHRyYWNrUG9zaXRpb24oU2Ny
b2xsYmFyKikgeyByZXR1cm4gMDsgfSAvLyBUaGUgcG9zaXRpb24gb2YgdGhlIHRyYWNrIHJlbGF0
aXZlIHRvIHRoZSBzY3JvbGxiYXIuCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1Nj
cm9sbGJhclRoZW1lQ2hyb21pdW0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2No
cm9taXVtL1Njcm9sbGJhclRoZW1lQ2hyb21pdW0uaAkocmV2aXNpb24gNDI1ODQpCisrKyBXZWJD
b3JlL3BsYXRmb3JtL2Nocm9taXVtL1Njcm9sbGJhclRoZW1lQ2hyb21pdW0uaAkod29ya2luZyBj
b3B5KQpAQCAtNjMsNiArNjMsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgdmly
dHVhbCB2b2lkIHBhaW50U2Nyb2xsQ29ybmVyKFNjcm9sbFZpZXcqLCBHcmFwaGljc0NvbnRleHQq
LCBjb25zdCBJbnRSZWN0Jik7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBzaG91bGRDZW50ZXJPblRo
dW1iKFNjcm9sbGJhciosIGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYpOworICAgICAgICB2aXJ0
dWFsIGJvb2wgc2hvdWxkU25hcEJhY2tUb0RyYWdPcmlnaW4oU2Nyb2xsYmFyKiwgY29uc3QgUGxh
dGZvcm1Nb3VzZUV2ZW50Jik7CiAKICAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50VHJhY2tCYWNr
Z3JvdW5kKEdyYXBoaWNzQ29udGV4dCosIFNjcm9sbGJhciosIGNvbnN0IEludFJlY3QmKTsKICAg
ICAgICAgdmlydHVhbCB2b2lkIHBhaW50VHJhY2tQaWVjZShHcmFwaGljc0NvbnRleHQqLCBTY3Jv
bGxiYXIqLCBjb25zdCBJbnRSZWN0JiwgU2Nyb2xsYmFyUGFydCk7CkluZGV4OiBXZWJDb3JlL3Bs
YXRmb3JtL2Nocm9taXVtL1Njcm9sbGJhclRoZW1lQ2hyb21pdW1MaW51eC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9TY3JvbGxiYXJUaGVtZUNocm9taXVtTGlu
dXguY3BwCShyZXZpc2lvbiA0MjU4NCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vU2Ny
b2xsYmFyVGhlbWVDaHJvbWl1bUxpbnV4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzMsNiArNzMs
MTEgQEAgc3RhdGljIHZvaWQgZHJhd0JveChTa0NhbnZhcyogY2FudmFzLCBjbwogICAgIGRyYXdW
ZXJ0TGluZShjYW52YXMsIHJlY3QueCgpLCByZWN0LnkoKSwgYm90dG9tLCBwYWludCk7CiB9CiAK
K2Jvb2wgU2Nyb2xsYmFyVGhlbWVDaHJvbWl1bTo6c2hvdWxkU25hcEJhY2tUb0RyYWdPcmlnaW4o
U2Nyb2xsYmFyKiwgY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JikKK3sKKyAgICByZXR1cm4gZmFs
c2U7Cit9CisKIHZvaWQgU2Nyb2xsYmFyVGhlbWVDaHJvbWl1bTo6cGFpbnRUcmFja1BpZWNlKEdy
YXBoaWNzQ29udGV4dCogZ2MsIFNjcm9sbGJhciogc2Nyb2xsYmFyLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW50UmVjdCYgcmVjdCwgU2Nyb2xs
YmFyUGFydCBwYXJ0VHlwZSkKIHsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vU2Ny
b2xsYmFyVGhlbWVDaHJvbWl1bVdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9y
bS9jaHJvbWl1bS9TY3JvbGxiYXJUaGVtZUNocm9taXVtV2luLmNwcAkocmV2aXNpb24gNDI1ODQp
CisrKyBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1Njcm9sbGJhclRoZW1lQ2hyb21pdW1XaW4u
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2ICs0NCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAvLyBNZXRyaWNzIG9idGFpbmVkIHVzaW5nIFtOU1Njcm9sbGVyIHNjcm9sbGVyV2lkdGhGb3JD
b250cm9sU2l6ZTpdCiBzdGF0aWMgY29uc3QgaW50IGtNYWNTY3JvbGxiYXJTaXplWzNdID0geyAx
NSwgMTEsIDE1IH07CiAKKy8vIENvbnN0YW50cyB1c2VkIHRvIGZpZ3VyZSB0aGUgZHJhZyByZWN0
IG91dHNpZGUgd2hpY2ggd2Ugc2hvdWxkIHNuYXAgdGhlCisvLyBzY3JvbGxiYXIgdGh1bWIgYmFj
ayB0byBpdHMgb3JpZ2luLiAgVGhlc2UgY2FsY3VsYXRpb25zIGFyZSBiYXNlZCBvbgorLy8gb2Jz
ZXJ2aW5nIHRoZSBiZWhhdmlvciBvZiB0aGUgTVNWQzggbWFpbiB3aW5kb3cgc2Nyb2xsYmFyICsg
c29tZQorLy8gZ3Vlc3NpbmcvZXh0cmFwb2xhdGlvbi4KK3N0YXRpYyBjb25zdCBpbnQga09mZkVu
ZE11bHRpcGxpZXIgPSAzOworc3RhdGljIGNvbnN0IGludCBrT2ZmU2lkZU11bHRpcGxpZXIgPSA4
OworCiBpbnQgU2Nyb2xsYmFyVGhlbWVDaHJvbWl1bTo6c2Nyb2xsYmFyVGhpY2tuZXNzKFNjcm9s
bGJhckNvbnRyb2xTaXplIGNvbnRyb2xTaXplKQogewogICAgIHN0YXRpYyBpbnQgdGhpY2tuZXNz
OwpAQCAtNjAsNiArNjcsMjQgQEAgYm9vbCBTY3JvbGxiYXJUaGVtZUNocm9taXVtOjppbnZhbGlk
YXRlTwogICAgIHJldHVybiBpc1Zpc3RhT3JOZXdlcigpOwogfQogCitib29sIFNjcm9sbGJhclRo
ZW1lQ2hyb21pdW06OnNob3VsZFNuYXBCYWNrVG9EcmFnT3JpZ2luKFNjcm9sbGJhciogc2Nyb2xs
YmFyLCBjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2dCkKK3sKKyAgICAvLyBGaW5kIHRoZSBy
ZWN0IHdpdGhpbiB3aGljaCB3ZSBzaG91bGRuJ3Qgc25hcCwgYnkgZXhwYW5kaW5nIHRoZSB0cmFj
ayByZWN0CisgICAgLy8gaW4gYm90aCBkaW1lbnNpb25zLgorICAgIEludFJlY3QgcmVjdCA9IHRy
YWNrUmVjdChzY3JvbGxiYXIpOworICAgIGNvbnN0IGJvb2wgaG9yeiA9IHNjcm9sbGJhci0+b3Jp
ZW50YXRpb24oKSA9PSBIb3Jpem9udGFsU2Nyb2xsYmFyOworICAgIGNvbnN0IGludCB0aGlja25l
c3MgPSBzY3JvbGxiYXJUaGlja25lc3Moc2Nyb2xsYmFyLT5jb250cm9sU2l6ZSgpKTsKKyAgICBy
ZWN0LmluZmxhdGVYKChob3J6ID8ga09mZkVuZE11bHRpcGxpZXIgOiBrT2ZmU2lkZU11bHRpcGxp
ZXIpICogdGhpY2tuZXNzKTsKKyAgICByZWN0LmluZmxhdGVZKChob3J6ID8ga09mZlNpZGVNdWx0
aXBsaWVyIDoga09mZkVuZE11bHRpcGxpZXIpICogdGhpY2tuZXNzKTsKKworICAgIC8vIENvbnZl
cnQgdGhlIGV2ZW50IHRvIGxvY2FsIGNvb3JkaW5hdGVzLgorICAgIEludFBvaW50IG1vdXNlUG9z
aXRpb24gPSBzY3JvbGxiYXItPmNvbnZlcnRGcm9tQ29udGFpbmluZ1dpbmRvdyhldnQucG9zKCkp
OworICAgIG1vdXNlUG9zaXRpb24ubW92ZShzY3JvbGxiYXItPngoKSwgc2Nyb2xsYmFyLT55KCkp
OworCisgICAgLy8gV2Ugc2hvdWxkIHNuYXAgaWZmIHRoZSBldmVudCBpcyBvdXRzaWRlIG91ciBj
YWxjdWxhdGVkIHJlY3QuCisgICAgcmV0dXJuICFyZWN0LmNvbnRhaW5zKG1vdXNlUG9zaXRpb24p
OworfQorCiB2b2lkIFNjcm9sbGJhclRoZW1lQ2hyb21pdW06OnBhaW50VHJhY2tQaWVjZShHcmFw
aGljc0NvbnRleHQqIGdjLCBTY3JvbGxiYXIqIHNjcm9sbGJhciwgY29uc3QgSW50UmVjdCYgcmVj
dCwgU2Nyb2xsYmFyUGFydCBwYXJ0VHlwZSkKIHsKICAgICBib29sIGhvcnogPSBzY3JvbGxiYXIt
Pm9yaWVudGF0aW9uKCkgPT0gSG9yaXpvbnRhbFNjcm9sbGJhcjsKSW5kZXg6IFdlYkNvcmUvcGxh
dGZvcm0vd2luL1Njcm9sbGJhclRoZW1lV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Bs
YXRmb3JtL3dpbi9TY3JvbGxiYXJUaGVtZVdpbi5jcHAJKHJldmlzaW9uIDQyNTg0KQorKysgV2Vi
Q29yZS9wbGF0Zm9ybS93aW4vU2Nyb2xsYmFyVGhlbWVXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC03Miw2ICs3MiwxMyBAQCBTT0ZUX0xJTksodXh0aGVtZSwgRHJhd1RoZW1lQmFja2dyb3VuZCwg
CiBTT0ZUX0xJTksodXh0aGVtZSwgSXNUaGVtZUFjdGl2ZSwgQk9PTCwgV0lOQVBJLCAoKSwgKCkp
CiBTT0ZUX0xJTksodXh0aGVtZSwgSXNUaGVtZUJhY2tncm91bmRQYXJ0aWFsbHlUcmFuc3BhcmVu
dCwgQk9PTCwgV0lOQVBJLCAoSEFORExFIGhUaGVtZSwgaW50IGlQYXJ0SWQsIGludCBpU3RhdGVJ
ZCksIChoVGhlbWUsIGlQYXJ0SWQsIGlTdGF0ZUlkKSkKIAorLy8gQ29uc3RhbnRzIHVzZWQgdG8g
ZmlndXJlIHRoZSBkcmFnIHJlY3Qgb3V0c2lkZSB3aGljaCB3ZSBzaG91bGQgc25hcCB0aGUKKy8v
IHNjcm9sbGJhciB0aHVtYiBiYWNrIHRvIGl0cyBvcmlnaW4uICBUaGVzZSBjYWxjdWxhdGlvbnMg
YXJlIGJhc2VkIG9uCisvLyBvYnNlcnZpbmcgdGhlIGJlaGF2aW9yIG9mIHRoZSBNU1ZDOCBtYWlu
IHdpbmRvdyBzY3JvbGxiYXIgKyBzb21lCisvLyBndWVzc2luZy9leHRyYXBvbGF0aW9uLgorc3Rh
dGljIGNvbnN0IGludCBrT2ZmRW5kTXVsdGlwbGllciA9IDM7CitzdGF0aWMgY29uc3QgaW50IGtP
ZmZTaWRlTXVsdGlwbGllciA9IDg7CisKIHN0YXRpYyB2b2lkIGNoZWNrQW5kSW5pdFNjcm9sbGJh
clRoZW1lKCkKIHsKICAgICBpZiAodXh0aGVtZUxpYnJhcnkoKSAmJiAhc2Nyb2xsYmFyVGhlbWUg
JiYgSXNUaGVtZUFjdGl2ZSgpKQpAQCAtMTgwLDYgKzE4NywyOSBAQCBJbnRSZWN0IFNjcm9sbGJh
clRoZW1lV2luOjp0cmFja1JlY3QoU2NyCiAgICAgcmV0dXJuIEludFJlY3Qoc2Nyb2xsYmFyLT54
KCksIHNjcm9sbGJhci0+eSgpICsgdGhpY2tuZXNzLCB0aGlja25lc3MsIHNjcm9sbGJhci0+aGVp
Z2h0KCkgLSAyICogdGhpY2tuZXNzKTsKIH0KIAorYm9vbCBTY3JvbGxiYXJUaGVtZVdpbjo6c2hv
dWxkQ2VudGVyT25UaHVtYihTY3JvbGxiYXIqLCBjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2
dCkKK3sKKyAgICByZXR1cm4gZXZ0LnNoaWZ0S2V5KCkgJiYgZXZ0LmJ1dHRvbigpID09IExlZnRC
dXR0b247Cit9CisKK2Jvb2wgU2Nyb2xsYmFyVGhlbWVXaW46OnNob3VsZFNuYXBCYWNrVG9EcmFn
T3JpZ2luKFNjcm9sbGJhciogc2Nyb2xsYmFyLCBjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2
dCkKK3sKKyAgICAvLyBGaW5kIHRoZSByZWN0IHdpdGhpbiB3aGljaCB3ZSBzaG91bGRuJ3Qgc25h
cCwgYnkgZXhwYW5kaW5nIHRoZSB0cmFjayByZWN0CisgICAgLy8gaW4gYm90aCBkaW1lbnNpb25z
LgorICAgIEludFJlY3QgcmVjdCA9IHRyYWNrUmVjdChzY3JvbGxiYXIpOworICAgIGNvbnN0IGJv
b2wgaG9yeiA9IHNjcm9sbGJhci0+b3JpZW50YXRpb24oKSA9PSBIb3Jpem9udGFsU2Nyb2xsYmFy
OworICAgIGNvbnN0IGludCB0aGlja25lc3MgPSBzY3JvbGxiYXJUaGlja25lc3Moc2Nyb2xsYmFy
LT5jb250cm9sU2l6ZSgpKTsKKyAgICByZWN0LmluZmxhdGVYKChob3J6ID8ga09mZkVuZE11bHRp
cGxpZXIgOiBrT2ZmU2lkZU11bHRpcGxpZXIpICogdGhpY2tuZXNzKTsKKyAgICByZWN0LmluZmxh
dGVZKChob3J6ID8ga09mZlNpZGVNdWx0aXBsaWVyIDoga09mZkVuZE11bHRpcGxpZXIpICogdGhp
Y2tuZXNzKTsKKworICAgIC8vIENvbnZlcnQgdGhlIGV2ZW50IHRvIGxvY2FsIGNvb3JkaW5hdGVz
LgorICAgIEludFBvaW50IG1vdXNlUG9zaXRpb24gPSBzY3JvbGxiYXItPmNvbnZlcnRGcm9tQ29u
dGFpbmluZ1dpbmRvdyhldnQucG9zKCkpOworICAgIG1vdXNlUG9zaXRpb24ubW92ZShzY3JvbGxi
YXItPngoKSwgc2Nyb2xsYmFyLT55KCkpOworCisgICAgLy8gV2Ugc2hvdWxkIHNuYXAgaWZmIHRo
ZSBldmVudCBpcyBvdXRzaWRlIG91ciBjYWxjdWxhdGVkIHJlY3QuCisgICAgcmV0dXJuICFyZWN0
LmNvbnRhaW5zKG1vdXNlUG9zaXRpb24pOworfQorCiB2b2lkIFNjcm9sbGJhclRoZW1lV2luOjpw
YWludFRyYWNrQmFja2dyb3VuZChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIFNjcm9sbGJhciog
c2Nyb2xsYmFyLCBjb25zdCBJbnRSZWN0JiByZWN0KQogewogICAgIC8vIEp1c3QgYXNzdW1lIGEg
Zm9yd2FyZCB0cmFjayBwYXJ0LiAgV2Ugb25seSBwYWludCB0aGUgdHJhY2sgYXMgYSBzaW5nbGUg
cGllY2Ugd2hlbiB0aGVyZSBpcyBubyB0aHVtYi4KQEAgLTM0MCwxMCArMzcwLDUgQEAgdm9pZCBT
Y3JvbGxiYXJUaGVtZVdpbjo6cGFpbnRUaHVtYihHcmFwaAogICAgIGNvbnRleHQtPnJlbGVhc2VX
aW5kb3dzQ29udGV4dChoZGMsIHJlY3QsIGFscGhhQmxlbmQpOwogfQogCi1ib29sIFNjcm9sbGJh
clRoZW1lV2luOjpzaG91bGRDZW50ZXJPblRodW1iKFNjcm9sbGJhciosIGNvbnN0IFBsYXRmb3Jt
TW91c2VFdmVudCYgZXZ0KQotewotICAgIHJldHVybiBldnQuc2hpZnRLZXkoKSAmJiBldnQuYnV0
dG9uKCkgPT0gTGVmdEJ1dHRvbjsKLX0KLQogfQogCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL3dp
bi9TY3JvbGxiYXJUaGVtZVdpbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vd2lu
L1Njcm9sbGJhclRoZW1lV2luLmgJKHJldmlzaW9uIDQyNTg0KQorKysgV2ViQ29yZS9wbGF0Zm9y
bS93aW4vU2Nyb2xsYmFyVGhlbWVXaW4uaAkod29ya2luZyBjb3B5KQpAQCAtNTAsNiArNTAsNyBA
QCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBJbnRSZWN0IHRyYWNrUmVjdChTY3JvbGxiYXIqLCBi
b29sIHBhaW50aW5nID0gZmFsc2UpOwogCiAgICAgdmlydHVhbCBib29sIHNob3VsZENlbnRlck9u
VGh1bWIoU2Nyb2xsYmFyKiwgY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50Jik7CisgICAgdmlydHVh
bCBib29sIHNob3VsZFNuYXBCYWNrVG9EcmFnT3JpZ2luKFNjcm9sbGJhciosIGNvbnN0IFBsYXRm
b3JtTW91c2VFdmVudCYpOwogCiAgICAgdmlydHVhbCB2b2lkIHBhaW50VHJhY2tCYWNrZ3JvdW5k
KEdyYXBoaWNzQ29udGV4dCosIFNjcm9sbGJhciosIGNvbnN0IEludFJlY3QmKTsKICAgICB2aXJ0
dWFsIHZvaWQgcGFpbnRUcmFja1BpZWNlKEdyYXBoaWNzQ29udGV4dCosIFNjcm9sbGJhciosIGNv
bnN0IEludFJlY3QmLCBTY3JvbGxiYXJQYXJ0KTsK
</data>
<flag name="review"
          id="14750"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>