<?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>23194</bug_id>
          
          <creation_ts>2009-01-08 13:38:32 -0800</creation_ts>
          <short_desc>[GTK] fix crashers</short_desc>
          <delta_ts>2010-10-12 18:15:42 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>0</everconfirmed>
          <reporter name="Benjamin Otte">otte</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>elle.uca</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>104925</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Otte">otte</who>
    <bug_when>2009-01-08 13:38:32 -0800</bug_when>
    <thetext>Here&apos;s fixes for two crashers.

The first is just a simple #if 0 so no two callbacks get called on the policy object, the other fix makes the finalize function the dispose function, so that objects get released at the right time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104926</commentid>
    <comment_count>1</comment_count>
      <attachid>26531</attachid>
    <who name="Benjamin Otte">otte</who>
    <bug_when>2009-01-08 13:43:05 -0800</bug_when>
    <thetext>Created attachment 26531
suggested fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104929</commentid>
    <comment_count>2</comment_count>
    <who name="Benjamin Otte">otte</who>
    <bug_when>2009-01-08 13:46:31 -0800</bug_when>
    <thetext>For reference, here&apos;s a paste from IRC discussing the finalize =&gt; dispose change.

&lt;Company&gt; http://pastebin.com/m72177544
&lt;Company&gt; what&apos;s happening is that the WebView gets last-unreffed which calls g_object_destroy() on it, then finalizes it
&lt;Company&gt; g_object_destroy calls destroy() on all children, which causes the scrollbars to be destroyed, and they free their adjustments
&lt;Company&gt; after that web_view_finalize calls ~Page which causes the stack trace above to appear
&lt;Company&gt; and that sets the destroyed scrollbar&apos;s allocation
&lt;Company&gt; and that code uses a range-&gt;allocation-&gt;value unconditionally
&lt;Company&gt; ergo: boom
&lt;xan&gt; (you mean gtk_object_destroy)
&lt;Company&gt; right
&lt;Company&gt; sorry
&lt;Company&gt; the web view should likely destroy the Page in dispose, not in finalize
&lt;Company&gt; but i don&apos;t know the code well enough to know if that&apos;s gonna work
&lt;xan&gt; also, just &apos;in theory&apos;, you are supposed to release refs to external objects in dispose, not finalize
&lt;Company&gt; yeah, that&apos;s why i&apos;m suggesting it</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104952</commentid>
    <comment_count>3</comment_count>
      <attachid>26531</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-01-08 15:58:57 -0800</bug_when>
    <thetext>Comment on attachment 26531
suggested fix

Please split this patch into two parts. There is no relationship between the first crash and the second one.



&gt;      webkit_web_policy_decision_ignore(decision);
&gt;  
&gt; +#if 0
&gt;      if (!priv-&gt;isCancelled)
&gt;          (core(priv-&gt;frame)-&gt;loader()-&gt;*(priv-&gt;framePolicyFunction))(WebCore::PolicyDownload);
&gt; +#endif
&gt;  }

what happens if you just remove the call to webkit_web_policy_decision_ignore? 





&gt;  
&gt;  void webkit_web_policy_decision_cancel(WebKitWebPolicyDecision* decision)
&gt; diff --git a/WebKit/gtk/webkit/webkitwebview.cpp b/WebKit/gtk/webkit/webkitwebview.cpp
&gt; index 91f3b80..d3f7cd7 100644
&gt; --- a/WebKit/gtk/webkit/webkitwebview.cpp
&gt; +++ b/WebKit/gtk/webkit/webkitwebview.cpp
&gt; @@ -807,31 +807,55 @@ static void webkit_web_view_real_paste_clipboard(WebKitWebView* webView)
&gt;      frame-&gt;editor()-&gt;command(&quot;Paste&quot;).execute();
&gt;  }
&gt;  
&gt; -static void webkit_web_view_finalize(GObject* object)
&gt; +static void webkit_web_view_dispose(GObject* object)

okay.


&gt; -    webkit_web_view_stop_loading(WEBKIT_WEB_VIEW(object));
&gt; +    if (priv-&gt;corePage) {
&gt; +        webkit_web_view_stop_loading(WEBKIT_WEB_VIEW(object));
&gt;  
&gt; -    core(priv-&gt;mainFrame)-&gt;loader()-&gt;detachChildren();
&gt; -    delete priv-&gt;corePage;
&gt; +        core(priv-&gt;mainFrame)-&gt;loader()-&gt;detachChildren();
&gt; +        delete priv-&gt;corePage;
&gt; +        priv-&gt;corePage = 0;
&gt; +    }


alternatively you can write this as
if (priv-&gt;mainFrame)
    core(priv-&gt;mainFrame)-&gt;loader()-&gt;detachChildren()
delete priv-&gt;corePage;
priv-&gt;corePage;


