<?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>17172</bug_id>
          
          <creation_ts>2008-02-04 04:24:50 -0800</creation_ts>
          <short_desc>Refactor platform checks in ScrollView.h</short_desc>
          <delta_ts>2008-03-17 09:57:51 -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>All</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="Jan Alonzo">jmalonzo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>69335</commentid>
    <comment_count>0</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-02-04 04:24:50 -0800</bug_when>
    <thetext>The attached patch refactors the platform checks and removing redundant function declarations in ScrollView.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69336</commentid>
    <comment_count>1</comment_count>
      <attachid>18902</attachid>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-02-04 04:25:32 -0800</bug_when>
    <thetext>Created attachment 18902
refactor ScrollView.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69341</commentid>
    <comment_count>2</comment_count>
      <attachid>18904</attachid>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-02-04 05:19:19 -0800</bug_when>
    <thetext>Created attachment 18904
updated patch

This is a more complete patch than the previous one</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69359</commentid>
    <comment_count>3</comment_count>
      <attachid>18904</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-02-04 09:51:29 -0800</bug_when>
    <thetext>Comment on attachment 18904
updated patch

This patch is OK, but there is a better way to do the contentsToWindow/windowToContents thing. The inline implementation for non-Mac platforms can be outside the ScrollView class. there&apos;s no reason we have to muck up the declaration of those functions with #if just because the definition needs to be different. In fact, I also think there&apos;s no good reason to make them inline. It could just be in ScrollView.cpp.

 114         // Other platforms can just implement these helper methods using the corresponding point conversion methods.

And this comment really doesn&apos;t work when your rearrange the file. It&apos;s the second half of a comment that was moved far away.

 118 #if PLATFORM(WIN) || PLATFORM(QT)
 119 
 120         virtual void setParent(ScrollView*);        
 121 
136122         IntRect windowResizerRect();
137123         bool resizerOverlapsContent() const;
138124         void adjustOverlappingScrollbarCount(int overlapDelta);
 125 #endif // end PLATFORM(WIN) || PLATFORM(QT)

Seems ugly to have a space after the #if but not before the #endif.

 151         PlatformScrollbar *horizontalScrollBar() const;
 152         PlatformScrollbar *verticalScrollBar() const;

We put the * next to the type name, not the function name.

 177 #else // PLATFORM(WX)
228178         HashSet&lt;Widget*&gt;* children();

Again, you have a space after the #if and before the #else, but no space after the #else -- unnecessarily messy.

I&apos;d like to see a better version of the patch. So I&apos;m going to say review- for now.

The complaints are just about formatting, but since the patch itself is largely about formatting, I think it&apos;s OK for me to do that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69556</commentid>
    <comment_count>4</comment_count>
      <attachid>18957</attachid>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-02-06 03:57:58 -0800</bug_when>
    <thetext>Created attachment 18957
updated patch

Hi Darin

Thanks for the review. I updated the patch to include your suggestions. I also moved the implementation of IntRect contentsToWindow/windowToContents in the respective source files. Let me know if you have more suggestions.

Regards</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69569</commentid>
    <comment_count>5</comment_count>
      <attachid>18957</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-02-06 06:44:19 -0800</bug_when>
    <thetext>Comment on attachment 18957
updated patch

r=me

+IntRect ScrollView::contentsToWindow(const IntRect&amp; rect) const
+{
+    return IntRect(contentsToWindow(rect.location()), rect.size());
+}
+
+IntRect ScrollView::windowToContents(const IntRect&amp; rect) const
+{
+    return IntRect(windowToContents(rect.location()), rect.size());
+}

It&apos;s unfortunate we now have 3 copies of these functions. I would have preferred a single copy either in a shared ScrollView.cpp file with a proper ifdef or as an inline in the header file (not in the class definition, though). I feel the same way about other copied and pasted code that&apos;s in multiple platform files.

-    return &amp;m_data-&gt;children;
+    return &amp;(m_data-&gt;children);

I personally don&apos;t think this change is an improvement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69651</commentid>
    <comment_count>6</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-02-07 02:29:07 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 18957 [edit])
&gt; r=me
&gt; It&apos;s unfortunate we now have 3 copies of these functions. I would have
&gt; preferred a single copy either in a shared ScrollView.cpp file with a proper
&gt; ifdef or as an inline in the header file (not in the class definition, though).

Hi Darin

Thanks. I agree with you. If you want you can r- it for now and i&apos;ll try to come up with an updated patch.

&gt; I feel the same way about other copied and pasted code that&apos;s in multiple
&gt; platform files.

I will keep that in mind - thanks.

Regards</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69680</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-02-07 09:21:34 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Thanks. I agree with you. If you want you can r- it for now and i&apos;ll try to
&gt; come up with an updated patch.

I&apos;ll leave it r+ for now. Feel free to post an updated patch and obsolete your existing one, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73981</commentid>
    <comment_count>8</comment_count>
      <attachid>18957</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-03-16 14:53:28 -0700</bug_when>
    <thetext>Comment on attachment 18957
updated patch

Darn it.

I went to land this patch, and ran into conflicts. Then I realized these conflicts would be easy to fix if I could just merge back in with the version this patch was originally done against, and remembered that svn-apply-patch has a --merge option that does that quite well.

But this is a git patch, not Subversion, so I can&apos;t use that option. Merging is too much of a pain so I&apos;m not going to land this today (otherwise I would have).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73996</commentid>
    <comment_count>9</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-03-16 17:16:17 -0700</bug_when>
    <thetext>Hi Darin

I&apos;ll update the patch and try to make it SVN-friendly. Also, do you think a shared ScrollView.cpp would be helpful?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>74027</commentid>
    <comment_count>10</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-03-16 20:48:07 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; I&apos;ll update the patch and try to make it SVN-friendly. Also, do you think a
&gt; shared ScrollView.cpp would be helpful?

Sure, if there&apos;s at least one function that would go in there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>74034</commentid>
    <comment_count>11</comment_count>
      <attachid>19825</attachid>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-03-16 22:49:58 -0700</bug_when>
    <thetext>Created attachment 19825
Updated patch

This is an updated patch (still a git diff). A shared ScrollView.cpp would be ideal but i&apos;ll leave that for another bug/patch.

Regards,</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>74108</commentid>
    <comment_count>12</comment_count>
      <attachid>18957</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-03-17 09:48:43 -0700</bug_when>
    <thetext>Comment on attachment 18957
updated patch

Clearing the review flag on this obsolete patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>74111</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-03-17 09:57:51 -0700</bug_when>
    <thetext>Committed revision 31098.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18902</attachid>
            <date>2008-02-04 04:25:32 -0800</date>
            <delta_ts>2008-02-04 05:19:19 -0800</delta_ts>
            <desc>refactor ScrollView.h</desc>
            <filename>webkit-scrollview-refactor.patch</filename>
            <type>text/plain</type>
            <size>6690</size>
            <attacher name="Jan Alonzo">jmalonzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MmI4Yzc4Yy4uNGRlZWQ3OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAwOC0wMi0wNCAgSmFuIE1pY2hhZWwg
