Changeset 84793 in webkit


Ignore:
Timestamp:
Apr 25, 2011 1:00:50 PM (13 years ago)
Author:
Martin Robinson
Message:

2011-04-25 Martin Robinson <mrobinson@igalia.com>

Reviewed by Xan Lopez.

[GTK] Crash in WebCore::FrameView::notifyPageThatContentAreaWillPaint()
https://bugs.webkit.org/show_bug.cgi?id=59311

  • platform/gtk/MainFrameScrollbarGtk.cpp: (MainFrameScrollbarGtk::attachAdjustment): Before connecting an adjustment to a scrollbar disconnect any lingering signal handlers. This prevents an adjustment from controlling the active ScrollView and some zombie ScrollView.
Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r84791 r84793  
     12011-04-25  Martin Robinson  <mrobinson@igalia.com>
     2
     3        Reviewed by Xan Lopez.
     4
     5        [GTK] Crash in WebCore::FrameView::notifyPageThatContentAreaWillPaint()
     6        https://bugs.webkit.org/show_bug.cgi?id=59311
     7
     8        * platform/gtk/MainFrameScrollbarGtk.cpp:
     9        (MainFrameScrollbarGtk::attachAdjustment): Before connecting an adjustment to a scrollbar
     10        disconnect any lingering signal handlers. This prevents an adjustment from controlling the
     11        active ScrollView and some zombie ScrollView.
     12
    1132011-04-25  Geoffrey Garen  <ggaren@apple.com>
    214
  • trunk/Source/WebCore/platform/gtk/MainFrameScrollbarGtk.cpp

    r79349 r84793  
    7070        return;
    7171
     72    // In some cases this adjustment may still be attached to a living MainFrameScrollbar.
     73    // If that's the case we want to force a disconnection now, before we modify the values.
     74    g_signal_handlers_disconnect_matched(m_adjustment.get(), G_SIGNAL_MATCH_FUNC, 0, 0, 0,
     75                                         reinterpret_cast<void*>(MainFrameScrollbarGtk::gtkValueChanged), 0);
     76
    7277    updateThumbProportion();
    7378    updateThumbPosition();
Note: See TracChangeset for help on using the changeset viewer.