&gt;  
&gt; -    if (priv-&gt;horizontalAdjustment)
&gt; +    if (priv-&gt;horizontalAdjustment) {
&gt;          g_object_unref(priv-&gt;horizontalAdjustment);
&gt; -    if (priv-&gt;verticalAdjustment)
&gt; +        priv-&gt;horizontalAdjustment = NULL;

Do not use NULL here and at the other occasions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105067</commentid>
    <comment_count>4</comment_count>
      <attachid>26578</attachid>
    <who name="Benjamin Otte">otte</who>
    <bug_when>2009-01-09 14:49:08 -0800</bug_when>
    <thetext>Created attachment 26578
fix WebView to use dispose</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105068</commentid>
    <comment_count>5</comment_count>
      <attachid>26579</attachid>
    <who name="Benjamin Otte">otte</who>
    <bug_when>2009-01-09 14:50:54 -0800</bug_when>
    <thetext>Created attachment 26579
make DOwnload policy decision not fail</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105074</commentid>
    <comment_count>6</comment_count>
      <attachid>26578</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-01-09 14:57:55 -0800</bug_when>
    <thetext>Comment on attachment 26578
fix WebView to use dispose

Some extra empty lines between if () {} statements would only cost a byte and helps readability. Thanks :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105104</commentid>
    <comment_count>7</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-01-09 19:48:53 -0800</bug_when>
    <thetext>Landed in r39775 and r39776.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105163</commentid>
    <comment_count>8</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-01-10 15:57:33 -0800</bug_when>
    <thetext>Okay, I got fooled on the dispose change. From the GObject documentation of dispose &quot;The object is also expected to be able to answer client method invocations (with possibly an error code but no memory violation) until finalize is executed.&quot;.

The WebCore::Page is deleted by the dispose implementation and there are plenty of methods in webkitwebview.cpp that do _not_ check if the priv-&gt;page is valid. Do you find some time to correct this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105318</commentid>
    <comment_count>9</comment_count>
    <who name="Benjamin Otte">otte</who>
    <bug_when>2009-01-12 02:31:00 -0800</bug_when>
    <thetext>Making sure the API still works after a dispose call has never been done on any code based on GObject that I know of. That part of the documentation is at least misleading, but most likely just wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105391</commentid>
    <comment_count>10</comment_count>
    <who name="Alexander Butenko">a.butenka</who>
    <bug_when>2009-01-12 14:21:13 -0800</bug_when>
    <thetext>adding null check for priv-&gt;corePage partly fixes a problem. After adding a warning in if(!priv-&gt;corePage) im getting results like this:

$ ./GtkLauncher &apos;about:blank&apos;
Segmentation fault
$  ./GtkLauncher &apos;http://google.com&apos;
** (lt-GtkLauncher:13954): WARNING **: corePage is null
$

Backtrace: http://pastebin.com/m38551baf
Index: WebKit/gtk/webkit/webkitwebview.cpp
===================================================================
--- WebKit/gtk/webkit/webkitwebview.cpp	(revision 39830)
+++ WebKit/gtk/webkit/webkitwebview.cpp	(working copy)
@@ -602,14 +602,16 @@
 static void webkit_web_view_set_scroll_adjustments(WebKitWebView* webView, GtkAdjustment* hadj, GtkAdjustment* vadj)
 {
     FrameView* view = core(webkit_web_view_get_main_frame(webView))-&gt;view();
+    WebKitWebViewPrivate* priv = webView-&gt;priv;
 
+    if(!priv-&gt;corePage)
+	return;
+
     if (hadj)
         g_object_ref(hadj);
     if (vadj)
         g_object_ref(vadj);
 
-    WebKitWebViewPrivate* priv = webView-&gt;priv;
-
     if (priv-&gt;horizontalAdjustment)
         g_object_unref(priv-&gt;horizontalAdjustment);
     if (priv-&gt;verticalAdjustment)
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>111785</commentid>
    <comment_count>11</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2009-03-01 22:39:36 -0800</bug_when>
    <thetext>*** Bug 23055 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293177</commentid>
    <comment_count>12</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-10-12 16:36:22 -0700</bug_when>
    <thetext>What&apos;s the state of this bug? Are these still valid crashers?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293235</commentid>
    <comment_count>13</comment_count>
    <who name="Benjamin Otte">otte</who>
    <bug_when>2010-10-12 18:07:46 -0700</bug_when>
    <thetext>I don&apos;t remember seeing it in recent times. And it&apos;s certainly very old. So feel free to close this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293238</commentid>
    <comment_count>14</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2010-10-12 18:15:42 -0700</bug_when>
    <thetext>Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26531</attachid>
            <date>2009-01-08 13:43:05 -0800</date>
            <delta_ts>2009-01-09 14:49:08 -0800</delta_ts>
            <desc>suggested fix</desc>
            <filename>diff</filename>
            <type>text/plain</type>
            <size>4895</size>
            <attacher name="Benjamin Otte">otte</attacher>
            
              <data encoding="base64">Y29tbWl0IDc3ODA5NTc4NzAxNDEwMDM0ZmUwN2FjZDQ5NTY5NGY5NjhkZGIxNzUKQXV0aG9yOiBC
ZW5qYW1pbiBPdHRlIDxvdHRlQGdub21lLm9yZz4KRGF0ZTogICBUaHUgSmFuIDggMjI6NDA6NTYg
MjAwOSArMDEwMAoKICAgIFtHVEtdIGJ1ZyAyMzE5NAoKZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsv
Q2hhbmdlTG9nIGIvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKaW5kZXggN2U0NDE3YS4uM2U2MDUwNyAx
MDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2d0ay9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNiBAQAorMjAwOS0wMS0wOCAgQmVuamFtaW4gT3R0ZSAgPG90dGVAZ25v
bWUub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE5NAorCisgICAgICAg
ICogd2Via2l0L3dlYmtpdHdlYnBvbGljeWRlY2lzaW9uLmNwcDoKKyAgICAgICAgKF9XZWJLaXRX
ZWJQb2xpY3lEZWNpc2lvblByaXZhdGU6OndlYmtpdF93ZWJfcG9saWN5X2RlY2lzaW9uX2Rvd25s
b2FkKToKKyAgICAgICAgY29tbWVudCBvdXQgY29kZSBzbyB0aGVyZSdzIG5vIHR3byBwb2xpY3kg
ZGVjaXNpb25zCisgICAgICAgICogd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwOgorICAgICAgICBt
YWtlIHRoZSBmaW5hbGl6ZSBmdW5jdGlvbiB0aGUgZGlzcG9zZSBmdW5jdGlvbi4gTm90IHJlbGVh
c2luZyBoZWxkCisgICAgICAgIG9iamVjdHMgaW4gZGlzcG9zZSBjYW4gY2F1c2UgY3Jhc2hlcnMg
bGF0ZXIuCisKIDIwMDktMDEtMDMgIFhhbiBMb3BleiAgPHhhbkBnbm9tZS5vcmc+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgSG9sZ2VyIEZyZXl0aGVyLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay93
ZWJraXQvd2Via2l0d2VicG9saWN5ZGVjaXNpb24uY3BwIGIvV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0d2VicG9saWN5ZGVjaXNpb24uY3BwCmluZGV4IDNhMDc3ZDIuLjQ4YzRkYTkgMTAwNjQ0Ci0t
LSBhL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnBvbGljeWRlY2lzaW9uLmNwcAorKysgYi9X
ZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJwb2xpY3lkZWNpc2lvbi5jcHAKQEAgLTExNiw4ICsx
MTYsMTAgQEAgdm9pZCB3ZWJraXRfd2ViX3BvbGljeV9kZWNpc2lvbl9kb3dubG9hZChXZWJLaXRX
ZWJQb2xpY3lEZWNpc2lvbiogZGVjaXNpb24pCiAgICAgZ193YXJuaW5nKCJEb3dubG9hZCBpcyBu
b3Qgc3VwcG9ydGVkIik7CiAgICAgd2Via2l0X3dlYl9wb2xpY3lfZGVjaXNpb25faWdub3JlKGRl
Y2lzaW9uKTsKIAorI2lmIDAKICAgICBpZiAoIXByaXYtPmlzQ2FuY2VsbGVkKQogICAgICAgICAo
Y29yZShwcml2LT5mcmFtZSktPmxvYWRlcigpLT4qKHByaXYtPmZyYW1lUG9saWN5RnVuY3Rpb24p
KShXZWJDb3JlOjpQb2xpY3lEb3dubG9hZCk7CisjZW5kaWYKIH0KIAogdm9pZCB3ZWJraXRfd2Vi
X3BvbGljeV9kZWNpc2lvbl9jYW5jZWwoV2ViS2l0V2ViUG9saWN5RGVjaXNpb24qIGRlY2lzaW9u
KQpkaWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAgYi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcAppbmRleCA5MWYzYjgwLi5kM2Y3Y2Q3IDEw
MDY0NAotLS0gYS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcAorKysgYi9XZWJL
aXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcApAQCAtODA3LDMxICs4MDcsNTUgQEAgc3Rh
dGljIHZvaWQgd2Via2l0X3dlYl92aWV3X3JlYWxfcGFzdGVfY2xpcGJvYXJkKFdlYktpdFdlYlZp
ZXcqIHdlYlZpZXcpCiAgICAgZnJhbWUtPmVkaXRvcigpLT5jb21tYW5kKCJQYXN0ZSIpLmV4ZWN1
dGUoKTsKIH0KIAotc3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3X2ZpbmFsaXplKEdPYmplY3Qq
IG9iamVjdCkKK3N0YXRpYyB2b2lkIHdlYmtpdF93ZWJfdmlld19kaXNwb3NlKEdPYmplY3QqIG9i
amVjdCkKIHsKICAgICBXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3ID0gV0VCS0lUX1dFQl9WSUVXKG9i
amVjdCk7CiAgICAgV2ViS2l0V2ViVmlld1ByaXZhdGUqIHByaXYgPSB3ZWJWaWV3LT5wcml2Owog
Ci0gICAgd2Via2l0X3dlYl92aWV3X3N0b3BfbG9hZGluZyhXRUJLSVRfV0VCX1ZJRVcob2JqZWN0
KSk7CisgICAgaWYgKHByaXYtPmNvcmVQYWdlKSB7CisgICAgICAgIHdlYmtpdF93ZWJfdmlld19z
dG9wX2xvYWRpbmcoV0VCS0lUX1dFQl9WSUVXKG9iamVjdCkpOwogCi0gICAgY29yZShwcml2LT5t
YWluRnJhbWUpLT5sb2FkZXIoKS0+ZGV0YWNoQ2hpbGRyZW4oKTsKLSAgICBkZWxldGUgcHJpdi0+
Y29yZVBhZ2U7CisgICAgICAgIGNvcmUocHJpdi0+bWFpbkZyYW1lKS0+bG9hZGVyKCktPmRldGFj
aENoaWxkcmVuKCk7CisgICAgICAgIGRlbGV0ZSBwcml2LT5jb3JlUGFnZTsKKyAgICAgICAgcHJp
di0+Y29yZVBhZ2UgPSAwOworICAgIH0KIAotICAgIGlmIChwcml2LT5ob3Jpem9udGFsQWRqdXN0
bWVudCkKKyAgICBpZiAocHJpdi0+aG9yaXpvbnRhbEFkanVzdG1lbnQpIHsKICAgICAgICAgZ19v
YmplY3RfdW5yZWYocHJpdi0+aG9yaXpvbnRhbEFkanVzdG1lbnQpOwotICAgIGlmIChwcml2LT52
ZXJ0aWNhbEFkanVzdG1lbnQpCisgICAgICAgIHByaXYtPmhvcml6b250YWxBZGp1c3RtZW50ID0g
TlVMTDsKKyAgICB9CisgICAgaWYgKHByaXYtPnZlcnRpY2FsQWRqdXN0bWVudCkgewogICAgICAg
ICBnX29iamVjdF91bnJlZihwcml2LT52ZXJ0aWNhbEFkanVzdG1lbnQpOwotICAgIGdfb2JqZWN0
X3VucmVmKHByaXYtPmJhY2tGb3J3YXJkTGlzdCk7Ci0gICAgZ19zaWduYWxfaGFuZGxlcnNfZGlz
Y29ubmVjdF9ieV9mdW5jKHByaXYtPndlYlNldHRpbmdzLCAoZ3BvaW50ZXIpd2Via2l0X3dlYl92
aWV3X3NldHRpbmdzX25vdGlmeSwgd2ViVmlldyk7Ci0gICAgZ19vYmplY3RfdW5yZWYocHJpdi0+
d2ViU2V0dGluZ3MpOwotICAgIGdfb2JqZWN0X3VucmVmKHByaXYtPndlYkluc3BlY3Rvcik7Ci0g
ICAgZ19vYmplY3RfdW5yZWYocHJpdi0+d2ViV2luZG93RmVhdHVyZXMpOwotICAgIGdfb2JqZWN0
X3VucmVmKHByaXYtPmltQ29udGV4dCk7Ci0gICAgZ3RrX3RhcmdldF9saXN0X3VucmVmKHByaXYt
PmNvcHlfdGFyZ2V0X2xpc3QpOwotICAgIGd0a190YXJnZXRfbGlzdF91bnJlZihwcml2LT5wYXN0
ZV90YXJnZXRfbGlzdCk7Ci0gICAgZGVsZXRlIHByaXYtPnVzZXJBZ2VudDsKKyAgICAgICAgcHJp
di0+dmVydGljYWxBZGp1c3RtZW50ID0gTlVMTDsKKyAgICB9CisgICAgaWYgKHByaXYtPmJhY2tG
b3J3YXJkTGlzdCkgeworICAgICAgICBnX29iamVjdF91bnJlZihwcml2LT5iYWNrRm9yd2FyZExp
c3QpOworICAgICAgICBwcml2LT5iYWNrRm9yd2FyZExpc3QgPSBOVUxMOworCisgICAgICAgIGdf
c2lnbmFsX2hhbmRsZXJzX2Rpc2Nvbm5lY3RfYnlfZnVuYyhwcml2LT53ZWJTZXR0aW5ncywgKGdw
b2ludGVyKXdlYmtpdF93ZWJfdmlld19zZXR0aW5nc19ub3RpZnksIHdlYlZpZXcpOworICAgICAg
ICBnX29iamVjdF91bnJlZihwcml2LT53ZWJTZXR0aW5ncyk7CisgICAgICAgIHByaXYtPndlYlNl
dHRpbmdzID0gTlVMTDsKKworICAgICAgICBnX29iamVjdF91bnJlZihwcml2LT53ZWJJbnNwZWN0
b3IpOworICAgICAgICBwcml2LT53ZWJJbnNwZWN0b3IgPSBOVUxMOworCisgICAgICAgIGdfb2Jq
ZWN0X3VucmVmKHByaXYtPndlYldpbmRvd0ZlYXR1cmVzKTsKKyAgICAgICAgcHJpdi0+d2ViV2lu
ZG93RmVhdHVyZXMgPSBOVUxMOworCisgICAgICAgIGdfb2JqZWN0X3VucmVmKHByaXYtPmltQ29u
dGV4dCk7CisgICAgICAgIHByaXYtPmltQ29udGV4dCA9IE5VTEw7CisKKyAgICAgICAgZ3RrX3Rh
cmdldF9saXN0X3VucmVmKHByaXYtPmNvcHlfdGFyZ2V0X2xpc3QpOworICAgICAgICBwcml2LT5j
b3B5X3RhcmdldF9saXN0ID0gTlVMTDsKKworICAgICAgICBndGtfdGFyZ2V0X2xpc3RfdW5yZWYo
cHJpdi0+cGFzdGVfdGFyZ2V0X2xpc3QpOworICAgICAgICBwcml2LT5wYXN0ZV90YXJnZXRfbGlz
dCA9IE5VTEw7CisKKyAgICAgICAgZGVsZXRlIHByaXYtPnVzZXJBZ2VudDsKKyAgICAgICAgcHJp
di0+dXNlckFnZW50ID0gMDsKKyAgICB9CiAKLSAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfd2Vi
X3ZpZXdfcGFyZW50X2NsYXNzKS0+ZmluYWxpemUob2JqZWN0KTsKKyAgICBHX09CSkVDVF9DTEFT
Uyh3ZWJraXRfd2ViX3ZpZXdfcGFyZW50X2NsYXNzKS0+ZGlzcG9zZShvYmplY3QpOwogfQogCiBz
dGF0aWMgZ2Jvb2xlYW4gd2Via2l0X2NyZWF0ZV93ZWJfdmlld19yZXF1ZXN0X2hhbmRsZWQoR1Np
Z25hbEludm9jYXRpb25IaW50KiBpaGludCwgR1ZhbHVlKiByZXR1cm5BY2N1LCBjb25zdCBHVmFs
dWUqIGhhbmRsZXJSZXR1cm4sIGdwb2ludGVyIGR1bW15KQpAQCAtMTM2Miw3ICsxMzg2LDcgQEAg
c3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3X2NsYXNzX2luaXQoV2ViS2l0V2ViVmlld0NsYXNz
KiB3ZWJWaWV3Q2xhc3MpCiAgICAgd2ViVmlld0NsYXNzLT5wYXN0ZV9jbGlwYm9hcmQgPSB3ZWJr
aXRfd2ViX3ZpZXdfcmVhbF9wYXN0ZV9jbGlwYm9hcmQ7CiAKICAgICBHT2JqZWN0Q2xhc3MqIG9i
amVjdENsYXNzID0gR19PQkpFQ1RfQ0xBU1Mod2ViVmlld0NsYXNzKTsKLSAgICBvYmplY3RDbGFz
cy0+ZmluYWxpemUgPSB3ZWJraXRfd2ViX3ZpZXdfZmluYWxpemU7CisgICAgb2JqZWN0Q2xhc3Mt
PmRpc3Bvc2UgPSB3ZWJraXRfd2ViX3ZpZXdfZGlzcG9zZTsKICAgICBvYmplY3RDbGFzcy0+Z2V0
X3Byb3BlcnR5ID0gd2Via2l0X3dlYl92aWV3X2dldF9wcm9wZXJ0eTsKICAgICBvYmplY3RDbGFz
cy0+c2V0X3Byb3BlcnR5ID0gd2Via2l0X3dlYl92aWV3X3NldF9wcm9wZXJ0eTsKIAo=
</data>
<flag name="review"
          id="12605"
          type_id="1"
          status="-"
          setter="zecke"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26578</attachid>
            <date>2009-01-09 14:49:08 -0800</date>
            <delta_ts>2009-01-19 16:51:44 -0800</delta_ts>
            <desc>fix WebView to use dispose</desc>
            <filename>diff</filename>
            <type>text/plain</type>
            <size>4033</size>
            <attacher name="Benjamin Otte">otte</attacher>
            
              <data encoding="base64">Y29tbWl0IGM2YTlkMzJiYmUxMTBhNGE2YjIyNjdiZjViMDMyNTA2ZTk2NDg4NDgKQXV0aG9yOiBC
ZW5qYW1pbiBPdHRlIDxvdHRlQGdub21lLm9yZz4KRGF0ZTogICBGcmkgSmFuIDkgMjM6NDI6NTYg
MjAwOSArMDEwMAoKICAgIFtHVEtdIGJ1ZyAyMzE5NCwgcGFydCAxCgpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L2d0ay9DaGFuZ2VMb2cgYi9XZWJLaXQvZ3RrL0NoYW5nZUxvZwppbmRleCA3ZTQ0MTdhLi4x
MzkwOGU2IDEwMDY0NAotLS0gYS9XZWJLaXQvZ3RrL0NoYW5nZUxvZworKysgYi9XZWJLaXQvZ3Rr
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDA5LTAxLTA4ICBCZW5qYW1pbiBPdHRlICA8
b3R0ZUBnbm9tZS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTk0CisK
KyAgICAgICAgKiB3ZWJraXQvd2Via2l0d2Vidmlldy5jcHA6CisgICAgICAgIG1ha2UgdGhlIGZp
bmFsaXplIGZ1bmN0aW9uIHRoZSBkaXNwb3NlIGZ1bmN0aW9uLiBOb3QgcmVsZWFzaW5nIGhlbGQK
KyAgICAgICAgb2JqZWN0cyBpbiBkaXNwb3NlIGNhbiBjYXVzZSBjcmFzaGVycyBsYXRlci4KKwog
MjAwOS0wMS0wMyAgWGFuIExvcGV6ICA8eGFuQGdub21lLm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBIb2xnZXIgRnJleXRoZXIuCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJr
aXR3ZWJ2aWV3LmNwcCBiL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCmluZGV4
IDkxZjNiODAuLjc3NjJmM2UgMTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnZpZXcuY3BwCisrKyBiL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCkBAIC04
MDcsMzEgKzgwNyw1NSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3ZpZXdfcmVhbF9wYXN0ZV9j
bGlwYm9hcmQoV2ViS2l0V2ViVmlldyogd2ViVmlldykKICAgICBmcmFtZS0+ZWRpdG9yKCktPmNv
bW1hbmQoIlBhc3RlIikuZXhlY3V0ZSgpOwogfQogCi1zdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3Zp
ZXdfZmluYWxpemUoR09iamVjdCogb2JqZWN0KQorc3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3
X2Rpc3Bvc2UoR09iamVjdCogb2JqZWN0KQogewogICAgIFdlYktpdFdlYlZpZXcqIHdlYlZpZXcg
PSBXRUJLSVRfV0VCX1ZJRVcob2JqZWN0KTsKICAgICBXZWJLaXRXZWJWaWV3UHJpdmF0ZSogcHJp
diA9IHdlYlZpZXctPnByaXY7CiAKLSAgICB3ZWJraXRfd2ViX3ZpZXdfc3RvcF9sb2FkaW5nKFdF
QktJVF9XRUJfVklFVyhvYmplY3QpKTsKKyAgICBpZiAocHJpdi0+Y29yZVBhZ2UpIHsKKyAgICAg
ICAgd2Via2l0X3dlYl92aWV3X3N0b3BfbG9hZGluZyhXRUJLSVRfV0VCX1ZJRVcob2JqZWN0KSk7
CiAKLSAgICBjb3JlKHByaXYtPm1haW5GcmFtZSktPmxvYWRlcigpLT5kZXRhY2hDaGlsZHJlbigp
OwotICAgIGRlbGV0ZSBwcml2LT5jb3JlUGFnZTsKKyAgICAgICAgY29yZShwcml2LT5tYWluRnJh
bWUpLT5sb2FkZXIoKS0+ZGV0YWNoQ2hpbGRyZW4oKTsKKyAgICAgICAgZGVsZXRlIHByaXYtPmNv
cmVQYWdlOworICAgICAgICBwcml2LT5jb3JlUGFnZSA9IDA7CisgICAgfQogCi0gICAgaWYgKHBy
aXYtPmhvcml6b250YWxBZGp1c3RtZW50KQorICAgIGlmIChwcml2LT5ob3Jpem9udGFsQWRqdXN0
bWVudCkgewogICAgICAgICBnX29iamVjdF91bnJlZihwcml2LT5ob3Jpem9udGFsQWRqdXN0bWVu
dCk7Ci0gICAgaWYgKHByaXYtPnZlcnRpY2FsQWRqdXN0bWVudCkKKyAgICAgICAgcHJpdi0+aG9y
aXpvbnRhbEFkanVzdG1lbnQgPSAwOworICAgIH0KKyAgICBpZiAocHJpdi0+dmVydGljYWxBZGp1
c3RtZW50KSB7CiAgICAgICAgIGdfb2JqZWN0X3VucmVmKHByaXYtPnZlcnRpY2FsQWRqdXN0bWVu
dCk7Ci0gICAgZ19vYmplY3RfdW5yZWYocHJpdi0+YmFja0ZvcndhcmRMaXN0KTsKLSAgICBnX3Np
Z25hbF9oYW5kbGVyc19kaXNjb25uZWN0X2J5X2Z1bmMocHJpdi0+d2ViU2V0dGluZ3MsIChncG9p
bnRlcil3ZWJraXRfd2ViX3ZpZXdfc2V0dGluZ3Nfbm90aWZ5LCB3ZWJWaWV3KTsKLSAgICBnX29i
amVjdF91bnJlZihwcml2LT53ZWJTZXR0aW5ncyk7Ci0gICAgZ19vYmplY3RfdW5yZWYocHJpdi0+
d2ViSW5zcGVjdG9yKTsKLSAgICBnX29iamVjdF91bnJlZihwcml2LT53ZWJXaW5kb3dGZWF0dXJl
cyk7Ci0gICAgZ19vYmplY3RfdW5yZWYocHJpdi0+aW1Db250ZXh0KTsKLSAgICBndGtfdGFyZ2V0
X2xpc3RfdW5yZWYocHJpdi0+Y29weV90YXJnZXRfbGlzdCk7Ci0gICAgZ3RrX3RhcmdldF9saXN0
X3VucmVmKHByaXYtPnBhc3RlX3RhcmdldF9saXN0KTsKLSAgICBkZWxldGUgcHJpdi0+dXNlckFn
ZW50OworICAgICAgICBwcml2LT52ZXJ0aWNhbEFkanVzdG1lbnQgPSAwOworICAgIH0KKyAgICBp
ZiAocHJpdi0+YmFja0ZvcndhcmRMaXN0KSB7CisgICAgICAgIGdfb2JqZWN0X3VucmVmKHByaXYt
PmJhY2tGb3J3YXJkTGlzdCk7CisgICAgICAgIHByaXYtPmJhY2tGb3J3YXJkTGlzdCA9IDA7CisK
KyAgICAgICAgZ19zaWduYWxfaGFuZGxlcnNfZGlzY29ubmVjdF9ieV9mdW5jKHByaXYtPndlYlNl
dHRpbmdzLCAoZ3BvaW50ZXIpd2Via2l0X3dlYl92aWV3X3NldHRpbmdzX25vdGlmeSwgd2ViVmll
dyk7CisgICAgICAgIGdfb2JqZWN0X3VucmVmKHByaXYtPndlYlNldHRpbmdzKTsKKyAgICAgICAg
cHJpdi0+d2ViU2V0dGluZ3MgPSAwOworCisgICAgICAgIGdfb2JqZWN0X3VucmVmKHByaXYtPndl
Ykluc3BlY3Rvcik7CisgICAgICAgIHByaXYtPndlYkluc3BlY3RvciA9IDA7CisKKyAgICAgICAg
Z19vYmplY3RfdW5yZWYocHJpdi0+d2ViV2luZG93RmVhdHVyZXMpOworICAgICAgICBwcml2LT53
ZWJXaW5kb3dGZWF0dXJlcyA9IDA7CisKKyAgICAgICAgZ19vYmplY3RfdW5yZWYocHJpdi0+aW1D
b250ZXh0KTsKKyAgICAgICAgcHJpdi0+aW1Db250ZXh0ID0gMDsKKworICAgICAgICBndGtfdGFy
Z2V0X2xpc3RfdW5yZWYocHJpdi0+Y29weV90YXJnZXRfbGlzdCk7CisgICAgICAgIHByaXYtPmNv
cHlfdGFyZ2V0X2xpc3QgPSAwOworCisgICAgICAgIGd0a190YXJnZXRfbGlzdF91bnJlZihwcml2
LT5wYXN0ZV90YXJnZXRfbGlzdCk7CisgICAgICAgIHByaXYtPnBhc3RlX3RhcmdldF9saXN0ID0g
MDsKKworICAgICAgICBkZWxldGUgcHJpdi0+dXNlckFnZW50OworICAgICAgICBwcml2LT51c2Vy
QWdlbnQgPSAwOworICAgIH0KIAotICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF93ZWJfdmlld19w
YXJlbnRfY2xhc3MpLT5maW5hbGl6ZShvYmplY3QpOworICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtp
dF93ZWJfdmlld19wYXJlbnRfY2xhc3MpLT5kaXNwb3NlKG9iamVjdCk7CiB9CiAKIHN0YXRpYyBn
Ym9vbGVhbiB3ZWJraXRfY3JlYXRlX3dlYl92aWV3X3JlcXVlc3RfaGFuZGxlZChHU2lnbmFsSW52
b2NhdGlvbkhpbnQqIGloaW50LCBHVmFsdWUqIHJldHVybkFjY3UsIGNvbnN0IEdWYWx1ZSogaGFu
ZGxlclJldHVybiwgZ3BvaW50ZXIgZHVtbXkpCkBAIC0xMzYyLDcgKzEzODYsNyBAQCBzdGF0aWMg
dm9pZCB3ZWJraXRfd2ViX3ZpZXdfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZp
ZXdDbGFzcykKICAgICB3ZWJWaWV3Q2xhc3MtPnBhc3RlX2NsaXBib2FyZCA9IHdlYmtpdF93ZWJf
dmlld19yZWFsX3Bhc3RlX2NsaXBib2FyZDsKIAogICAgIEdPYmplY3RDbGFzcyogb2JqZWN0Q2xh
c3MgPSBHX09CSkVDVF9DTEFTUyh3ZWJWaWV3Q2xhc3MpOwotICAgIG9iamVjdENsYXNzLT5maW5h
bGl6ZSA9IHdlYmtpdF93ZWJfdmlld19maW5hbGl6ZTsKKyAgICBvYmplY3RDbGFzcy0+ZGlzcG9z
ZSA9IHdlYmtpdF93ZWJfdmlld19kaXNwb3NlOwogICAgIG9iamVjdENsYXNzLT5nZXRfcHJvcGVy
dHkgPSB3ZWJraXRfd2ViX3ZpZXdfZ2V0X3Byb3BlcnR5OwogICAgIG9iamVjdENsYXNzLT5zZXRf
cHJvcGVydHkgPSB3ZWJraXRfd2ViX3ZpZXdfc2V0X3Byb3BlcnR5OwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26579</attachid>
            <date>2009-01-09 14:50:54 -0800</date>
            <delta_ts>2009-01-19 16:52:16 -0800</delta_ts>
            <desc>make DOwnload policy decision not fail</desc>
            <filename>diff</filename>
            <type>text/plain</type>
            <size>1457</size>
            <attacher name="Benjamin Otte">otte</attacher>
            
              <data encoding="base64">Y29tbWl0IGFlNmUzODhkZTVkOTQ2ZDZiY2Y5Yjk0MmU3YjhiZTJkYzg5N2Y1MzIKQXV0aG9yOiBC
ZW5qYW1pbiBPdHRlIDxvdHRlQGdub21lLm9yZz4KRGF0ZTogICBGcmkgSmFuIDkgMjM6NDc6NDEg
MjAwOSArMDEwMAoKICAgIFtHVEtdIDIzMTk0IHBhcnQgMgoKZGlmZiAtLWdpdCBhL1dlYktpdC9n
dGsvQ2hhbmdlTG9nIGIvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKaW5kZXggMTM5MDhlNi4uZjhhYTMx
NyAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2d0ay9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAwOS0wMS0wOSAgQmVuamFtaW4gT3R0ZSAgPG90dGVA
Z25vbWUub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE5NAorCisgICAg
ICAgICogd2Via2l0L3dlYmtpdHdlYnBvbGljeWRlY2lzaW9uLmNwcDoKKyAgICAgICAgKF9XZWJL
aXRXZWJQb2xpY3lEZWNpc2lvblByaXZhdGU6OndlYmtpdF93ZWJfcG9saWN5X2RlY2lzaW9uX2Rv
d25sb2FkKToKKyAgICAgICAgUmVtb3ZlIGJyb2tlbiBjb2RlIHRoYXQgdXNlcyBhIGZhbGxiYWNr
LiBUaGUgcHJldmlvdXMgY29kZSBkaWQgMgorICAgICAgICBwb2xpY3kgZGVjaXNpb25zIHdoaWNo
IGNhdXNlZCBjcmFzaGVzLgorICAgICAgICBEb3dubG9hZCBpcyBzdGlsbCBub3RJbXBsZW1lbnRl
ZCgpOworCiAyMDA5LTAxLTA4ICBCZW5qYW1pbiBPdHRlICA8b3R0ZUBnbm9tZS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3Rr
L3dlYmtpdC93ZWJraXR3ZWJwb2xpY3lkZWNpc2lvbi5jcHAgYi9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJwb2xpY3lkZWNpc2lvbi5jcHAKaW5kZXggM2EwNzdkMi4uZGI0ZDEwZiAxMDA2NDQK
LS0tIGEvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2VicG9saWN5ZGVjaXNpb24uY3BwCisrKyBi
L1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnBvbGljeWRlY2lzaW9uLmNwcApAQCAtMTEzLDkg
KzExMyw2IEBAIHZvaWQgd2Via2l0X3dlYl9wb2xpY3lfZGVjaXNpb25fZG93bmxvYWQoV2ViS2l0
V2ViUG9saWN5RGVjaXNpb24qIGRlY2lzaW9uKQogCiAgICAgV2ViS2l0V2ViUG9saWN5RGVjaXNp
b25Qcml2YXRlKiBwcml2ID0gZGVjaXNpb24tPnByaXY7CiAKLSAgICBnX3dhcm5pbmcoIkRvd25s
b2FkIGlzIG5vdCBzdXBwb3J0ZWQiKTsKLSAgICB3ZWJraXRfd2ViX3BvbGljeV9kZWNpc2lvbl9p
Z25vcmUoZGVjaXNpb24pOwotCiAgICAgaWYgKCFwcml2LT5pc0NhbmNlbGxlZCkKICAgICAgICAg
KGNvcmUocHJpdi0+ZnJhbWUpLT5sb2FkZXIoKS0+Kihwcml2LT5mcmFtZVBvbGljeUZ1bmN0aW9u
KSkoV2ViQ29yZTo6UG9saWN5RG93bmxvYWQpOwogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>