QWxvbnpvICA8am1hbG9uem9AdW5wbHVnZ2FibGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdBUk5JTkc6IE5PIFRFU1QgQ0FTRVMgQURERUQg
T1IgQ0hBTkdFRAorCisJUmVmYWN0b3IgcGxhdGZvcm0gY2hlY2tzCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxWaWV3Lmg6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3Ojpjb250ZW50
c1RvV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OndpbmRvd1RvQ29udGVu
dHMpOgorCiAyMDA4LTAyLTAzICBDaHJpc3RpYW4gRHl3YW4gIDxjaHJpc3RpYW5AaW1lbmRpby5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWxwIFRva2VyLgpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmggYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaApp
bmRleCBiOThlNTQ1Li43MTI4YmI2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9s
bFZpZXcuaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaApAQCAtNTIsNiArNTIs
MzkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgU2Nyb2xsVmlldyA6IHB1Ymxp
YyBXaWRnZXQgewogICAgIHB1YmxpYzoKKworI2lmICFQTEFURk9STShNQUMpICAgICAgCisgICAg
ICAgIFNjcm9sbFZpZXcoKTsKKyAgICAgICAgflNjcm9sbFZpZXcoKTsKKworICAgICAgICAvLyBP
dGhlciBwbGF0Zm9ybXMgY2FuIGp1c3QgaW1wbGVtZW50IHRoZXNlIGhlbHBlciBtZXRob2RzIHVz
aW5nIHRoZSBjb3JyZXNwb25kaW5nIHBvaW50IGNvbnZlcnNpb24gbWV0aG9kcy4KKyAgICAgICAg
SW50UmVjdCBjb250ZW50c1RvV2luZG93KGNvbnN0IEludFJlY3QmIHJlY3QpIGNvbnN0IHsgcmV0
dXJuIEludFJlY3QoY29udGVudHNUb1dpbmRvdyhyZWN0LmxvY2F0aW9uKCkpLCByZWN0LnNpemUo
KSk7IH0KKyAgICAgICAgSW50UmVjdCB3aW5kb3dUb0NvbnRlbnRzKGNvbnN0IEludFJlY3QmIHJl
Y3QpIGNvbnN0IHsgcmV0dXJuIEludFJlY3Qod2luZG93VG9Db250ZW50cyhyZWN0LmxvY2F0aW9u
KCkpLCByZWN0LnNpemUoKSk7IH0KKworI2lmICFQTEFURk9STShXWCkKKworICAgICAgICB2aXJ0
dWFsIHZvaWQgcGFpbnQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpOyAgICAgICAg
CisKKyAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0Q2hpbGRUb1NlbGYoY29uc3QgV2lk
Z2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKKyAgICAgICAgdmlydHVhbCBJbnRQb2ludCBj
b252ZXJ0U2VsZlRvQ2hpbGQoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsK
KworICAgICAgICB2aXJ0dWFsIHZvaWQgZ2VvbWV0cnlDaGFuZ2VkKCkgY29uc3Q7CisgICAgICAg
IHZpcnR1YWwgdm9pZCBzZXRGcmFtZUdlb21ldHJ5KGNvbnN0IEludFJlY3QmKTsKKworICAgICAg
ICB2b2lkIGFkZFRvRGlydHlSZWdpb24oY29uc3QgSW50UmVjdCYpOworICAgICAgICB2b2lkIHNj
cm9sbEJhY2tpbmdTdG9yZShpbnQgZHgsIGludCBkeSwgY29uc3QgSW50UmVjdCYgc2Nyb2xsVmll
d1JlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KTsKKyAgICAgICAgdm9pZCB1cGRhdGVCYWNr
aW5nU3RvcmUoKTsgICAgICAgIAorCisjZW5kaWYgLy8gZW5kICFQTEFURk9STShXWCkKKworI2lm
IFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oUVQpCisgICAgICAgIEludFJlY3Qgd2luZG93UmVz
aXplclJlY3QoKTsKKyAgICAgICAgYm9vbCByZXNpemVyT3ZlcmxhcHNDb250ZW50KCkgY29uc3Q7
CisgICAgICAgIHZvaWQgYWRqdXN0T3ZlcmxhcHBpbmdTY3JvbGxiYXJDb3VudChpbnQgb3Zlcmxh
cERlbHRhKTsKKyNlbmRpZiAvLyBlbmQgUExBVEZPUk0oV0lOKSB8fCBQTEFURk9STShRVCkKKyAg
ICAgICAgCisjZW5kaWYgLy8gZW5kICFQTEFURk9STShNQUMpCisKICAgICAgICAgaW50IHZpc2li
bGVXaWR0aCgpIGNvbnN0OwogICAgICAgICBpbnQgdmlzaWJsZUhlaWdodCgpIGNvbnN0OwogICAg
ICAgICBGbG9hdFJlY3QgdmlzaWJsZUNvbnRlbnRSZWN0KCkgY29uc3Q7CkBAIC05MiwxNiArMTI1
LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBJbnRQb2ludCB3aW5kb3dUb0NvbnRl
bnRzKGNvbnN0IEludFBvaW50JikgY29uc3Q7CiAgICAgICAgIEludFBvaW50IGNvbnRlbnRzVG9X
aW5kb3coY29uc3QgSW50UG9pbnQmKSBjb25zdDsKICAgICAgICAgCi0jaWYgUExBVEZPUk0oTUFD
KQotICAgICAgICAvLyBPbiBNYWMgb25seSBiZWNhdXNlIG9mIGZsaXBwZWQgTlNXaW5kb3cgeS1j
b29yZGluYXRlcywgd2UgaGF2ZSB0byBoYXZlIGEgc3BlY2lhbCBpbXBsZW1lbnRhdGlvbi4KLSAg
ICAgICAgSW50UmVjdCB3aW5kb3dUb0NvbnRlbnRzKGNvbnN0IEludFJlY3QmKSBjb25zdDsKLSAg
ICAgICAgSW50UmVjdCBjb250ZW50c1RvV2luZG93KGNvbnN0IEludFJlY3QmKSBjb25zdDsKLSNl
bHNlCi0gICAgICAgIC8vIE90aGVyIHBsYXRmb3JtcyBjYW4ganVzdCBpbXBsZW1lbnQgdGhlc2Ug
aGVscGVyIG1ldGhvZHMgdXNpbmcgdGhlIGNvcnJlc3BvbmRpbmcgcG9pbnQgY29udmVyc2lvbiBt
ZXRob2RzLgotICAgICAgICBJbnRSZWN0IGNvbnRlbnRzVG9XaW5kb3coY29uc3QgSW50UmVjdCYg
cmVjdCkgY29uc3QgeyByZXR1cm4gSW50UmVjdChjb250ZW50c1RvV2luZG93KHJlY3QubG9jYXRp
b24oKSksIHJlY3Quc2l6ZSgpKTsgfQotICAgICAgICBJbnRSZWN0IHdpbmRvd1RvQ29udGVudHMo
Y29uc3QgSW50UmVjdCYgcmVjdCkgY29uc3QgeyByZXR1cm4gSW50UmVjdCh3aW5kb3dUb0NvbnRl
bnRzKHJlY3QubG9jYXRpb24oKSksIHJlY3Quc2l6ZSgpKTsgfQotI2VuZGlmCi0KICAgICAgICAg
dm9pZCBzZXRTdGF0aWNCYWNrZ3JvdW5kKGJvb2wpOwogCiAgICAgICAgIGJvb2wgaW5XaW5kb3co
KSBjb25zdDsKQEAgLTExNywyNiArMTQwLDE3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgYm9vbCBzY3JvbGwoU2Nyb2xsRGlyZWN0aW9uLCBTY3JvbGxHcmFudWxhcml0eSk7CiAKICNp
ZiBQTEFURk9STShNQUMpCisgICAgICAgIC8vIE9uIE1hYyBvbmx5IGJlY2F1c2Ugb2YgZmxpcHBl
ZCBOU1dpbmRvdyB5LWNvb3JkaW5hdGVzLCB3ZSBoYXZlIHRvIGhhdmUgYSBzcGVjaWFsIGltcGxl
bWVudGF0aW9uLgorICAgICAgICBJbnRSZWN0IHdpbmRvd1RvQ29udGVudHMoY29uc3QgSW50UmVj
dCYpIGNvbnN0OworICAgICAgICBJbnRSZWN0IGNvbnRlbnRzVG9XaW5kb3coY29uc3QgSW50UmVj
dCYpIGNvbnN0OworICAgICAgICAKICAgICAgICAgTlNWaWV3KiBnZXREb2N1bWVudFZpZXcoKSBj
b25zdDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oV0lOKQotICAgICAgICBTY3JvbGxWaWV3KCk7
Ci0gICAgICAgIH5TY3JvbGxWaWV3KCk7CiAKLSAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50KEdy
YXBoaWNzQ29udGV4dCosIGNvbnN0IEludFJlY3QmKTsKICAgICAgICAgdmlydHVhbCB2b2lkIHRo
ZW1lQ2hhbmdlZCgpOwogICAgICAgICAKLSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0
Q2hpbGRUb1NlbGYoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLSAgICAg
ICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0U2VsZlRvQ2hpbGQoY29uc3QgV2lkZ2V0KiwgY29u
c3QgSW50UG9pbnQmKSBjb25zdDsKLSAgICAgICAgCi0gICAgICAgIHZpcnR1YWwgdm9pZCBnZW9t
ZXRyeUNoYW5nZWQoKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCB2b2lkIHNldEZyYW1lR2VvbWV0
cnkoY29uc3QgSW50UmVjdCYpOwotICAgICAgICAKLSAgICAgICAgSW50UmVjdCB3aW5kb3dSZXNp
emVyUmVjdCgpOwotICAgICAgICBib29sIHJlc2l6ZXJPdmVybGFwc0NvbnRlbnQoKSBjb25zdDsK
LSAgICAgICAgdm9pZCBhZGp1c3RPdmVybGFwcGluZ1Njcm9sbGJhckNvdW50KGludCBvdmVybGFw
RGVsdGEpOwotICAgICAgICAKICAgICAgICAgdmlydHVhbCB2b2lkIHNldFBhcmVudChTY3JvbGxW
aWV3Kik7CiAKICAgICAgICAgdmlydHVhbCB2b2lkIGF0dGFjaFRvV2luZG93KCk7CkBAIC0xNDYs
MTAgKzE2MCw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIHNo
b3coKTsKICAgICAgICAgdmlydHVhbCB2b2lkIGhpZGUoKTsKIAotICAgICAgICB2b2lkIGFkZFRv
RGlydHlSZWdpb24oY29uc3QgSW50UmVjdCYpOwotICAgICAgICB2b2lkIHNjcm9sbEJhY2tpbmdT
dG9yZShpbnQgZHgsIGludCBkeSwgY29uc3QgSW50UmVjdCYgc2Nyb2xsVmlld1JlY3QsIGNvbnN0
IEludFJlY3QmIGNsaXBSZWN0KTsKLSAgICAgICAgdm9pZCB1cGRhdGVCYWNraW5nU3RvcmUoKTsK
LQogICAgICAgICB2b2lkIHNldEFsbG93c1Njcm9sbGluZyhib29sKTsKICAgICAgICAgYm9vbCBh
bGxvd3NTY3JvbGxpbmcoKSBjb25zdDsKIApAQCAtMTYzLDIwICsxNzMsNyBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKEdUSykKLSAgICAgICAgU2Nyb2xsVmll
dygpOwotICAgICAgICB+U2Nyb2xsVmlldygpOwotCiAgICAgICAgIHZpcnR1YWwgdm9pZCBzZXRH
dGtBZGp1c3RtZW50cyhHdGtBZGp1c3RtZW50KiBoYWRqLCBHdGtBZGp1c3RtZW50KiB2YWRqKTsK
LSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0Q2hpbGRUb1NlbGYoY29uc3QgV2lkZ2V0
KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252
ZXJ0U2VsZlRvQ2hpbGQoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLSAg
ICAgICAgdmlydHVhbCB2b2lkIGdlb21ldHJ5Q2hhbmdlZCgpIGNvbnN0OwotCi0gICAgICAgIHZp
cnR1YWwgdm9pZCBwYWludChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBJbnRSZWN0Jik7Ci0gICAg
ICAgIHZpcnR1YWwgdm9pZCBzZXRGcmFtZUdlb21ldHJ5KGNvbnN0IEludFJlY3QmKTsKLQotICAg
ICAgICB2b2lkIGFkZFRvRGlydHlSZWdpb24oY29uc3QgSW50UmVjdCYpOwotICAgICAgICB2b2lk
IHNjcm9sbEJhY2tpbmdTdG9yZShpbnQgZHgsIGludCBkeSwgY29uc3QgSW50UmVjdCYgc2Nyb2xs
Vmlld1JlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KTsKLSAgICAgICAgdm9pZCB1cGRhdGVC
YWNraW5nU3RvcmUoKTsKIAogICAgIHByb3RlY3RlZDoKICAgICAgICAgSGFzaFNldDxXaWRnZXQq
PiogY2hpbGRyZW4oKSBjb25zdDsKQEAgLTE5MCwyNyArMTg3LDggQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogI2VuZGlmCiAKICNpZiBQTEFURk9STShRVCkKLSAgICAgICAgU2Nyb2xsVmlldygpOwot
ICAgICAgICB+U2Nyb2xsVmlldygpOwotCi0gICAgICAgIHZpcnR1YWwgdm9pZCBwYWludChHcmFw
aGljc0NvbnRleHQqLCBjb25zdCBJbnRSZWN0Jik7Ci0KLSAgICAgICAgdmlydHVhbCBJbnRQb2lu
dCBjb252ZXJ0Q2hpbGRUb1NlbGYoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25z
dDsKLSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0U2VsZlRvQ2hpbGQoY29uc3QgV2lk
Z2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLQotICAgICAgICB2aXJ0dWFsIHZvaWQgZ2Vv
bWV0cnlDaGFuZ2VkKCkgY29uc3Q7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBzZXRGcmFtZUdlb21l
dHJ5KGNvbnN0IEludFJlY3QmKTsKLQotICAgICAgICBJbnRSZWN0IHdpbmRvd1Jlc2l6ZXJSZWN0
KCk7Ci0gICAgICAgIGJvb2wgcmVzaXplck92ZXJsYXBzQ29udGVudCgpIGNvbnN0OwotICAgICAg
ICB2b2lkIGFkanVzdE92ZXJsYXBwaW5nU2Nyb2xsYmFyQ291bnQoaW50IG92ZXJsYXBEZWx0YSk7
Ci0KICAgICAgICAgdmlydHVhbCB2b2lkIHNldFBhcmVudChTY3JvbGxWaWV3Kik7CiAKLSAgICAg
ICAgdm9pZCBhZGRUb0RpcnR5UmVnaW9uKGNvbnN0IEludFJlY3QmKTsKLSAgICAgICAgdm9pZCBz
Y3JvbGxCYWNraW5nU3RvcmUoaW50IGR4LCBpbnQgZHksIGNvbnN0IEludFJlY3QmIHNjcm9sbFZp
ZXdSZWN0LCBjb25zdCBJbnRSZWN0JiBjbGlwUmVjdCk7Ci0gICAgICAgIHZvaWQgdXBkYXRlQmFj
a2luZ1N0b3JlKCk7Ci0KICAgICAgICAgUGxhdGZvcm1TY3JvbGxiYXIgKmhvcml6b250YWxTY3Jv
bGxCYXIoKSBjb25zdDsKICAgICAgICAgUGxhdGZvcm1TY3JvbGxiYXIgKnZlcnRpY2FsU2Nyb2xs
QmFyKCkgY29uc3Q7CiAKQEAgLTIyMiw5ICsyMDAsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIGNsYXNzIFNjcm9sbFZpZXdQcml2YXRlOwogICAgICAgICBTY3JvbGxWaWV3UHJpdmF0
ZSogbV9kYXRhOwogI2VuZGlmCisgICAgICAgIAogI2lmIFBMQVRGT1JNKFdYKQotICAgICAgICBT
Y3JvbGxWaWV3KCk7Ci0gICAgICAgIH5TY3JvbGxWaWV3KCk7CiAgICAgICAgIEhhc2hTZXQ8V2lk
Z2V0Kj4qIGNoaWxkcmVuKCk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBzZXROYXRpdmVXaW5kb3co
d3hXaW5kb3cqIHdpbmRvdyk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18904</attachid>
            <date>2008-02-04 05:19:19 -0800</date>
            <delta_ts>2008-02-06 03:57:58 -0800</delta_ts>
            <desc>updated patch</desc>
            <filename>webkit-scrollview-refactor.patch</filename>
            <type>text/plain</type>
            <size>7267</size>
            <attacher name="Jan Alonzo">jmalonzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NGI0NmU2MS4uMmQ1M2YyMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAwOC0wMi0wNCAgSmFuIE1pY2hhZWwg
