<?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>33204</bug_id>
          
          <creation_ts>2010-01-05 02:59:03 -0800</creation_ts>
          <short_desc>[Qt] Assertion failure in SelectionController::recomputeCaretRect()</short_desc>
          <delta_ts>2010-01-06 23:08:06 -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>PC</rep_platform>
          <op_sys>Linux</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="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>177103</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2010-01-05 02:59:03 -0800</bug_when>
    <thetext>Introduced by http://trac.webkit.org/changeset/52778</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177104</commentid>
    <comment_count>1</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2010-01-05 03:00:42 -0800</bug_when>
    <thetext>ASSERTION FAILED: !m_frame-&gt;view() || !m_frame-&gt;view()-&gt;needsLayout()
(../../../WebCore/editing/SelectionController.cpp:929 bool WebCore::SelectionController::recomputeCaretRect())

The problem originates in QWebPage::inputMethodQuery(Qt::ImMicroFocus) which calls SelectionController::absoluteCaretBounds() when the view needs to layout.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177106</commentid>
    <comment_count>2</comment_count>
      <attachid>45879</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2010-01-05 03:08:46 -0800</bug_when>
    <thetext>Created attachment 45879
Trigger a layout (if needed) before calling SelectionController::absoluteCaretBounds()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177108</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-05 03:11:27 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45879 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177109</commentid>
    <comment_count>4</comment_count>
      <attachid>45879</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-01-05 03:15:59 -0800</bug_when>
    <thetext>Comment on attachment 45879
Trigger a layout (if needed) before calling SelectionController::absoluteCaretBounds()

r=me, appears consistent with similar changes in r52778</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177116</commentid>
    <comment_count>5</comment_count>
      <attachid>45882</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2010-01-05 05:18:53 -0800</bug_when>
    <thetext>Created attachment 45882
Return an invalid Qt::ImMicroFocus if queried while the view needs to layout.

There was more than one way to trigger that assertion, so instead of hacking our way out of it, just return an invalid ImMicroFocus if called at a bad time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177117</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-05 05:24:11 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45882 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178020</commentid>
    <comment_count>7</comment_count>
      <attachid>45882</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-01-06 23:08:01 -0800</bug_when>
    <thetext>Comment on attachment 45882
Return an invalid Qt::ImMicroFocus if queried while the view needs to layout.

Clearing flags on attachment: 45882

Committed r52903: &lt;http://trac.webkit.org/changeset/52903&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178021</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-01-06 23:08:06 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45879</attachid>
            <date>2010-01-05 03:08:46 -0800</date>
            <delta_ts>2010-01-05 04:17:19 -0800</delta_ts>
            <desc>Trigger a layout (if needed) before calling SelectionController::absoluteCaretBounds()</desc>
            <filename>bug-33204.diff</filename>
            <type>text/plain</type>
            <size>1129</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwIGIvV2ViS2l0L3F0L0FwaS9x
