<?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>15886</bug_id>
          
          <creation_ts>2007-11-07 10:44:21 -0800</creation_ts>
          <short_desc>LayoutTests/fast/events/mousedown_in_scrollbar.html crashes on WebKit/Qt</short_desc>
          <delta_ts>2007-11-29 21:52:53 -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>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.4</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="Holger Freyther">zecke</reporter>
          <assigned_to name="George Staikos">staikos</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>60575</commentid>
    <comment_count>0</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2007-11-07 10:44:21 -0800</bug_when>
    <thetext>The above test case crashes on WebKit/Qt and I would like to get some feedback:

PlatformScrollBarQt (created by the RenderLayer) can crash in two ways:
   1.) It was removed from the FrameView and it acceses parent()
   2.) m_client is a dangling pointer after RenderLayer was destroyed.

1.) is easy to fix
2.) Adding a ScrollBar::setClient and calling it from RenderLayer::destroyScrollBar to avoid the dangling pointer. I assume this approach will be declared too scientific so see the other alternative


EventHandler gives the PlatformScrollBar a 2nd live because m_lastScrollbarUnderMouse is a RefPtr and has the scrollbar stored. Rev 24942 introduced the test case and I extend the change to take m_lastScrollbarUnderMouse into consideration.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>60577</commentid>
    <comment_count>1</comment_count>
      <attachid>17112</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2007-11-07 10:46:02 -0800</bug_when>
    <thetext>Created attachment 17112
Do not crash on mousedown_in_scrollbar.html

Change EventHandler to give up the reference to a Scrollbar created by the RenderLayer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>62758</commentid>
    <comment_count>2</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2007-11-29 21:52:53 -0800</bug_when>
    <thetext>Finally landed in r28227.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17112</attachid>
            <date>2007-11-07 10:46:02 -0800</date>
            <delta_ts>2007-11-22 19:40:07 -0800</delta_ts>
            <desc>Do not crash on mousedown_in_scrollbar.html</desc>
            <filename>0001-Fix-fast-events-mousedown_in_scrollbar.html.patch</filename>
            <type>text/plain</type>
            <size>2539</size>
            <attacher name="Holger Freyther">zecke</attacher>
            
              <data encoding="base64">RnJvbSBlZWVkMTUwMTUxYmQyMDVhMTI4MDA4OGE4ZDcyMWM3MGQ0NmIzZGJhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBIb2xnZXIgSGFucyBQZXRlciBGcmV5dGhlciA8aG9sZ2VyLmZy