QWxvbnpvICA8am1hbG9uem9AdW5wbHVnZ2FibGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdBUk5JTkc6IE5PIFRFU1QgQ0FTRVMgQURERUQg
T1IgQ0hBTkdFRAorCisgICAgICAgIFJlZmFjdG9yIHBsYXRmb3JtIGNoZWNrcyBhbmQgcmVtb3Zl
IHJlZHVuZGFudCBmdW5jdGlvbiBkZWNsYXJhdGlvbnMKKworICAgICAgICAqIHBsYXRmb3JtL1Nj
cm9sbFZpZXcuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OmNvbnRlbnRzVG9XaW5k
b3cpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6d2luZG93VG9Db250ZW50cyk6CisK
IDIwMDgtMDItMDQgIEFscCBUb2tlciAgPGFscEBhdG9rZXIuY29tPgogCiAgICAgICAgIFJ1YmJl
ci1zdGFtcGVkIGJ5IE1hcmsgUm93ZS4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKaW5kZXggYjk4ZTU0NS4u
MGM0OTVhNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKKysrIGIv
V2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKQEAgLTUyLDYgKzUyLDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiAgICAgY2xhc3MgU2Nyb2xsVmlldyA6IHB1YmxpYyBXaWRnZXQgewogICAg
IHB1YmxpYzoKKwogICAgICAgICBpbnQgdmlzaWJsZVdpZHRoKCkgY29uc3Q7CiAgICAgICAgIGlu
dCB2aXNpYmxlSGVpZ2h0KCkgY29uc3Q7CiAgICAgICAgIEZsb2F0UmVjdCB2aXNpYmxlQ29udGVu
dFJlY3QoKSBjb25zdDsKQEAgLTkyLDE2ICs5Myw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICAgICAgSW50UG9pbnQgd2luZG93VG9Db250ZW50cyhjb25zdCBJbnRQb2ludCYpIGNvbnN0Owog
ICAgICAgICBJbnRQb2ludCBjb250ZW50c1RvV2luZG93KGNvbnN0IEludFBvaW50JikgY29uc3Q7
CiAgICAgICAgIAotI2lmIFBMQVRGT1JNKE1BQykKLSAgICAgICAgLy8gT24gTWFjIG9ubHkgYmVj
YXVzZSBvZiBmbGlwcGVkIE5TV2luZG93IHktY29vcmRpbmF0ZXMsIHdlIGhhdmUgdG8gaGF2ZSBh
IHNwZWNpYWwgaW1wbGVtZW50YXRpb24uCi0gICAgICAgIEludFJlY3Qgd2luZG93VG9Db250ZW50
cyhjb25zdCBJbnRSZWN0JikgY29uc3Q7Ci0gICAgICAgIEludFJlY3QgY29udGVudHNUb1dpbmRv
dyhjb25zdCBJbnRSZWN0JikgY29uc3Q7Ci0jZWxzZQotICAgICAgICAvLyBPdGhlciBwbGF0Zm9y
bXMgY2FuIGp1c3QgaW1wbGVtZW50IHRoZXNlIGhlbHBlciBtZXRob2RzIHVzaW5nIHRoZSBjb3Jy
ZXNwb25kaW5nIHBvaW50IGNvbnZlcnNpb24gbWV0aG9kcy4KLSAgICAgICAgSW50UmVjdCBjb250
ZW50c1RvV2luZG93KGNvbnN0IEludFJlY3QmIHJlY3QpIGNvbnN0IHsgcmV0dXJuIEludFJlY3Qo
Y29udGVudHNUb1dpbmRvdyhyZWN0LmxvY2F0aW9uKCkpLCByZWN0LnNpemUoKSk7IH0KLSAgICAg
ICAgSW50UmVjdCB3aW5kb3dUb0NvbnRlbnRzKGNvbnN0IEludFJlY3QmIHJlY3QpIGNvbnN0IHsg
cmV0dXJuIEludFJlY3Qod2luZG93VG9Db250ZW50cyhyZWN0LmxvY2F0aW9uKCkpLCByZWN0LnNp
emUoKSk7IH0KLSNlbmRpZgotCiAgICAgICAgIHZvaWQgc2V0U3RhdGljQmFja2dyb3VuZChib29s
KTsKIAogICAgICAgICBib29sIGluV2luZG93KCkgY29uc3Q7CkBAIC0xMTYsMjkgKzEwNywyNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgYm9vbCBzY3JvbGwoU2Nyb2xsRGlyZWN0
aW9uLCBTY3JvbGxHcmFudWxhcml0eSk7CiAKLSNpZiBQTEFURk9STShNQUMpCi0gICAgICAgIE5T
VmlldyogZ2V0RG9jdW1lbnRWaWV3KCkgY29uc3Q7Ci0jZW5kaWYKLQotI2lmIFBMQVRGT1JNKFdJ
TikKKyNpZiAhUExBVEZPUk0oTUFDKSAgICAgIAogICAgICAgICBTY3JvbGxWaWV3KCk7CiAgICAg
ICAgIH5TY3JvbGxWaWV3KCk7CiAKLSAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50KEdyYXBoaWNz
Q29udGV4dCosIGNvbnN0IEludFJlY3QmKTsKLSAgICAgICAgdmlydHVhbCB2b2lkIHRoZW1lQ2hh
bmdlZCgpOwotICAgICAgICAKLSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0Q2hpbGRU
b1NlbGYoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLSAgICAgICAgdmly
dHVhbCBJbnRQb2ludCBjb252ZXJ0U2VsZlRvQ2hpbGQoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50
UG9pbnQmKSBjb25zdDsKLSAgICAgICAgCi0gICAgICAgIHZpcnR1YWwgdm9pZCBnZW9tZXRyeUNo
YW5nZWQoKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCB2b2lkIHNldEZyYW1lR2VvbWV0cnkoY29u
c3QgSW50UmVjdCYpOwotICAgICAgICAKKyAgICAgICAgLy8gT3RoZXIgcGxhdGZvcm1zIGNhbiBq
dXN0IGltcGxlbWVudCB0aGVzZSBoZWxwZXIgbWV0aG9kcyB1c2luZyB0aGUgY29ycmVzcG9uZGlu
ZyBwb2ludCBjb252ZXJzaW9uIG1ldGhvZHMuCisgICAgICAgIEludFJlY3QgY29udGVudHNUb1dp
bmRvdyhjb25zdCBJbnRSZWN0JiByZWN0KSBjb25zdCB7IHJldHVybiBJbnRSZWN0KGNvbnRlbnRz
VG9XaW5kb3cocmVjdC5sb2NhdGlvbigpKSwgcmVjdC5zaXplKCkpOyB9CisgICAgICAgIEludFJl
Y3Qgd2luZG93VG9Db250ZW50cyhjb25zdCBJbnRSZWN0JiByZWN0KSBjb25zdCB7IHJldHVybiBJ
bnRSZWN0KHdpbmRvd1RvQ29udGVudHMocmVjdC5sb2NhdGlvbigpKSwgcmVjdC5zaXplKCkpOyB9
CisKKyNpZiBQTEFURk9STShXSU4pIHx8IFBMQVRGT1JNKFFUKQorCisgICAgICAgIHZpcnR1YWwg
dm9pZCBzZXRQYXJlbnQoU2Nyb2xsVmlldyopOyAgICAgICAgCisKICAgICAgICAgSW50UmVjdCB3
aW5kb3dSZXNpemVyUmVjdCgpOwogICAgICAgICBib29sIHJlc2l6ZXJPdmVybGFwc0NvbnRlbnQo
KSBjb25zdDsKICAgICAgICAgdm9pZCBhZGp1c3RPdmVybGFwcGluZ1Njcm9sbGJhckNvdW50KGlu
dCBvdmVybGFwRGVsdGEpOwotICAgICAgICAKLSAgICAgICAgdmlydHVhbCB2b2lkIHNldFBhcmVu
dChTY3JvbGxWaWV3Kik7CisjZW5kaWYgLy8gZW5kIFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0o
UVQpCiAKKyNpZiBQTEFURk9STShXSU4pCisKKyAgICAgICAgdmlydHVhbCB2b2lkIHRoZW1lQ2hh
bmdlZCgpOworICAgICAgICAKICAgICAgICAgdmlydHVhbCB2b2lkIGF0dGFjaFRvV2luZG93KCk7
CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hGcm9tV2luZG93KCk7CiAgICAgICAgIGJvb2wg
aXNBdHRhY2hlZFRvV2luZG93KCkgY29uc3Q7CkBAIC0xNDYsNTQgKzEzNSwyOCBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBzaG93KCk7CiAgICAgICAgIHZpcnR1
YWwgdm9pZCBoaWRlKCk7CiAKLSAgICAgICAgdm9pZCBhZGRUb0RpcnR5UmVnaW9uKGNvbnN0IElu
dFJlY3QmKTsKLSAgICAgICAgdm9pZCBzY3JvbGxCYWNraW5nU3RvcmUoaW50IGR4LCBpbnQgZHks
IGNvbnN0IEludFJlY3QmIHNjcm9sbFZpZXdSZWN0LCBjb25zdCBJbnRSZWN0JiBjbGlwUmVjdCk7
Ci0gICAgICAgIHZvaWQgdXBkYXRlQmFja2luZ1N0b3JlKCk7Ci0KICAgICAgICAgdm9pZCBzZXRB
bGxvd3NTY3JvbGxpbmcoYm9vbCk7CiAgICAgICAgIGJvb2wgYWxsb3dzU2Nyb2xsaW5nKCkgY29u
c3Q7CiAKICAgICAgICAgSGFzaFNldDxXaWRnZXQqPiogY2hpbGRyZW4oKTsKLQotICAgIHByaXZh
dGU6Ci0gICAgICAgIHZvaWQgdXBkYXRlU2Nyb2xsYmFycyhjb25zdCBJbnRTaXplJiBkZXNpcmVk
T2Zmc2V0KTsKLSAgICAgICAgSW50U2l6ZSBtYXhpbXVtU2Nyb2xsKCkgY29uc3Q7Ci0gICAgICAg
IGNsYXNzIFNjcm9sbFZpZXdQcml2YXRlOwotICAgICAgICBTY3JvbGxWaWV3UHJpdmF0ZSogbV9k
YXRhOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShHVEspCi0gICAgICAgIFNjcm9sbFZpZXcoKTsK
LSAgICAgICAgflNjcm9sbFZpZXcoKTsKLQogICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0R3RrQWRq
dXN0bWVudHMoR3RrQWRqdXN0bWVudCogaGFkaiwgR3RrQWRqdXN0bWVudCogdmFkaik7Ci0gICAg
ICAgIHZpcnR1YWwgSW50UG9pbnQgY29udmVydENoaWxkVG9TZWxmKGNvbnN0IFdpZGdldCosIGNv
bnN0IEludFBvaW50JikgY29uc3Q7Ci0gICAgICAgIHZpcnR1YWwgSW50UG9pbnQgY29udmVydFNl
bGZUb0NoaWxkKGNvbnN0IFdpZGdldCosIGNvbnN0IEludFBvaW50JikgY29uc3Q7Ci0gICAgICAg
IHZpcnR1YWwgdm9pZCBnZW9tZXRyeUNoYW5nZWQoKSBjb25zdDsKLQotICAgICAgICB2aXJ0dWFs
IHZvaWQgcGFpbnQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpOwotICAgICAgICB2
aXJ0dWFsIHZvaWQgc2V0RnJhbWVHZW9tZXRyeShjb25zdCBJbnRSZWN0Jik7Ci0KLSAgICAgICAg
dm9pZCBhZGRUb0RpcnR5UmVnaW9uKGNvbnN0IEludFJlY3QmKTsKLSAgICAgICAgdm9pZCBzY3Jv
bGxCYWNraW5nU3RvcmUoaW50IGR4LCBpbnQgZHksIGNvbnN0IEludFJlY3QmIHNjcm9sbFZpZXdS
ZWN0LCBjb25zdCBJbnRSZWN0JiBjbGlwUmVjdCk7Ci0gICAgICAgIHZvaWQgdXBkYXRlQmFja2lu
Z1N0b3JlKCk7CiAKLSAgICBwcm90ZWN0ZWQ6CiAgICAgICAgIEhhc2hTZXQ8V2lkZ2V0Kj4qIGNo
aWxkcmVuKCkgY29uc3Q7Ci0KLSAgICBwcml2YXRlOgotICAgICAgICBJbnRTaXplIG1heGltdW1T
Y3JvbGwoKSBjb25zdDsKLSAgICAgICAgdm9pZCB1cGRhdGVTY3JvbGxiYXJzKGNvbnN0IEludFNp
emUmIGRlc2lyZWRPZmZzZXQpOwotCi0gICAgICAgIGNsYXNzIFNjcm9sbFZpZXdQcml2YXRlOwot
ICAgICAgICBTY3JvbGxWaWV3UHJpdmF0ZSogbV9kYXRhOwogI2VuZGlmCiAKICNpZiBQTEFURk9S
TShRVCkKLSAgICAgICAgU2Nyb2xsVmlldygpOwotICAgICAgICB+U2Nyb2xsVmlldygpOworICAg
ICAgICBQbGF0Zm9ybVNjcm9sbGJhciAqaG9yaXpvbnRhbFNjcm9sbEJhcigpIGNvbnN0OworICAg
ICAgICBQbGF0Zm9ybVNjcm9sbGJhciAqdmVydGljYWxTY3JvbGxCYXIoKSBjb25zdDsKIAotICAg
ICAgICB2aXJ0dWFsIHZvaWQgcGFpbnQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYp
OworICAgICAgICBIYXNoU2V0PFdpZGdldCo+KiBjaGlsZHJlbigpOworI2VuZGlmICAgICAgIAor
ICAgICAgICAKKyNpZiAhUExBVEZPUk0oV1gpCisKKyAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50
KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEludFJlY3QmKTsgICAgICAgIAogCiAgICAgICAgIHZp
cnR1YWwgSW50UG9pbnQgY29udmVydENoaWxkVG9TZWxmKGNvbnN0IFdpZGdldCosIGNvbnN0IElu
dFBvaW50JikgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgSW50UG9pbnQgY29udmVydFNlbGZUb0No
aWxkKGNvbnN0IFdpZGdldCosIGNvbnN0IEludFBvaW50JikgY29uc3Q7CkBAIC0yMDEsMzAgKzE2
NCwxNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBnZW9tZXRy
eUNoYW5nZWQoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCB2b2lkIHNldEZyYW1lR2VvbWV0cnko
Y29uc3QgSW50UmVjdCYpOwogCi0gICAgICAgIEludFJlY3Qgd2luZG93UmVzaXplclJlY3QoKTsK
LSAgICAgICAgYm9vbCByZXNpemVyT3ZlcmxhcHNDb250ZW50KCkgY29uc3Q7Ci0gICAgICAgIHZv
aWQgYWRqdXN0T3ZlcmxhcHBpbmdTY3JvbGxiYXJDb3VudChpbnQgb3ZlcmxhcERlbHRhKTsKLQot
ICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0UGFyZW50KFNjcm9sbFZpZXcqKTsKLQogICAgICAgICB2
b2lkIGFkZFRvRGlydHlSZWdpb24oY29uc3QgSW50UmVjdCYpOwogICAgICAgICB2b2lkIHNjcm9s
bEJhY2tpbmdTdG9yZShpbnQgZHgsIGludCBkeSwgY29uc3QgSW50UmVjdCYgc2Nyb2xsVmlld1Jl
Y3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KTsKLSAgICAgICAgdm9pZCB1cGRhdGVCYWNraW5n
U3RvcmUoKTsKLQotICAgICAgICBQbGF0Zm9ybVNjcm9sbGJhciAqaG9yaXpvbnRhbFNjcm9sbEJh
cigpIGNvbnN0OwotICAgICAgICBQbGF0Zm9ybVNjcm9sbGJhciAqdmVydGljYWxTY3JvbGxCYXIo
KSBjb25zdDsKLQotICAgICAgICBIYXNoU2V0PFdpZGdldCo+KiBjaGlsZHJlbigpOworICAgICAg
ICB2b2lkIHVwZGF0ZUJhY2tpbmdTdG9yZSgpOyAgICAgICAgCiAKICAgICBwcml2YXRlOgotICAg
ICAgICB2b2lkIHVwZGF0ZVNjcm9sbGJhcnMoY29uc3QgSW50U2l6ZSYgZGVzaXJlZE9mZnNldCk7
CiAgICAgICAgIEludFNpemUgbWF4aW11bVNjcm9sbCgpIGNvbnN0OworICAgICAgICB2b2lkIHVw
ZGF0ZVNjcm9sbGJhcnMoY29uc3QgSW50U2l6ZSYgZGVzaXJlZE9mZnNldCk7CiAgICAgICAgIGNs
YXNzIFNjcm9sbFZpZXdQcml2YXRlOwogICAgICAgICBTY3JvbGxWaWV3UHJpdmF0ZSogbV9kYXRh
OwotI2VuZGlmCi0jaWYgUExBVEZPUk0oV1gpCi0gICAgICAgIFNjcm9sbFZpZXcoKTsKLSAgICAg
ICAgflNjcm9sbFZpZXcoKTsKKyAgICAgICAgCisjZWxzZSAvLyBQTEFURk9STShXWCkKICAgICAg
ICAgSGFzaFNldDxXaWRnZXQqPiogY2hpbGRyZW4oKTsKICAgICAgICAgdmlydHVhbCB2b2lkIHNl
dE5hdGl2ZVdpbmRvdyh3eFdpbmRvdyogd2luZG93KTsKIApAQCAtMjMzLDcgKzE4MywxNSBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgY2xhc3MgU2Nyb2xsVmlld1ByaXZhdGU7CiAg
ICAgICAgIFNjcm9sbFZpZXdQcml2YXRlKiBtX2RhdGE7Ci0jZW5kaWYKKyNlbmRpZiAvLyBQTEFU
Rk9STShXWCkKKworI2Vsc2UgIC8vIFBMQVRGT1JNKE1BQykKKyAgICAgICAgLy8gT24gTWFjIG9u
bHkgYmVjYXVzZSBvZiBmbGlwcGVkIE5TV2luZG93IHktY29vcmRpbmF0ZXMsIHdlIGhhdmUgdG8g
aGF2ZSBhIHNwZWNpYWwgaW1wbGVtZW50YXRpb24uCisgICAgICAgIEludFJlY3Qgd2luZG93VG9D
b250ZW50cyhjb25zdCBJbnRSZWN0JikgY29uc3Q7CisgICAgICAgIEludFJlY3QgY29udGVudHNU
b1dpbmRvdyhjb25zdCBJbnRSZWN0JikgY29uc3Q7CisgICAgICAgIAorICAgICAgICBOU1ZpZXcq
IGdldERvY3VtZW50VmlldygpIGNvbnN0OworI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKICAgICB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>
<flag name="review"
          id="8254"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18957</attachid>
            <date>2008-02-06 03:57:58 -0800</date>
            <delta_ts>2008-03-17 09:48:43 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>webkit-scrollview-refactor.patch</filename>
            <type>text/plain</type>
            <size>11346</size>
            <attacher name="Jan Alonzo">jmalonzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