d2VicGFnZS5jcHAKaW5kZXggN2VkNzU1NS4uZGMxZjZkOCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0
L0FwaS9xd2VicGFnZS5jcHAKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKQEAgLTEz
ODQsNiArMTM4NCw5IEBAIFFWYXJpYW50IFFXZWJQYWdlOjppbnB1dE1ldGhvZFF1ZXJ5KFF0OjpJ
bnB1dE1ldGhvZFF1ZXJ5IHByb3BlcnR5KSBjb25zdAogCiAgICAgc3dpdGNoIChwcm9wZXJ0eSkg
ewogICAgICAgICBjYXNlIFF0OjpJbU1pY3JvRm9jdXM6IHsKKyAgICAgICAgICAgIFdlYkNvcmU6
OkZyYW1lVmlldyogdmlldyA9IGZyYW1lLT52aWV3KCk7CisgICAgICAgICAgICBpZiAodmlldyAm
JiB2aWV3LT5uZWVkc0xheW91dCgpKQorICAgICAgICAgICAgICAgIHZpZXctPmxheW91dCgpOwog
ICAgICAgICAgICAgcmV0dXJuIFFWYXJpYW50KGZyYW1lLT5zZWxlY3Rpb24oKS0+YWJzb2x1dGVD
YXJldEJvdW5kcygpKTsKICAgICAgICAgfQogICAgICAgICBjYXNlIFF0OjpJbUZvbnQ6IHsKZGlm
ZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4
IGE2ODUzYjcuLjdkNmJiYWUgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIv
V2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEwLTAxLTA1ICBBbmRyZWFz
IEtsaW5nICA8YW5kcmVhcy5rbGluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBUcmlnZ2VyIGEgbGF5b3V0IChpZiBuZWVk
ZWQpIGJlZm9yZSBjYWxsaW5nIFNlbGVjdGlvbkNvbnRyb2xsZXI6OmFic29sdXRlQ2FyZXRCb3Vu
ZHMoKQorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
MzIwNAorCisgICAgICAgICogQXBpL3F3ZWJwYWdlLmNwcDoKKyAgICAgICAgKFFXZWJQYWdlOjpp
bnB1dE1ldGhvZFF1ZXJ5KToKKwogMjAxMC0wMS0wNCAgRGFuaWVsIEJhdGVzICA8ZGJhdGVzQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45882</attachid>
            <date>2010-01-05 05:18:53 -0800</date>
            <delta_ts>2010-01-06 23:08:01 -0800</delta_ts>
            <desc>Return an invalid Qt::ImMicroFocus if queried while the view needs to layout.</desc>
            <filename>bug-33204-2.diff</filename>
            <type>text/plain</type>
            <size>1231</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwIGIvV2ViS2l0L3F0L0FwaS9x
d2VicGFnZS5jcHAKaW5kZXggN2VkNzU1NS4uYzYxODNhZCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0
L0FwaS9xd2VicGFnZS5jcHAKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKQEAgLTEz
ODQsNiArMTM4NCwxMSBAQCBRVmFyaWFudCBRV2ViUGFnZTo6aW5wdXRNZXRob2RRdWVyeShRdDo6
SW5wdXRNZXRob2RRdWVyeSBwcm9wZXJ0eSkgY29uc3QKIAogICAgIHN3aXRjaCAocHJvcGVydHkp
IHsKICAgICAgICAgY2FzZSBRdDo6SW1NaWNyb0ZvY3VzOiB7CisgICAgICAgICAgICBXZWJDb3Jl
OjpGcmFtZVZpZXcqIHZpZXcgPSBmcmFtZS0+dmlldygpOworICAgICAgICAgICAgaWYgKHZpZXcg
JiYgdmlldy0+bmVlZHNMYXlvdXQoKSkgeworICAgICAgICAgICAgICAgIC8vIFdlIGNhbid0IGFj
Y2VzcyBhYnNvbHV0ZUNhcmV0Qm91bmRzKCkgd2hpbGUgdGhlIHZpZXcgbmVlZHMgdG8gbGF5b3V0
LgorICAgICAgICAgICAgICAgIHJldHVybiBRVmFyaWFudCgpOworICAgICAgICAgICAgfQogICAg
ICAgICAgICAgcmV0dXJuIFFWYXJpYW50KGZyYW1lLT5zZWxlY3Rpb24oKS0+YWJzb2x1dGVDYXJl
dEJvdW5kcygpKTsKICAgICAgICAgfQogICAgICAgICBjYXNlIFF0OjpJbUZvbnQ6IHsKZGlmZiAt
LWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGE2
ODUzYjcuLjMxYzM3ZDQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvV2Vi
S2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEwLTAxLTA1ICBBbmRyZWFzIEts
aW5nICA8YW5kcmVhcy5rbGluZ0Bub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBSZXR1cm4gYW4gaW52YWxpZCBRdDo6SW1NaWNy
b0ZvY3VzIGlmIHF1ZXJpZWQgd2hpbGUgdGhlIHZpZXcgbmVlZHMgdG8gbGF5b3V0LgorCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMzIwNAorCisgICAg
ICAgICogQXBpL3F3ZWJwYWdlLmNwcDoKKyAgICAgICAgKFFXZWJQYWdlOjppbnB1dE1ldGhvZFF1
ZXJ5KToKKwogMjAxMC0wMS0wNCAgRGFuaWVsIEJhdGVzICA8ZGJhdGVzQHdlYmtpdC5vcmc+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>