ZXl0aGVyQHRyb2xsdGVjaC5jb20+CkRhdGU6IFdlZCwgNyBOb3YgMjAwNyAwMToyNzozMSArMDEw
MApTdWJqZWN0OiBbUEFUQ0hdICogRml4IGZhc3QvZXZlbnRzL21vdXNlZG93bl9pbl9zY3JvbGxi
YXIuaHRtbAogKiBUaGlzIHRlc3QgdXNlZCB0byBjcmFzaCBpbiBQbGF0Zm9ybVNjcm9sbGJhclF0
Ojptb3VzZSpFdmVudCBkdWUKICAgcGFyZW50KCkgcmV0dXJuaW5nIDAuCiAqIEV4dGVuZCB0aGUg
Y3VycmVudCBjaGVjayB0aGF0IHRoZSBzY3JvbGxiYXIgaW4gdGhlIG1ldiBjYW4gYmUgZ28gYXdh
eS4KICAgVGhpcyBoYXBwZW5zIGlmIHdlIGRlc3Ryb3kgYSBSZW5kZXJMYXllciBhcyB0aGUgcmVz
dWx0IG9mIGEgY2xpY2suIEluIHRoZQogICBjYXNlIG9mIFF0IHdlIGNhbiBoYXZlIHRoaXMgc2Ny
b2xsYmFyIGluICBtX2xhc3RTY3JvbGxiYXJVbmRlck1vdXNlLiBUaGUKICAgUmVuZGVyTGF5ZXIg
aXMgdGhlIFNjcm9sbGJhckNsaWVudCwgbV9sYXN0U2Nyb2xsYmFyVW5kZXJNb3VzZSBpcyBhIFJl
ZlB0cgogICBhbmQga2VlcHMgdGhlIGxhc3QgcmVmZXJlbmNlLiBXaGVuIGNhbGxpbmcgaW50byB0
aGlzIHNjcm9sbGJhciB0aGUgbV9jbGllbnQKICAgcG9pbnRlciBpcyBhIGRhbmdsaW5nIHBvaW50
ZXIuCiAgIFdlIGV4dGVuZCB0aGUgY2hlY2sgdG8gc2V0IG1fbGFzdFNjcm9sbGJhclVuZGVyTW91
c2UgYmFjayB0byB6ZXJvIHdoZW4gaXQKICAgd2FzIHRoZSBzY3JvbGxiYXIgaW4gdGhlIG9sZCBt
ZXYgYW5kIGlzIGdvbmUgaW4gdGhlIG5ldyBvbmUuCiAqIFRoaXMgaGFwcGVucyBvbmx5IG9uIHRo
ZSBRdCBwb3J0IGJlY2F1c2Ugd2Ugc2VuZCBtb3JlL2RpZmZlcmVudCBtb3ZlIGV2ZW50cy4KCi0t
LQogTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZCB8ICAgIDEgLQogV2ViQ29yZS9wYWdl
L0V2ZW50SGFuZGxlci5jcHAgICB8ICAgIDcgKysrKysrLQogMiBmaWxlcyBjaGFuZ2VkLCA2IGlu
c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vcXQvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKaW5kZXgg
N2Q1OWE0MC4uYjk2NjI5YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tp
cHBlZAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCkBAIC02LDcgKzYsNiBA
QCBlZGl0aW5nL3NlbGVjdGlvbi81MzU0NDU1LTIuaHRtbAogZWRpdGluZy9zZWxlY3Rpb24vY2Fy
ZXQtYW5kLWZvY3VzLXJpbmcuaHRtbAogCiAjIC0tLS0tLS0tIGNyYXNoZXMKLWZhc3QvZXZlbnRz
L21vdXNlZG93bl9pbl9zY3JvbGxiYXIuaHRtbAogZmFzdC9ldmVudHMvb2JqYy1rZXlib2FyZC1l
dmVudC1jcmVhdGlvbi5odG1sCiAKICMgLS0tLS0tLSBmYWlsaW5nIGVkaXRpbmcgdGVzdHMKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAKaW5kZXggNjY3MjBhNC4uZGQ2ZGIwNyAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5j
cHAKQEAgLTg1MSw5ICs4NTEsMTQgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlUHJl
c3NFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIG1vdXNlRXZlbnQpCiAKICAgICAvLyBJ
ZiB0aGUgaGl0IHRlc3Rpbmcgb3JpZ2luYWxseSBkZXRlcm1pbmVkIHRoZSBldmVudCB3YXMgaW4g
YSBzY3JvbGxiYXIsIHJlZmV0Y2ggdGhlIE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMKICAg
ICAvLyBpbiBjYXNlIHRoZSBzY3JvbGxiYXIgd2lkZ2V0IHdhcyBkZXN0cm95ZWQgd2hlbiB0aGUg
bW91c2UgZXZlbnQgd2FzIGhhbmRsZWQuCi0gICAgaWYgKG1ldi5zY3JvbGxiYXIoKSkKKyAgICBp
ZiAobWV2LnNjcm9sbGJhcigpKSB7CisgICAgICAgIGNvbnN0IGJvb2wgd2FzTGFzdFNjcm9sbEJh
ciA9IG1ldi5zY3JvbGxiYXIoKSA9PSBtX2xhc3RTY3JvbGxiYXJVbmRlck1vdXNlLmdldCgpOwog
ICAgICAgICBtZXYgPSBwcmVwYXJlTW91c2VFdmVudChIaXRUZXN0UmVxdWVzdCh0cnVlLCB0cnVl
KSwgbW91c2VFdmVudCk7CiAKKyAgICAgICAgaWYgKHdhc0xhc3RTY3JvbGxCYXIgJiYgbWV2LnNj
cm9sbGJhcigpICE9IG1fbGFzdFNjcm9sbGJhclVuZGVyTW91c2UuZ2V0KCkpCisgICAgICAgICAg
ICBtX2xhc3RTY3JvbGxiYXJVbmRlck1vdXNlID0gMDsKKyAgICB9CisKICAgICBpZiAoc3dhbGxv
d0V2ZW50KSB7CiAgICAgICAgIC8vIHNjcm9sbGJhcnMgc2hvdWxkIGdldCBldmVudHMgYW55d2F5
LCBldmVuIGRpc2FibGVkIGNvbnRyb2xzIG1pZ2h0IGJlIHNjcm9sbGFibGUKICAgICAgICAgaWYg
KG1ldi5zY3JvbGxiYXIoKSkKLS0gCjEuNS4zLjQKCg==
</data>
<flag name="review"
          id="7275"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>