N2U4YjE3ZC4uZjhiM2ZhYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNSBAQAorMjAwOC0wMi0wNiAgSmFuIE1pY2hhZWwg
QWxvbnpvICA8am1hbG9uem9AdW5wbHVnZ2FibGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdBUk5JTkc6IE5PIFRFU1QgQ0FTRVMgQURERUQg
T1IgQ0hBTkdFRAorCisgICAgICAgIFJlZmFjdG9yIFNjcm9sbFZpZXcgcGxhdGZvcm0gY2hlY2tz
LCByZW1vdmluZyByZWR1bmRhbnQgZnVuY3Rpb24gZGVjbGFyYXRpb25zCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9TY3JvbGxWaWV3Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Njcm9sbFZpZXdH
dGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmlldzo6Y29udGVudHNUb1dpbmRvdyk6
CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3Ojp3aW5kb3dUb0NvbnRlbnRzKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9xdC9TY3JvbGxWaWV3UXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsVmlldzo6Y29udGVudHNUb1dpbmRvdyk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3
Ojp3aW5kb3dUb0NvbnRlbnRzKToKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vU2Nyb2xsVmlld1dp
bi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3Ojpjb250ZW50c1RvV2luZG93KToK
KyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OndpbmRvd1RvQ29udGVudHMpOgorICAgICAg
ICAqIHBsYXRmb3JtL3d4L1Njcm9sbFZpZXdXeC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxWaWV3Ojpjb250ZW50c1RvV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6
OndpbmRvd1RvQ29udGVudHMpOgorCiAyMDA4LTAyLTA1ICBPbGl2ZXIgSHVudCAgPG9saXZlckBh
cHBsZS5jb20+CiAKICAgICAgICAgQnVpbGQgZml4IC0tIHRvdWNoIGdlbmVyYXRlLWJpbmRpbmdz
IHRvIHRyaWdnZXIgcmVnZW5lcmF0aW9uIG9mIGJpbmRpbmdzCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BsYXRmb3JtL1Njcm9sbFZpZXcuaCBiL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oCmlu
ZGV4IGI5OGU1NDUuLjhlNjkwNWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xs
Vmlldy5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oCkBAIC04OSwxOCArODks
MTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAvLyBFdmVudCBjb29yZGluYXRlcyBh
cmUgYXNzdW1lZCB0byBiZSBpbiB0aGUgY29vcmRpbmF0ZSBzcGFjZSBvZiBhIHdpbmRvdyB0aGF0
IGNvbnRhaW5zCiAgICAgICAgIC8vIHRoZSBlbnRpcmUgd2lkZ2V0IGhpZXJhcmNoeS4gIEl0IGlz
IHVwIHRvIHRoZSBwbGF0Zm9ybSB0byBkZWNpZGUgd2hhdCB0aGUgcHJlY2lzZSBkZWZpbml0aW9u
CiAgICAgICAgIC8vIG9mIGNvbnRhaW5pbmcgd2luZG93IGlzLiAgKEZvciBleGFtcGxlIG9uIE1h
YyBpdCBpcyB0aGUgY29udGFpbmluZyBOU1dpbmRvdy4pCi0gICAgICAgIEludFBvaW50IHdpbmRv
d1RvQ29udGVudHMoY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLSAgICAgICAgSW50UG9pbnQgY29u
dGVudHNUb1dpbmRvdyhjb25zdCBJbnRQb2ludCYpIGNvbnN0OwotICAgICAgICAKLSNpZiBQTEFU
Rk9STShNQUMpCi0gICAgICAgIC8vIE9uIE1hYyBvbmx5IGJlY2F1c2Ugb2YgZmxpcHBlZCBOU1dp
bmRvdyB5LWNvb3JkaW5hdGVzLCB3ZSBoYXZlIHRvIGhhdmUgYSBzcGVjaWFsIGltcGxlbWVudGF0
aW9uLgogICAgICAgICBJbnRSZWN0IHdpbmRvd1RvQ29udGVudHMoY29uc3QgSW50UmVjdCYpIGNv
bnN0OwogICAgICAgICBJbnRSZWN0IGNvbnRlbnRzVG9XaW5kb3coY29uc3QgSW50UmVjdCYpIGNv
bnN0OwotI2Vsc2UKLSAgICAgICAgLy8gT3RoZXIgcGxhdGZvcm1zIGNhbiBqdXN0IGltcGxlbWVu
dCB0aGVzZSBoZWxwZXIgbWV0aG9kcyB1c2luZyB0aGUgY29ycmVzcG9uZGluZyBwb2ludCBjb252
ZXJzaW9uIG1ldGhvZHMuCi0gICAgICAgIEludFJlY3QgY29udGVudHNUb1dpbmRvdyhjb25zdCBJ
bnRSZWN0JiByZWN0KSBjb25zdCB7IHJldHVybiBJbnRSZWN0KGNvbnRlbnRzVG9XaW5kb3cocmVj
dC5sb2NhdGlvbigpKSwgcmVjdC5zaXplKCkpOyB9Ci0gICAgICAgIEludFJlY3Qgd2luZG93VG9D
b250ZW50cyhjb25zdCBJbnRSZWN0JiByZWN0KSBjb25zdCB7IHJldHVybiBJbnRSZWN0KHdpbmRv
d1RvQ29udGVudHMocmVjdC5sb2NhdGlvbigpKSwgcmVjdC5zaXplKCkpOyB9Ci0jZW5kaWYKKyAg
ICAgICAgSW50UG9pbnQgd2luZG93VG9Db250ZW50cyhjb25zdCBJbnRQb2ludCYpIGNvbnN0Owor
ICAgICAgICBJbnRQb2ludCBjb250ZW50c1RvV2luZG93KGNvbnN0IEludFBvaW50JikgY29uc3Q7
CiAKICAgICAgICAgdm9pZCBzZXRTdGF0aWNCYWNrZ3JvdW5kKGJvb2wpOwogCkBAIC0xMTgsMTIz
ICsxMTAsNjkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAjaWYgUExBVEZPUk0oTUFDKQogICAg
ICAgICBOU1ZpZXcqIGdldERvY3VtZW50VmlldygpIGNvbnN0OwotI2VuZGlmCi0KLSNpZiBQTEFU
Rk9STShXSU4pCisjZWxzZQogICAgICAgICBTY3JvbGxWaWV3KCk7CiAgICAgICAgIH5TY3JvbGxW
aWV3KCk7CiAKLSAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50KEdyYXBoaWNzQ29udGV4dCosIGNv
bnN0IEludFJlY3QmKTsKLSAgICAgICAgdmlydHVhbCB2b2lkIHRoZW1lQ2hhbmdlZCgpOwotICAg
ICAgICAKLSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0Q2hpbGRUb1NlbGYoY29uc3Qg
V2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCBJbnRQb2lu
dCBjb252ZXJ0U2VsZlRvQ2hpbGQoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25z
dDsKLSAgICAgICAgCi0gICAgICAgIHZpcnR1YWwgdm9pZCBnZW9tZXRyeUNoYW5nZWQoKSBjb25z
dDsKLSAgICAgICAgdmlydHVhbCB2b2lkIHNldEZyYW1lR2VvbWV0cnkoY29uc3QgSW50UmVjdCYp
OwotICAgICAgICAKKyAgICAgICAgSGFzaFNldDxXaWRnZXQqPiogY2hpbGRyZW4oKSBjb25zdDsK
KworI2lmIFBMQVRGT1JNKFdJTikgfHwgUExBVEZPUk0oUVQpCisgICAgICAgIHZpcnR1YWwgdm9p
ZCBzZXRQYXJlbnQoU2Nyb2xsVmlldyopOyAgICAgICAgCiAgICAgICAgIEludFJlY3Qgd2luZG93
UmVzaXplclJlY3QoKTsKICAgICAgICAgYm9vbCByZXNpemVyT3ZlcmxhcHNDb250ZW50KCkgY29u
c3Q7CiAgICAgICAgIHZvaWQgYWRqdXN0T3ZlcmxhcHBpbmdTY3JvbGxiYXJDb3VudChpbnQgb3Zl
cmxhcERlbHRhKTsKICAgICAgICAgCi0gICAgICAgIHZpcnR1YWwgdm9pZCBzZXRQYXJlbnQoU2Ny
b2xsVmlldyopOwotCisjaWYgUExBVEZPUk0oV0lOKQorICAgICAgICB2aXJ0dWFsIHZvaWQgdGhl
bWVDaGFuZ2VkKCk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBhdHRhY2hUb1dpbmRvdygpOwotICAg
ICAgICB2aXJ0dWFsIHZvaWQgZGV0YWNoRnJvbVdpbmRvdygpOwotICAgICAgICBib29sIGlzQXR0
YWNoZWRUb1dpbmRvdygpIGNvbnN0OwotCisgICAgICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hGcm9t
V2luZG93KCk7ICAgICAgICAKICAgICAgICAgdmlydHVhbCB2b2lkIHNob3coKTsKICAgICAgICAg
dmlydHVhbCB2b2lkIGhpZGUoKTsKIAotICAgICAgICB2b2lkIGFkZFRvRGlydHlSZWdpb24oY29u
c3QgSW50UmVjdCYpOwotICAgICAgICB2b2lkIHNjcm9sbEJhY2tpbmdTdG9yZShpbnQgZHgsIGlu
dCBkeSwgY29uc3QgSW50UmVjdCYgc2Nyb2xsVmlld1JlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBS
ZWN0KTsKLSAgICAgICAgdm9pZCB1cGRhdGVCYWNraW5nU3RvcmUoKTsKLQorICAgICAgICBib29s
IGlzQXR0YWNoZWRUb1dpbmRvdygpIGNvbnN0OwogICAgICAgICB2b2lkIHNldEFsbG93c1Njcm9s
bGluZyhib29sKTsKICAgICAgICAgYm9vbCBhbGxvd3NTY3JvbGxpbmcoKSBjb25zdDsKKyNlbmRp
ZgogCi0gICAgICAgIEhhc2hTZXQ8V2lkZ2V0Kj4qIGNoaWxkcmVuKCk7Ci0KLSAgICBwcml2YXRl
OgotICAgICAgICB2b2lkIHVwZGF0ZVNjcm9sbGJhcnMoY29uc3QgSW50U2l6ZSYgZGVzaXJlZE9m
ZnNldCk7Ci0gICAgICAgIEludFNpemUgbWF4aW11bVNjcm9sbCgpIGNvbnN0OwotICAgICAgICBj
bGFzcyBTY3JvbGxWaWV3UHJpdmF0ZTsKLSAgICAgICAgU2Nyb2xsVmlld1ByaXZhdGUqIG1fZGF0
YTsKKyNpZiBQTEFURk9STShRVCkKKyAgICAgICAgUGxhdGZvcm1TY3JvbGxiYXIqIGhvcml6b250
YWxTY3JvbGxCYXIoKSBjb25zdDsKKyAgICAgICAgUGxhdGZvcm1TY3JvbGxiYXIqIHZlcnRpY2Fs
U2Nyb2xsQmFyKCkgY29uc3Q7CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKEdUSykKLSAgICAgICAg
U2Nyb2xsVmlldygpOwotICAgICAgICB+U2Nyb2xsVmlldygpOworI2VuZGlmIC8vIGVuZCBQTEFU
Rk9STShXSU4pIHx8IFBMQVRGT1JNKFFUKQogCisjaWYgUExBVEZPUk0oR1RLKQogICAgICAgICB2
aXJ0dWFsIHZvaWQgc2V0R3RrQWRqdXN0bWVudHMoR3RrQWRqdXN0bWVudCogaGFkaiwgR3RrQWRq
dXN0bWVudCogdmFkaik7Ci0gICAgICAgIHZpcnR1YWwgSW50UG9pbnQgY29udmVydENoaWxkVG9T
ZWxmKGNvbnN0IFdpZGdldCosIGNvbnN0IEludFBvaW50JikgY29uc3Q7Ci0gICAgICAgIHZpcnR1
YWwgSW50UG9pbnQgY29udmVydFNlbGZUb0NoaWxkKGNvbnN0IFdpZGdldCosIGNvbnN0IEludFBv
aW50JikgY29uc3Q7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBnZW9tZXRyeUNoYW5nZWQoKSBjb25z
dDsKLQotICAgICAgICB2aXJ0dWFsIHZvaWQgcGFpbnQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3Qg
SW50UmVjdCYpOwotICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0RnJhbWVHZW9tZXRyeShjb25zdCBJ
bnRSZWN0Jik7Ci0KLSAgICAgICAgdm9pZCBhZGRUb0RpcnR5UmVnaW9uKGNvbnN0IEludFJlY3Qm
KTsKLSAgICAgICAgdm9pZCBzY3JvbGxCYWNraW5nU3RvcmUoaW50IGR4LCBpbnQgZHksIGNvbnN0
IEludFJlY3QmIHNjcm9sbFZpZXdSZWN0LCBjb25zdCBJbnRSZWN0JiBjbGlwUmVjdCk7Ci0gICAg
ICAgIHZvaWQgdXBkYXRlQmFja2luZ1N0b3JlKCk7Ci0KLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAg
IEhhc2hTZXQ8V2lkZ2V0Kj4qIGNoaWxkcmVuKCkgY29uc3Q7Ci0KLSAgICBwcml2YXRlOgotICAg
ICAgICBJbnRTaXplIG1heGltdW1TY3JvbGwoKSBjb25zdDsKLSAgICAgICAgdm9pZCB1cGRhdGVT
Y3JvbGxiYXJzKGNvbnN0IEludFNpemUmIGRlc2lyZWRPZmZzZXQpOwotCi0gICAgICAgIGNsYXNz
IFNjcm9sbFZpZXdQcml2YXRlOwotICAgICAgICBTY3JvbGxWaWV3UHJpdmF0ZSogbV9kYXRhOwog
I2VuZGlmCiAKLSNpZiBQTEFURk9STShRVCkKLSAgICAgICAgU2Nyb2xsVmlldygpOwotICAgICAg
ICB+U2Nyb2xsVmlldygpOwotCisjaWYgIVBMQVRGT1JNKFdYKQorICAgICAgICAvLyBPdGhlciBw
bGF0Zm9ybXMgY2FuIGp1c3QgaW1wbGVtZW50IHRoZXNlIGhlbHBlciBtZXRob2RzIHVzaW5nIHRo
ZSBjb3JyZXNwb25kaW5nIHBvaW50IGNvbnZlcnNpb24gbWV0aG9kcy4gICAgICAgIAogICAgICAg
ICB2aXJ0dWFsIHZvaWQgcGFpbnQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpOwot
CiAgICAgICAgIHZpcnR1YWwgSW50UG9pbnQgY29udmVydENoaWxkVG9TZWxmKGNvbnN0IFdpZGdl
dCosIGNvbnN0IEludFBvaW50JikgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgSW50UG9pbnQgY29u
dmVydFNlbGZUb0NoaWxkKGNvbnN0IFdpZGdldCosIGNvbnN0IEludFBvaW50JikgY29uc3Q7Ci0K
ICAgICAgICAgdmlydHVhbCB2b2lkIGdlb21ldHJ5Q2hhbmdlZCgpIGNvbnN0OwogICAgICAgICB2
aXJ0dWFsIHZvaWQgc2V0RnJhbWVHZW9tZXRyeShjb25zdCBJbnRSZWN0Jik7CiAKLSAgICAgICAg
SW50UmVjdCB3aW5kb3dSZXNpemVyUmVjdCgpOwotICAgICAgICBib29sIHJlc2l6ZXJPdmVybGFw
c0NvbnRlbnQoKSBjb25zdDsKLSAgICAgICAgdm9pZCBhZGp1c3RPdmVybGFwcGluZ1Njcm9sbGJh
ckNvdW50KGludCBvdmVybGFwRGVsdGEpOwotCi0gICAgICAgIHZpcnR1YWwgdm9pZCBzZXRQYXJl
bnQoU2Nyb2xsVmlldyopOwotCiAgICAgICAgIHZvaWQgYWRkVG9EaXJ0eVJlZ2lvbihjb25zdCBJ
bnRSZWN0Jik7CiAgICAgICAgIHZvaWQgc2Nyb2xsQmFja2luZ1N0b3JlKGludCBkeCwgaW50IGR5
LCBjb25zdCBJbnRSZWN0JiBzY3JvbGxWaWV3UmVjdCwgY29uc3QgSW50UmVjdCYgY2xpcFJlY3Qp
OwogICAgICAgICB2b2lkIHVwZGF0ZUJhY2tpbmdTdG9yZSgpOwogCi0gICAgICAgIFBsYXRmb3Jt
U2Nyb2xsYmFyICpob3Jpem9udGFsU2Nyb2xsQmFyKCkgY29uc3Q7Ci0gICAgICAgIFBsYXRmb3Jt
U2Nyb2xsYmFyICp2ZXJ0aWNhbFNjcm9sbEJhcigpIGNvbnN0OwotCi0gICAgICAgIEhhc2hTZXQ8
V2lkZ2V0Kj4qIGNoaWxkcmVuKCk7Ci0KICAgICBwcml2YXRlOgogICAgICAgICB2b2lkIHVwZGF0
ZVNjcm9sbGJhcnMoY29uc3QgSW50U2l6ZSYgZGVzaXJlZE9mZnNldCk7CiAgICAgICAgIEludFNp
emUgbWF4aW11bVNjcm9sbCgpIGNvbnN0OwotICAgICAgICBjbGFzcyBTY3JvbGxWaWV3UHJpdmF0
ZTsKLSAgICAgICAgU2Nyb2xsVmlld1ByaXZhdGUqIG1fZGF0YTsKLSNlbmRpZgotI2lmIFBMQVRG
T1JNKFdYKQotICAgICAgICBTY3JvbGxWaWV3KCk7Ci0gICAgICAgIH5TY3JvbGxWaWV3KCk7Ci0g
ICAgICAgIEhhc2hTZXQ8V2lkZ2V0Kj4qIGNoaWxkcmVuKCk7CisjZWxzZQogICAgICAgICB2aXJ0
dWFsIHZvaWQgc2V0TmF0aXZlV2luZG93KHd4V2luZG93KiB3aW5kb3cpOwogCiAgICAgcHJpdmF0
ZToKICAgICAgICAgdm9pZCBhZGp1c3RTY3JvbGxiYXJzKGludCB4ID0gLTEsIGludCB5ID0gLTEs
IGJvb2wgcmVmcmVzaCA9IHRydWUpOworI2VuZGlmIC8vIGVuZCBQTEFURk9STShXWCkKIAorICAg
IHByaXZhdGU6CiAgICAgICAgIGNsYXNzIFNjcm9sbFZpZXdQcml2YXRlOwogICAgICAgICBTY3Jv
bGxWaWV3UHJpdmF0ZSogbV9kYXRhOwotI2VuZGlmCi0gICAgfTsKKyNlbmRpZiAvLyBlbmQgIVBM
QVRGT1JNKE1BQykKKworICAgIH07IC8vIGVuZCBjbGFzcyBTY3JvbGxWaWV3CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvU2Nyb2xs
Vmlld0d0ay5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TY3JvbGxWaWV3R3RrLmNwcAppbmRl
eCBlYzQzMTI4Li5mMzhkM2JlIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TY3Jv
bGxWaWV3R3RrLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TY3JvbGxWaWV3R3RrLmNw
cApAQCAtNjcwLDYgKzY3MCwxNiBAQCB2b2lkIFNjcm9sbFZpZXc6OnVwZGF0ZVNjcm9sbGJhcnMo
Y29uc3QgSW50U2l6ZSYgZGVzaXJlZE9mZnNldCkKICAgICBtX2RhdGEtPmluVXBkYXRlU2Nyb2xs
YmFycyA9IGZhbHNlOwogfQogCitJbnRSZWN0IFNjcm9sbFZpZXc6OmNvbnRlbnRzVG9XaW5kb3co
Y29uc3QgSW50UmVjdCYgcmVjdCkgY29uc3QKK3sKKyAgICByZXR1cm4gSW50UmVjdChjb250ZW50
c1RvV2luZG93KHJlY3QubG9jYXRpb24oKSksIHJlY3Quc2l6ZSgpKTsKK30KKworSW50UmVjdCBT
Y3JvbGxWaWV3Ojp3aW5kb3dUb0NvbnRlbnRzKGNvbnN0IEludFJlY3QmIHJlY3QpIGNvbnN0Cit7
CisgICAgcmV0dXJuIEludFJlY3Qod2luZG93VG9Db250ZW50cyhyZWN0LmxvY2F0aW9uKCkpLCBy
ZWN0LnNpemUoKSk7Cit9CisKIEludFBvaW50IFNjcm9sbFZpZXc6OndpbmRvd1RvQ29udGVudHMo
Y29uc3QgSW50UG9pbnQmIHdpbmRvd1BvaW50KSBjb25zdAogewogICAgIEludFBvaW50IHZpZXdQ
b2ludCA9IGNvbnZlcnRGcm9tQ29udGFpbmluZ1dpbmRvdyh3aW5kb3dQb2ludCk7CkBAIC04MjYs
NyArODM2LDcgQEAgdm9pZCBTY3JvbGxWaWV3Ojp1cGRhdGVCYWNraW5nU3RvcmUoKQogCiBIYXNo
U2V0PFdpZGdldCo+KiBTY3JvbGxWaWV3OjpjaGlsZHJlbigpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
ICZtX2RhdGEtPmNoaWxkcmVuOworICAgIHJldHVybiAmKG1fZGF0YS0+Y2hpbGRyZW4pOwogfQog
CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL3F0L1Njcm9sbFZpZXdRdC5jcHAgYi9X
ZWJDb3JlL3BsYXRmb3JtL3F0L1Njcm9sbFZpZXdRdC5jcHAKaW5kZXggNmNkOTJiZi4uZTQ2ODhl
ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9xdC9TY3JvbGxWaWV3UXQuY3BwCisrKyBi
L1dlYkNvcmUvcGxhdGZvcm0vcXQvU2Nyb2xsVmlld1F0LmNwcApAQCAtMjgyLDcgKzI4Miw3IEBA
IHZvaWQgU2Nyb2xsVmlldzo6c2V0RnJhbWVHZW9tZXRyeShjb25zdCBJbnRSZWN0JiBuZXdHZW9t
ZXRyeSkKICAgICBnZW9tZXRyeUNoYW5nZWQoKTsKIH0KIAotSGFzaFNldDxXaWRnZXQqPiogU2Ny
b2xsVmlldzo6Y2hpbGRyZW4oKQorSGFzaFNldDxXaWRnZXQqPiogU2Nyb2xsVmlldzo6Y2hpbGRy
ZW4oKSBjb25zdAogewogICAgIHJldHVybiAmKG1fZGF0YS0+bV9jaGlsZHJlbik7CiB9CkBAIC0z
MTUsNiArMzE1LDE2IEBAIGludCBTY3JvbGxWaWV3Ojpjb250ZW50c0hlaWdodCgpIGNvbnN0CiAg
ICAgcmV0dXJuIG1fZGF0YS0+bV9jb250ZW50c1NpemUuaGVpZ2h0KCk7CiB9CiAKK0ludFJlY3Qg
U2Nyb2xsVmlldzo6Y29udGVudHNUb1dpbmRvdyhjb25zdCBJbnRSZWN0JiByZWN0KSBjb25zdAor
eworICAgIHJldHVybiBJbnRSZWN0KGNvbnRlbnRzVG9XaW5kb3cocmVjdC5sb2NhdGlvbigpKSwg
cmVjdC5zaXplKCkpOworfQorCitJbnRSZWN0IFNjcm9sbFZpZXc6OndpbmRvd1RvQ29udGVudHMo
Y29uc3QgSW50UmVjdCYgcmVjdCkgY29uc3QKK3sKKyAgICByZXR1cm4gSW50UmVjdCh3aW5kb3dU
b0NvbnRlbnRzKHJlY3QubG9jYXRpb24oKSksIHJlY3Quc2l6ZSgpKTsKK30KKwogSW50UG9pbnQg
U2Nyb2xsVmlldzo6d2luZG93VG9Db250ZW50cyhjb25zdCBJbnRQb2ludCYgd2luZG93UG9pbnQp
IGNvbnN0CiB7CiAgICAgSW50UG9pbnQgdmlld1BvaW50ID0gY29udmVydEZyb21Db250YWluaW5n
V2luZG93KHdpbmRvd1BvaW50KTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vd2luL1Nj
cm9sbFZpZXdXaW4uY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS93aW4vU2Nyb2xsVmlld1dpbi5jcHAK
aW5kZXggNzA1ODk4YS4uMzQzZDE3MyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS93aW4v
U2Nyb2xsVmlld1dpbi5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS93aW4vU2Nyb2xsVmlld1dp
bi5jcHAKQEAgLTMyMCw2ICszMjAsMTYgQEAgaW50IFNjcm9sbFZpZXc6OmNvbnRlbnRzSGVpZ2h0
KCkgY29uc3QKICAgICByZXR1cm4gbV9kYXRhLT5tX2NvbnRlbnRzU2l6ZS5oZWlnaHQoKTsKIH0K
IAorSW50UmVjdCBTY3JvbGxWaWV3Ojpjb250ZW50c1RvV2luZG93KGNvbnN0IEludFJlY3QmIHJl
Y3QpIGNvbnN0Cit7CisgICAgcmV0dXJuIEludFJlY3QoY29udGVudHNUb1dpbmRvdyhyZWN0Lmxv
Y2F0aW9uKCkpLCByZWN0LnNpemUoKSk7Cit9CisKK0ludFJlY3QgU2Nyb2xsVmlldzo6d2luZG93
VG9Db250ZW50cyhjb25zdCBJbnRSZWN0JiByZWN0KSBjb25zdAoreworICAgIHJldHVybiBJbnRS
ZWN0KHdpbmRvd1RvQ29udGVudHMocmVjdC5sb2NhdGlvbigpKSwgcmVjdC5zaXplKCkpOworfQor
CiBJbnRQb2ludCBTY3JvbGxWaWV3Ojp3aW5kb3dUb0NvbnRlbnRzKGNvbnN0IEludFBvaW50JiB3
aW5kb3dQb2ludCkgY29uc3QKIHsKICAgICBJbnRQb2ludCB2aWV3UG9pbnQgPSBjb252ZXJ0RnJv
bUNvbnRhaW5pbmdXaW5kb3cod2luZG93UG9pbnQpOwpAQCAtNjg1LDcgKzY5NSw3IEBAIHZvaWQg
U2Nyb2xsVmlldzo6d2hlZWxFdmVudChQbGF0Zm9ybVdoZWVsRXZlbnQmIGUpCiAgICAgfQogfQog
Ci1IYXNoU2V0PFdpZGdldCo+KiBTY3JvbGxWaWV3OjpjaGlsZHJlbigpCitIYXNoU2V0PFdpZGdl
dCo+KiBTY3JvbGxWaWV3OjpjaGlsZHJlbigpIGNvbnN0CiB7CiAgICAgcmV0dXJuICYobV9kYXRh
LT5tX2NoaWxkcmVuKTsKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vd3gvU2Nyb2xs
Vmlld1d4LmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vd3gvU2Nyb2xsVmlld1d4LmNwcAppbmRleCBk
NDExMmZhLi5hNmFmYzM2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL3d4L1Njcm9sbFZp
ZXdXeC5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS93eC9TY3JvbGxWaWV3V3guY3BwCkBAIC0z
ODYsMTEgKzM4NiwyMSBAQCB2b2lkIFNjcm9sbFZpZXc6OnN1cHByZXNzU2Nyb2xsYmFycyhib29s
IHN1cHByZXNzZWQsIGJvb2wgcmVwYWludE9uU3VwcHJlc3MpCiAgICAgICAgIG1fZGF0YS0+c3Vw
cHJlc3NTY3JvbGxiYXJzID0gc3VwcHJlc3NlZDsKIH0KIAotSW50UG9pbnQgU2Nyb2xsVmlldzo6
Y29udGVudHNUb1dpbmRvdyhjb25zdCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CitJbnRSZWN0IFNj
cm9sbFZpZXc6OmNvbnRlbnRzVG9XaW5kb3coY29uc3QgSW50UmVjdCYgcmVjdCkgY29uc3QKIHsK
LSAgICByZXR1cm4gcG9pbnQgLSBzY3JvbGxPZmZzZXQoKTsKKyAgICByZXR1cm4gSW50UmVjdChj
b250ZW50c1RvV2luZG93KHJlY3QubG9jYXRpb24oKSksIHJlY3Quc2l6ZSgpKTsKK30KKworSW50
UmVjdCBTY3JvbGxWaWV3Ojp3aW5kb3dUb0NvbnRlbnRzKGNvbnN0IEludFJlY3QmIHJlY3QpIGNv
bnN0Cit7CisgICAgcmV0dXJuIEludFJlY3Qod2luZG93VG9Db250ZW50cyhyZWN0LmxvY2F0aW9u
KCkpLCByZWN0LnNpemUoKSk7CiB9CiAKK0ludFBvaW50IFNjcm9sbFZpZXc6OmNvbnRlbnRzVG9X
aW5kb3coY29uc3QgSW50UG9pbnQmIHBvaW50KSBjb25zdCAgICAKK3sKKyAgICByZXR1cm4gcG9p
bnQgLSBzY3JvbGxPZmZzZXQoKTsKK30KKyAgICAKIEludFBvaW50IFNjcm9sbFZpZXc6OndpbmRv
d1RvQ29udGVudHMoY29uc3QgSW50UG9pbnQmIHBvaW50KSBjb25zdAogewogICAgIHJldHVybiBw
b2ludCArIHNjcm9sbE9mZnNldCgpOwpAQCAtNDM0LDcgKzQ0NCw3IEBAIHZvaWQgU2Nyb2xsVmll
dzo6cmVtb3ZlQ2hpbGQoV2lkZ2V0KiB3aWRnZXQpCiAgICAgfQogfQogCi1IYXNoU2V0PFdpZGdl
dCo+KiBTY3JvbGxWaWV3OjpjaGlsZHJlbigpCitIYXNoU2V0PFdpZGdldCo+KiBTY3JvbGxWaWV3
OjpjaGlsZHJlbigpIGNvbnN0CiB7CiAgICAgcmV0dXJuICYobV9kYXRhLT5tX2NoaWxkcmVuKTsK
IH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19825</attachid>
            <date>2008-03-16 22:49:58 -0700</date>
            <delta_ts>2008-03-17 09:57:28 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>webkit-scrollview-refactor.patch</filename>
            <type>text/plain</type>
            <size>6014</size>
            <attacher name="Jan Alonzo">jmalonzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ODM4NTk2ZS4uNWEwMzhjOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAwOC0wMy0xNiAgSmFuIE1pY2hhZWwg
