<?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>98507</bug_id>
          
          <creation_ts>2012-10-05 04:03:42 -0700</creation_ts>
          <short_desc>[GTK] Test /webkit2/WebKitWebView/populate-menu asserts in debug bots</short_desc>
          <delta_ts>2012-10-08 02:28:34 -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>Tools / Tests</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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gustavo</cc>
    
    <cc>mario</cc>
    
    <cc>mrobinson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>735557</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-10-05 04:03:42 -0700</bug_when>
    <thetext>/webkit2/WebKitWebView/populate-menu:                                ASSERTION FAILED: iconRecord || m_retainedPageURLs.contains(pageURLOriginal)

../../Source/WebCore/loader/icon/IconDatabase.cpp(266) : virtual WebCore::Image* WebCore::IconDatabase::synchronousIconForPageURL(const WTF::String&amp;, const WebCore::IntSize&amp;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>735561</commentid>
    <comment_count>1</comment_count>
      <attachid>167305</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-10-05 04:09:49 -0700</bug_when>
    <thetext>Created attachment 167305
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>735562</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-05 04:11:49 -0700</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>735645</commentid>
    <comment_count>3</comment_count>
      <attachid>167305</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-10-05 08:18:22 -0700</bug_when>
    <thetext>Comment on attachment 167305
Patch

Okay. But before you land, do you mind having Mario look over this too?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736577</commentid>
    <comment_count>4</comment_count>
      <attachid>167305</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2012-10-08 01:55:23 -0700</bug_when>
    <thetext>Comment on attachment 167305
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=167305&amp;action=review

The patch looks good to me too. A pity I didn&apos;t realize of this issue when writing the original patch, quite happy Carlos figured it out and fixed it, though.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitFaviconDatabase.cpp:151
&gt;      PendingIconRequestVector* icons = database-&gt;priv-&gt;pendingIconRequests.get(pageURL);

Completely off-topic thing: you might consider renaming this &apos;icons&apos; variable before landing to something more adequate, such as &apos;pendingIconRequests&apos;, or something like that.

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitFaviconDatabase.cpp:156
&gt; +    RefPtr&lt;cairo_surface_t&gt; icon = getIconSurfaceSynchronously(database, pageURL, &amp;error.outPtr());

I like this refactoring: taking this call out of the loop. Good catch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736592</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-10-08 02:28:34 -0700</bug_when>
    <thetext>Committed r130625: &lt;http://trac.webkit.org/changeset/130625&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167305</attachid>
            <date>2012-10-05 04:09:49 -0700</date>
            <delta_ts>2012-10-08 01:55:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-favicons-assertion.diff</filename>
            <type>text/plain</type>
            <size>4566</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBjYmZhNjRhLi4xZmY5NDQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTItMTAtMDUgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIFRlc3QgL3dlYmtpdDIvV2ViS2l0V2ViVmlldy9wb3B1bGF0ZS1t
ZW51IGFzc2VydHMgaW4gZGVidWcgYm90cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9OTg1MDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBNYWtlIHN1cmUgd2UgcmV0YWluIHRoZSBwYWdlIFVSTCBiZWZvcmUg
YXNraW5nIGZvciB0aGUgaWNvbi4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktp
dEZhdmljb25EYXRhYmFzZS5jcHA6CisgICAgICAgIChnZXRJY29uU3VyZmFjZVN5bmNocm9ub3Vz
bHkpOiBSZXRhaW4gdGhlIHBhZ2UgVVJMIGJlZm9yZSBhc2tpbmcKKyAgICAgICAgZm9yIHRoZSBp
Y29uLCBhbmQgcmVsZWFzZSBpdCBpZiB3ZSBmYWlsIHRvIGdldCBhbiBpY29uLgorICAgICAgICAo
cHJvY2Vzc1BlbmRpbmdJY29uc0ZvclBhZ2VVUkwpOiBSZW5hbWVkIHRvIG1ha2UgaXQgY2xlYXIg
aXQKKyAgICAgICAgcmVjZWl2ZXMgYSBTcmluZyBhbmQgbm90IGEgY2hhciogYW5kIG1vdmVkCisg
ICAgICAgIGdldEljb25TdXJmYWNlU3luY2hyb25vdXNseSgpIGNhbGwgb3V0IG9mIHRoZSBsb29w
IHRvIGNhbGwgaXQgb25seQorICAgICAgICBvbmNlIGV2ZW4gaWYgdGhlcmUgYXJlIG11bHRpcGxl
IHJlcXVlc3RzIHBlbmRpbmcuCisgICAgICAgIChpY29uRGF0YVJlYWR5Rm9yUGFnZVVSTENhbGxi
YWNrKTogRG8gbm90IHJldGFpbiB0aGUgcGFnZSBVUkwKKyAgICAgICAgaGVyZS4KKwogMjAxMi0x
MC0wNSAgSm9uZ3Nlb2sgWWFuZyAgPGpzNDUueWFuZ0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBb
RUZMXVtXSzJdIFJlbW92ZSAid2ViIiB3b3JkIGZyb20gZXdrX3Jlc291cmNlIEFQSXMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdEZhdmljb25EYXRh
YmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRGYXZpY29u
RGF0YWJhc2UuY3BwCmluZGV4IGE2ZGRlNDMuLjc0YTZmYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdEZhdmljb25EYXRhYmFzZS5jcHAKKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0RmF2aWNvbkRhdGFiYXNlLmNw
cApAQCAtMTE5LDE3ICsxMTksMjEgQEAgc3RhdGljIGNhaXJvX3N1cmZhY2VfdCogZ2V0SWNvblN1
cmZhY2VTeW5jaHJvbm91c2x5KFdlYktpdEZhdmljb25EYXRhYmFzZSogZGF0YWIKIHsKICAgICBB
U1NFUlQoaXNNYWluVGhyZWFkKCkpOwogCisgICAgZGF0YWJhc2UtPnByaXYtPmljb25EYXRhYmFz
ZS0+cmV0YWluSWNvbkZvclBhZ2VVUkwocGFnZVVSTCk7CisKICAgICAvLyBUaGUgZXhhY3Qgc2l6
ZSB3ZSBwYXNzIGlzIGlycmVsZXZhbnQgdG8gdGhlIGljb25EYXRhYmFzZSBjb2RlLgogICAgIC8v
IFdlIG11c3QgcGFzcyBzb21ldGhpbmcgZ3JlYXRlciB0aGFuIDB4MCB0byBnZXQgYW4gaWNvbi4K
ICAgICBXZWJDb3JlOjpJbWFnZSogaWNvbkltYWdlID0gZGF0YWJhc2UtPnByaXYtPmljb25EYXRh
YmFzZS0+aW1hZ2VGb3JQYWdlVVJMKHBhZ2VVUkwsIFdlYkNvcmU6OkludFNpemUoMSwgMSkpOwog
ICAgIGlmICghaWNvbkltYWdlKSB7CiAgICAgICAgIGdfc2V0X2Vycm9yKGVycm9yLCBXRUJLSVRf
RkFWSUNPTl9EQVRBQkFTRV9FUlJPUiwgV0VCS0lUX0ZBVklDT05fREFUQUJBU0VfRVJST1JfRkFW
SUNPTl9VTktOT1dOLCBfKCJVbmtub3duIGZhdmljb24gZm9yIHBhZ2UgJXMiKSwgcGFnZVVSTC51
dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgZGF0YWJhc2UtPnByaXYtPmljb25EYXRhYmFzZS0+cmVs
ZWFzZUljb25Gb3JQYWdlVVJMKHBhZ2VVUkwpOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAK
ICAgICBXZWJDb3JlOjpOYXRpdmVJbWFnZVB0ciBpY29uID0gaWNvbkltYWdlLT5uYXRpdmVJbWFn
ZUZvckN1cnJlbnRGcmFtZSgpOwogICAgIGlmICghaWNvbikgewogICAgICAgICBnX3NldF9lcnJv
cihlcnJvciwgV0VCS0lUX0ZBVklDT05fREFUQUJBU0VfRVJST1IsIFdFQktJVF9GQVZJQ09OX0RB
VEFCQVNFX0VSUk9SX0ZBVklDT05fTk9UX0ZPVU5ELCBfKCJQYWdlICVzIGRvZXMgbm90IGhhdmUg
YSBmYXZpY29uIiksIHBhZ2VVUkwudXRmOCgpLmRhdGEoKSk7CisgICAgICAgIGRhdGFiYXNlLT5w
cml2LT5pY29uRGF0YWJhc2UtPnJlbGVhc2VJY29uRm9yUGFnZVVSTChwYWdlVVJMKTsKICAgICAg
ICAgcmV0dXJuIDA7CiAgICAgfQogCkBAIC0xNDIsMTcgKzE0NiwyNCBAQCBzdGF0aWMgdm9pZCBk
ZWxldGVQZW5kaW5nSWNvblJlcXVlc3RzKFdlYktpdEZhdmljb25EYXRhYmFzZSogZGF0YWJhc2Us
IFBlbmRpbmdJYwogICAgIGRlbGV0ZSByZXF1ZXN0czsKIH0KIAotc3RhdGljIHZvaWQgcHJvY2Vz
c1BlbmRpbmdJY29uc0ZvclVSSShXZWJLaXRGYXZpY29uRGF0YWJhc2UqIGRhdGFiYXNlLCBjb25z
dCBTdHJpbmcmIHBhZ2VVUkwpCitzdGF0aWMgdm9pZCBwcm9jZXNzUGVuZGluZ0ljb25zRm9yUGFn
ZVVSTChXZWJLaXRGYXZpY29uRGF0YWJhc2UqIGRhdGFiYXNlLCBjb25zdCBTdHJpbmcmIHBhZ2VV
UkwpCiB7CiAgICAgUGVuZGluZ0ljb25SZXF1ZXN0VmVjdG9yKiBpY29ucyA9IGRhdGFiYXNlLT5w
cml2LT5wZW5kaW5nSWNvblJlcXVlc3RzLmdldChwYWdlVVJMKTsKICAgICBpZiAoIWljb25zKQog
ICAgICAgICByZXR1cm47CiAKKyAgICBHT3duUHRyPEdFcnJvcj4gZXJyb3I7CisgICAgUmVmUHRy
PGNhaXJvX3N1cmZhY2VfdD4gaWNvbiA9IGdldEljb25TdXJmYWNlU3luY2hyb25vdXNseShkYXRh
YmFzZSwgcGFnZVVSTCwgJmVycm9yLm91dFB0cigpKTsKKwogICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgaWNvbnMtPnNpemUoKTsgKytpKSB7CiAgICAgICAgIEdTaW1wbGVBc3luY1Jlc3VsdCog
cmVzdWx0ID0gaWNvbnMtPmF0KGkpLmdldCgpOwogICAgICAgICBHZXRGYXZpY29uU3VyZmFjZUFz
eW5jRGF0YSogZGF0YSA9IHN0YXRpY19jYXN0PEdldEZhdmljb25TdXJmYWNlQXN5bmNEYXRhKj4o
Z19zaW1wbGVfYXN5bmNfcmVzdWx0X2dldF9vcF9yZXNfZ3BvaW50ZXIocmVzdWx0KSk7Ci0gICAg
ICAgIGlmICghZ19jYW5jZWxsYWJsZV9pc19jYW5jZWxsZWQoZGF0YS0+Y2FuY2VsbGFibGUuZ2V0
KCkpKQotICAgICAgICAgICAgZGF0YS0+aWNvbiA9IGdldEljb25TdXJmYWNlU3luY2hyb25vdXNs
eShkYXRhYmFzZSwgcGFnZVVSTCwgJmRhdGEtPmVycm9yLm91dFB0cigpKTsKKyAgICAgICAgaWYg
KCFnX2NhbmNlbGxhYmxlX2lzX2NhbmNlbGxlZChkYXRhLT5jYW5jZWxsYWJsZS5nZXQoKSkpIHsK
KyAgICAgICAgICAgIGlmIChlcnJvcikKKyAgICAgICAgICAgICAgICBnX3Byb3BhZ2F0ZV9lcnJv
cigmZGF0YS0+ZXJyb3Iub3V0UHRyKCksIGVycm9yLnJlbGVhc2UoKSk7CisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgZGF0YS0+aWNvbiA9IGljb247CisgICAgICAgIH0KIAogICAg
ICAgICBnX3NpbXBsZV9hc3luY19yZXN1bHRfY29tcGxldGUocmVzdWx0KTsKICAgICB9CkBAIC0x
NjQsMTEgKzE3NSwxMCBAQCBzdGF0aWMgdm9pZCBpY29uRGF0YVJlYWR5Rm9yUGFnZVVSTENhbGxi
YWNrKFdLSWNvbkRhdGFiYXNlUmVmIHdrSWNvbkRhdGFiYXNlLCBXSwogICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSk7CiAKICAgICBXZWJLaXRGYXZpY29uRGF0YWJhc2UqIGRhdGFiYXNlID0gV0VC
S0lUX0ZBVklDT05fREFUQUJBU0UoY2xpZW50SW5mbyk7Ci0gICAgU3RyaW5nIHBhZ2VVUkxTdHJp
bmcgPSB0b0ltcGwod2tQYWdlVVJMKS0+c3RyaW5nKCk7CisgICAgU3RyaW5nIHBhZ2VVUkwgPSB0
b0ltcGwod2tQYWdlVVJMKS0+c3RyaW5nKCk7CiAKLSAgICBkYXRhYmFzZS0+cHJpdi0+aWNvbkRh
dGFiYXNlLT5yZXRhaW5JY29uRm9yUGFnZVVSTChwYWdlVVJMU3RyaW5nKTsKLSAgICBwcm9jZXNz
UGVuZGluZ0ljb25zRm9yVVJJKGRhdGFiYXNlLCBwYWdlVVJMU3RyaW5nKTsKLSAgICBnX3NpZ25h
bF9lbWl0KGRhdGFiYXNlLCBzaWduYWxzW0lDT05fUkVBRFldLCAwLCBwYWdlVVJMU3RyaW5nLnV0
ZjgoKS5kYXRhKCkpOworICAgIHByb2Nlc3NQZW5kaW5nSWNvbnNGb3JQYWdlVVJMKGRhdGFiYXNl
LCBwYWdlVVJMKTsKKyAgICBnX3NpZ25hbF9lbWl0KGRhdGFiYXNlLCBzaWduYWxzW0lDT05fUkVB
RFldLCAwLCBwYWdlVVJMLnV0ZjgoKS5kYXRhKCkpOwogfQogCiBXZWJLaXRGYXZpY29uRGF0YWJh
c2UqIHdlYmtpdEZhdmljb25EYXRhYmFzZUNyZWF0ZShXZWJJY29uRGF0YWJhc2UqIGljb25EYXRh
YmFzZSkK
</data>
<flag name="review"
          id="179942"
          type_id="1"
          status="+"
          setter="mrobinson"
    />
          </attachment>
      

    </bug>

</bugzilla>