<?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>159068</bug_id>
          
          <creation_ts>2016-06-23 12:22:49 -0700</creation_ts>
          <short_desc>[iOS] A WebPageProxy in closed state should not be allowed to hold a process assertion</short_desc>
          <delta_ts>2016-06-23 12:59:14 -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>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>iOS 9.3</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>andersca</cc>
    
    <cc>barraclough</cc>
    
    <cc>dbates</cc>
    
    <cc>kling</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1204904</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-23 12:22:49 -0700</bug_when>
    <thetext>A WebPageProxy in closed state should not be allowed to hold a process assertion. It currently happens that WebPageProxy::close() gets called but that the WebPageProxy is kept alive by Safari (e.g. In case of top-hit preloading). In such cases, we fail to release the foreground process assertion that the WebPageProxy holds.

We should clear the foreground process assertion that the WebPageProxy holds as soon as WebPageProxy::close() is called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204905</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-23 12:23:22 -0700</bug_when>
    <thetext>rdar://problem/17665473</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204908</commentid>
    <comment_count>2</comment_count>
      <attachid>281928</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-23 12:26:53 -0700</bug_when>
    <thetext>Created attachment 281928
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204909</commentid>
    <comment_count>3</comment_count>
      <attachid>281928</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2016-06-23 12:52:51 -0700</bug_when>
    <thetext>Comment on attachment 281928
Patch

It doesn&apos;t make sense for Safari to keep the view alive if it has been closed; you can&apos;t come back from being closed, as far as I remember. Are you sure that is intentional?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204910</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-23 12:56:16 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 281928 [details]
&gt; Patch
&gt; 
&gt; It doesn&apos;t make sense for Safari to keep the view alive if it has been
&gt; closed; you can&apos;t come back from being closed, as far as I remember. Are you
&gt; sure that is intentional?

It may not be intentional, I&apos;ll investigate separately. I definitely see close() getting called but not the destructor. Do you mind if we still land as is though? It cannot hurt to release the assertion as soon as close() is called I believe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204911</commentid>
    <comment_count>5</comment_count>
      <attachid>281928</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-23 12:59:09 -0700</bug_when>
    <thetext>Comment on attachment 281928
Patch

Clearing flags on attachment: 281928

Committed r202393: &lt;http://trac.webkit.org/changeset/202393&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204912</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-23 12:59:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281928</attachid>
            <date>2016-06-23 12:26:53 -0700</date>
            <delta_ts>2016-06-23 12:59:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-159068-20160623122643.patch</filename>
            <type>text/plain</type>
            <size>1972</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAyMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNjNiYTIwNzQyOWMxMjgw
NzJjZGZkZjI5ZWUxYjg3ODBmNjlmNTAzMS4uNzQyMWJjMjRhNjcyMzUzOWRhN2VkMzA0YTg5MDc4
ZGFjZjE0YTViMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE2LTA2LTIzICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gQSBXZWJQYWdlUHJv
eHkgaW4gY2xvc2VkIHN0YXRlIHNob3VsZCBub3QgYmUgYWxsb3dlZCB0byBob2xkIGEgcHJvY2Vz
cyBhc3NlcnRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE1OTA2OAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTc2NjU0NzM+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQSBXZWJQYWdlUHJveHkgaW4g
Y2xvc2VkIHN0YXRlIHNob3VsZCBub3QgYmUgYWxsb3dlZCB0byBob2xkIGEgcHJvY2VzcyBhc3Nl
cnRpb24uIEl0CisgICAgICAgIGN1cnJlbnRseSBoYXBwZW5zIHRoYXQgV2ViUGFnZVByb3h5Ojpj
bG9zZSgpIGdldHMgY2FsbGVkIGJ1dCB0aGF0IHRoZSBXZWJQYWdlUHJveHkgaXMKKyAgICAgICAg
a2VwdCBhbGl2ZSBieSBTYWZhcmkgKGUuZy4gSW4gY2FzZSBvZiB0b3AtaGl0IHByZWxvYWRpbmcp
LiBJbiBzdWNoIGNhc2VzLCB3ZSBmYWlsIHRvCisgICAgICAgIHJlbGVhc2UgdGhlIGZvcmVncm91
bmQgcHJvY2VzcyBhc3NlcnRpb24gdGhhdCB0aGUgV2ViUGFnZVByb3h5IGhvbGRzLgorCisgICAg
ICAgIFdlIHNob3VsZCBjbGVhciB0aGUgZm9yZWdyb3VuZCBwcm9jZXNzIGFzc2VydGlvbiB0aGF0
IHRoZSBXZWJQYWdlUHJveHkgaG9sZHMgYXMgc29vbgorICAgICAgICBhcyBXZWJQYWdlUHJveHk6
OmNsb3NlKCkgaXMgY2FsbGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6Y2xvc2UpOgorCiAyMDE2LTA2LTIz
ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJl
dmlld2VkLCByb2xsaW5nIG91dCByMjAxMTk0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcAppbmRleCAxN2RjOTFlZjg2MTY3ZTc0YThjNzBmMzg2NGFjMzE4OTFkYzc3
MWRkLi5iN2VlMmZhNzNkNmI5YmU2N2RhNGZiYjI1NGMxNTQxZDY2NmU0ODIyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtODY4LDYgKzg2OCwxMSBAQCB2
b2lkIFdlYlBhZ2VQcm94eTo6Y2xvc2UoKQogICAgIG1fcHJvY2Vzcy0+cmVtb3ZlV2ViUGFnZSht
X3BhZ2VJRCk7CiAgICAgbV9wcm9jZXNzLT5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCk7CiAgICAgbV9w
cm9jZXNzLT5wcm9jZXNzUG9vbCgpLnN1cHBsZW1lbnQ8V2ViTm90aWZpY2F0aW9uTWFuYWdlclBy
b3h5PigpLT5jbGVhck5vdGlmaWNhdGlvbnModGhpcyk7CisKKyNpZiBQTEFURk9STShJT1MpCisg
ICAgLy8gTWFrZSBzdXJlIHdlIGRvbid0IGhvbGQgYSBwcm9jZXNzIGFzc2VydGlvbiBhZnRlciBn
ZXR0aW5nIGNsb3NlZC4KKyAgICBtX2FjdGl2aXR5VG9rZW4gPSBudWxscHRyOworI2VuZGlmCiB9
CiAKIGJvb2wgV2ViUGFnZVByb3h5Ojp0cnlDbG9zZSgpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>