QWxvbnpvICA8am1hbG9uem9AdW5wbHVnZ2FibGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdBUk5JTkc6IE5PIFRFU1QgQ0FTRVMgQURERUQg
T1IgQ0hBTkdFRAorCisgICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE3MTcyCisgICAgICAgIFJlZmFjdG9yIHBsYXRmb3JtIGNoZWNrcyBpbiBTY3JvbGxWaWV3
LmgKKworICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKKwogMjAwOC0wMy0xNiAgTWFj
aWVqIFN0YWNob3dpYWsgIDxtanNAYXBwbGUuY29tPgogCiAgICAgICAgIE5vdCByZXZpZXdlZCwg
anVzdCBmaXhpbmcgYW4gaW5jb21wbGV0ZSBjb21tZW50IGZyb20gdGhlIGxhc3QgY29tbWl0Lgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmggYi9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbFZpZXcuaAppbmRleCA3YjVhODgxLi5iMGU4NWEyIDEwMDY0NAotLS0gYS9XZWJD
b3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZp
ZXcuaApAQCAtODIsNyArODIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgLy8g
VGhpcyBnaXZlcyB1cyBhIG1lYW5zIG9mIGJsb2NraW5nIHBhaW50aW5nIG9uIG91ciBzY3JvbGxi
YXJzIHVudGlsIHRoZSBmaXJzdCBsYXlvdXQgaGFzIG9jY3VycmVkLgogICAgICAgICB2b2lkIHN1
cHByZXNzU2Nyb2xsYmFycyhib29sIHN1cHByZXNzZWQsIGJvb2wgcmVwYWludE9uVW5zdXBwcmVz
cyA9IGZhbHNlKTsKLSAgICAgICAgCisKICAgICAgICAgU2Nyb2xsYmFyTW9kZSB2U2Nyb2xsYmFy
TW9kZSgpIGNvbnN0OwogICAgICAgICBTY3JvbGxiYXJNb2RlIGhTY3JvbGxiYXJNb2RlKCkgY29u
c3Q7CiAKQEAgLTEyMyw3MiArMTIzLDI2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
TlNTY3JvbGxWaWV3PFdlYkNvcmVGcmFtZVNjcm9sbFZpZXc+KiBzY3JvbGxWaWV3KCkgY29uc3Q7
CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKFdJTikKKyNpZiAhUExBVEZPUk0oTUFDKQogICAgIHB1
YmxpYzoKLSAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0
IEludFJlY3QmKTsKLSAgICAgICAgdmlydHVhbCB2b2lkIHRoZW1lQ2hhbmdlZCgpOwotICAgICAg
ICAKLSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0Q2hpbGRUb1NlbGYoY29uc3QgV2lk
Z2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBj
b252ZXJ0U2VsZlRvQ2hpbGQoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsK
LSAgICAgICAgCi0gICAgICAgIHZpcnR1YWwgdm9pZCBnZW9tZXRyeUNoYW5nZWQoKSBjb25zdDsK
LSAgICAgICAgdmlydHVhbCB2b2lkIHNldEZyYW1lR2VvbWV0cnkoY29uc3QgSW50UmVjdCYpOwot
ICAgICAgICAKLSAgICAgICAgSW50UmVjdCB3aW5kb3dSZXNpemVyUmVjdCgpOwotICAgICAgICBi
b29sIHJlc2l6ZXJPdmVybGFwc0NvbnRlbnQoKSBjb25zdDsKLSAgICAgICAgdm9pZCBhZGp1c3RP
dmVybGFwcGluZ1Njcm9sbGJhckNvdW50KGludCBvdmVybGFwRGVsdGEpOwotICAgICAgICAKLSAg
ICAgICAgdmlydHVhbCB2b2lkIHNldFBhcmVudChTY3JvbGxWaWV3Kik7Ci0KLSAgICAgICAgdmly
dHVhbCB2b2lkIGF0dGFjaFRvV2luZG93KCk7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hG
cm9tV2luZG93KCk7Ci0gICAgICAgIGJvb2wgaXNBdHRhY2hlZFRvV2luZG93KCkgY29uc3Q7Ci0K
LSAgICAgICAgdmlydHVhbCB2b2lkIHNob3coKTsKLSAgICAgICAgdmlydHVhbCB2b2lkIGhpZGUo
KTsKLQotICAgICAgICB2b2lkIGFkZFRvRGlydHlSZWdpb24oY29uc3QgSW50UmVjdCYpOwotICAg
ICAgICB2b2lkIHNjcm9sbEJhY2tpbmdTdG9yZShpbnQgZHgsIGludCBkeSwgY29uc3QgSW50UmVj
dCYgc2Nyb2xsVmlld1JlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KTsKLSAgICAgICAgdm9p
ZCB1cGRhdGVCYWNraW5nU3RvcmUoKTsKLQotICAgICAgICB2b2lkIHNldEFsbG93c1Njcm9sbGlu
Zyhib29sKTsKLSAgICAgICAgYm9vbCBhbGxvd3NTY3JvbGxpbmcoKSBjb25zdDsKLQogICAgICAg
ICBIYXNoU2V0PFdpZGdldCo+KiBjaGlsZHJlbigpOwogCiAgICAgcHJpdmF0ZToKLSAgICAgICAg
dm9pZCB1cGRhdGVTY3JvbGxiYXJzKGNvbnN0IEludFNpemUmIGRlc2lyZWRPZmZzZXQpOwogICAg
ICAgICBJbnRTaXplIG1heGltdW1TY3JvbGwoKSBjb25zdDsKICAgICAgICAgY2xhc3MgU2Nyb2xs
Vmlld1ByaXZhdGU7CiAgICAgICAgIFNjcm9sbFZpZXdQcml2YXRlKiBtX2RhdGE7Ci0jZW5kaWYK
IAotI2lmIFBMQVRGT1JNKEdUSykKKyNpZiBQTEFURk9STShXWCkKICAgICBwdWJsaWM6Ci0gICAg
ICAgIHZpcnR1YWwgdm9pZCBzZXRHdGtBZGp1c3RtZW50cyhHdGtBZGp1c3RtZW50KiBoYWRqLCBH
dGtBZGp1c3RtZW50KiB2YWRqKTsKLSAgICAgICAgdmlydHVhbCBJbnRQb2ludCBjb252ZXJ0Q2hp
bGRUb1NlbGYoY29uc3QgV2lkZ2V0KiwgY29uc3QgSW50UG9pbnQmKSBjb25zdDsKLSAgICAgICAg
dmlydHVhbCBJbnRQb2ludCBjb252ZXJ0U2VsZlRvQ2hpbGQoY29uc3QgV2lkZ2V0KiwgY29uc3Qg
SW50UG9pbnQmKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCB2b2lkIGdlb21ldHJ5Q2hhbmdlZCgp
IGNvbnN0OwotCi0gICAgICAgIHZpcnR1YWwgdm9pZCBwYWludChHcmFwaGljc0NvbnRleHQqLCBj
b25zdCBJbnRSZWN0Jik7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBzZXRGcmFtZUdlb21ldHJ5KGNv
bnN0IEludFJlY3QmKTsKLQotICAgICAgICB2b2lkIGFkZFRvRGlydHlSZWdpb24oY29uc3QgSW50
UmVjdCYpOwotICAgICAgICB2b2lkIHNjcm9sbEJhY2tpbmdTdG9yZShpbnQgZHgsIGludCBkeSwg
Y29uc3QgSW50UmVjdCYgc2Nyb2xsVmlld1JlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KTsK
LSAgICAgICAgdm9pZCB1cGRhdGVCYWNraW5nU3RvcmUoKTsKKyAgICAgICAgdmlydHVhbCB2b2lk
IHNldE5hdGl2ZVdpbmRvdyh3eFdpbmRvdyogd2luZG93KTsKIAotICAgIHByb3RlY3RlZDoKLSAg
ICAgICAgSGFzaFNldDxXaWRnZXQqPiogY2hpbGRyZW4oKSBjb25zdDsKKyAgICBwcml2YXRlOgor
ICAgICAgICB2b2lkIGFkanVzdFNjcm9sbGJhcnMoaW50IHggPSAtMSwgaW50IHkgPSAtMSwgYm9v
bCByZWZyZXNoID0gdHJ1ZSk7CiAKKyNlbHNlCiAgICAgcHJpdmF0ZToKLSAgICAgICAgSW50U2l6
ZSBtYXhpbXVtU2Nyb2xsKCkgY29uc3Q7CiAgICAgICAgIHZvaWQgdXBkYXRlU2Nyb2xsYmFycyhj
b25zdCBJbnRTaXplJiBkZXNpcmVkT2Zmc2V0KTsKIAotICAgICAgICBjbGFzcyBTY3JvbGxWaWV3
UHJpdmF0ZTsKLSAgICAgICAgU2Nyb2xsVmlld1ByaXZhdGUqIG1fZGF0YTsKLSNlbmRpZgotCi0j
aWYgUExBVEZPUk0oUVQpCiAgICAgcHVibGljOgogICAgICAgICB2aXJ0dWFsIHZvaWQgcGFpbnQo
R3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpOwogCkBAIC0xOTgsNDQgKzE1Miw1MCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBnZW9tZXRyeUNoYW5n
ZWQoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCB2b2lkIHNldEZyYW1lR2VvbWV0cnkoY29uc3Qg
SW50UmVjdCYpOwogCisgICAgICAgIHZvaWQgYWRkVG9EaXJ0eVJlZ2lvbihjb25zdCBJbnRSZWN0
Jik7CisgICAgICAgIHZvaWQgc2Nyb2xsQmFja2luZ1N0b3JlKGludCBkeCwgaW50IGR5LCBjb25z
dCBJbnRSZWN0JiBzY3JvbGxWaWV3UmVjdCwgY29uc3QgSW50UmVjdCYgY2xpcFJlY3QpOworICAg
ICAgICB2b2lkIHVwZGF0ZUJhY2tpbmdTdG9yZSgpOworCisKKyNpZiBQTEFURk9STShXSU4pIHx8
IFBMQVRGT1JNKFFUKQogICAgICAgICBJbnRSZWN0IHdpbmRvd1Jlc2l6ZXJSZWN0KCk7CiAgICAg
ICAgIGJvb2wgcmVzaXplck92ZXJsYXBzQ29udGVudCgpIGNvbnN0OwogICAgICAgICB2b2lkIGFk
anVzdE92ZXJsYXBwaW5nU2Nyb2xsYmFyQ291bnQoaW50IG92ZXJsYXBEZWx0YSk7CiAKICAgICAg
ICAgdmlydHVhbCB2b2lkIHNldFBhcmVudChTY3JvbGxWaWV3Kik7CisjZW5kaWYKIAotICAgICAg
ICB2b2lkIGFkZFRvRGlydHlSZWdpb24oY29uc3QgSW50UmVjdCYpOwotICAgICAgICB2b2lkIHNj
cm9sbEJhY2tpbmdTdG9yZShpbnQgZHgsIGludCBkeSwgY29uc3QgSW50UmVjdCYgc2Nyb2xsVmll
d1JlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KTsKLSAgICAgICAgdm9pZCB1cGRhdGVCYWNr
aW5nU3RvcmUoKTsKKyNpZiBQTEFURk9STShXSU4pCisgICAgICAgIHZpcnR1YWwgdm9pZCB0aGVt
ZUNoYW5nZWQoKTsKKworICAgICAgICB2aXJ0dWFsIHZvaWQgYXR0YWNoVG9XaW5kb3coKTsKKyAg
ICAgICAgdmlydHVhbCB2b2lkIGRldGFjaEZyb21XaW5kb3coKTsKKyAgICAgICAgYm9vbCBpc0F0
dGFjaGVkVG9XaW5kb3coKSBjb25zdDsKKworICAgICAgICB2aXJ0dWFsIHZvaWQgc2hvdygpOwor
ICAgICAgICB2aXJ0dWFsIHZvaWQgaGlkZSgpOworCisgICAgICAgIHZvaWQgc2V0QWxsb3dzU2Ny
b2xsaW5nKGJvb2wpOworICAgICAgICBib29sIGFsbG93c1Njcm9sbGluZygpIGNvbnN0OworI2Vu
ZGlmCiAKKyNpZiBQTEFURk9STShRVCkKICAgICAgICAgUGxhdGZvcm1TY3JvbGxiYXIgKmhvcml6
b250YWxTY3JvbGxCYXIoKSBjb25zdDsKICAgICAgICAgUGxhdGZvcm1TY3JvbGxiYXIgKnZlcnRp
Y2FsU2Nyb2xsQmFyKCkgY29uc3Q7CisjZW5kaWYKIAotICAgICAgICBIYXNoU2V0PFdpZGdldCo+
KiBjaGlsZHJlbigpOwotCi0gICAgcHJpdmF0ZToKLSAgICAgICAgdm9pZCB1cGRhdGVTY3JvbGxi
YXJzKGNvbnN0IEludFNpemUmIGRlc2lyZWRPZmZzZXQpOwotICAgICAgICBJbnRTaXplIG1heGlt
dW1TY3JvbGwoKSBjb25zdDsKLSAgICAgICAgY2xhc3MgU2Nyb2xsVmlld1ByaXZhdGU7Ci0gICAg
ICAgIFNjcm9sbFZpZXdQcml2YXRlKiBtX2RhdGE7CisjaWYgUExBVEZPUk0oR1RLKQorICAgICAg
ICB2aXJ0dWFsIHZvaWQgc2V0R3RrQWRqdXN0bWVudHMoR3RrQWRqdXN0bWVudCogaGFkaiwgR3Rr
QWRqdXN0bWVudCogdmFkaik7CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKFdYKQotICAgIHB1Ymxp
YzoKLSAgICAgICAgSGFzaFNldDxXaWRnZXQqPiogY2hpbGRyZW4oKTsKLSAgICAgICAgdmlydHVh
bCB2b2lkIHNldE5hdGl2ZVdpbmRvdyh3eFdpbmRvdyogd2luZG93KTsKKyNlbmRpZiAvLyAhUExB
VEZPUk0oV1gpCiAKLSAgICBwcml2YXRlOgotICAgICAgICB2b2lkIGFkanVzdFNjcm9sbGJhcnMo
aW50IHggPSAtMSwgaW50IHkgPSAtMSwgYm9vbCByZWZyZXNoID0gdHJ1ZSk7Ci0gICAgICAgIElu
dFNpemUgbWF4aW11bVNjcm9sbCgpIGNvbnN0OworI2VuZGlmIC8vICFQTEFURk9STShNQUMpCiAK
LSAgICAgICAgY2xhc3MgU2Nyb2xsVmlld1ByaXZhdGU7Ci0gICAgICAgIFNjcm9sbFZpZXdQcml2
YXRlKiBtX2RhdGE7Ci0jZW5kaWYKLSAgICB9OworICAgIH07IC8vIENsYXNzIFNjcm9sbFZpZXcK
IAotI2lmICFQTEFURk9STShNQUMpCiAKKyNpZiAhUExBVEZPUk0oTUFDKQogLy8gT24gTWFjIG9u
bHkgYmVjYXVzZSBvZiBmbGlwcGVkIE5TV2luZG93IHktY29vcmRpbmF0ZXMsIHdlIGhhdmUgdG8g
aGF2ZSBhIHNwZWNpYWwgaW1wbGVtZW50YXRpb24uCiAvLyBPdGhlciBwbGF0Zm9ybXMgY2FuIGp1
c3QgaW1wbGVtZW50IHRoZXNlIGhlbHBlciBtZXRob2RzIHVzaW5nIHRoZSBjb3JyZXNwb25kaW5n
IHBvaW50IGNvbnZlcnNpb24gbWV0aG9kcy4KIAo=
</data>
<flag name="review"
          id="8674"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>