<?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>214198</bug_id>
          
          <creation_ts>2020-07-10 14:27:00 -0700</creation_ts>
          <short_desc>[iOS] Prompt for requestStorageAccess is inverted in WKWebView</short_desc>
          <delta_ts>2020-07-10 23:30:29 -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>WebKit API</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ali Juma">ajuma</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>darin</cc>
    
    <cc>katherine_cheney</cc>
    
    <cc>rkgibson</cc>
    
    <cc>rohitrao</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1670576</commentid>
    <comment_count>0</comment_count>
      <attachid>404001</attachid>
    <who name="Ali Juma">ajuma</who>
    <bug_when>2020-07-10 14:27:00 -0700</bug_when>
    <thetext>Created attachment 404001
Test case

Testing on iOS 14 beta 2, I&apos;m seeing the following broken behavior for the requestStorageAccess prompt in WKWebView:
1. On the simulator, clicking &quot;Don&apos;t allow&quot; or &quot;Allow&quot; does the opposite: &quot;Don&apos;t allow&quot; grants access while &quot;Allow&quot; denies it.
2. On device, in situations where the prompt should be shown, storage access is granted silently without displaying any prompt.

The behavior is correct in Safari, but broken in WKWebView (I&apos;m testing using Chrome).

I&apos;ve attached a test case that reproduces this bug:
1. First visit https://alijuma.github.io/request.html and click the button.
2. Visit the attached test page (which embeds the page above) and click the button, which triggers requestStorageAccess.

Expected behavior (and behavior in Safari): a prompt is shown, and clicking on &quot;Allow&quot; or &quot;Don&apos;t allow&quot; updates the displayed message to indicate whether the promise resolved or rejected.
Actual behavior in WKWebView: On simulator, the prompt is shown, but the buttons do the opposite of what they should. On device, no prompt is shown.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670578</commentid>
    <comment_count>1</comment_count>
    <who name="Ali Juma">ajuma</who>
    <bug_when>2020-07-10 14:32:57 -0700</bug_when>
    <thetext>Also created FB7910866 for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670630</commentid>
    <comment_count>2</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-07-10 16:02:06 -0700</bug_when>
    <thetext>Oh wow -- I think this has been inverted the whole time!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670631</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-07-10 16:02:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/65369725&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670634</commentid>
    <comment_count>4</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-07-10 16:04:59 -0700</bug_when>
    <thetext>Ali: Looking at the code, I believe this has been broken in all versions of iOS with this prompt. Did you test in iOS 13 and find that it worked properly in that release?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670637</commentid>
    <comment_count>5</comment_count>
      <attachid>404015</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-07-10 16:07:43 -0700</bug_when>
    <thetext>Created attachment 404015
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670673</commentid>
    <comment_count>6</comment_count>
    <who name="Ali Juma">ajuma</who>
    <bug_when>2020-07-10 17:42:57 -0700</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #4)
&gt; Ali: Looking at the code, I believe this has been broken in all versions of
&gt; iOS with this prompt. Did you test in iOS 13 and find that it worked
&gt; properly in that release?

On iOS 13, I don&apos;t see the prompt at all in WKWebView (storage access is silently granted), presumably because ITP isn&apos;t enabled in iOS 13.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1670725</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-10 23:30:28 -0700</bug_when>
    <thetext>Committed r264266: &lt;https://trac.webkit.org/changeset/264266&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 404015.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>404001</attachid>
            <date>2020-07-10 14:27:00 -0700</date>
            <delta_ts>2020-07-10 14:27:00 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>request-storage-access.html</filename>
            <type>text/html</type>
            <size>77</size>
            <attacher name="Ali Juma">ajuma</attacher>
            
              <data encoding="base64">PGlmcmFtZSB3aWR0aD0iODAwcHgiIHNyYz0iaHR0cHM6Ly9hbGlqdW1hLmdpdGh1Yi5pby9yZXF1
ZXN0Lmh0bWwiPjwvaWZyYW1lPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>404015</attachid>
            <date>2020-07-10 16:07:43 -0700</date>
            <delta_ts>2020-07-10 23:30:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214198-20200710160743.patch</filename>
            <type>text/plain</type>
            <size>2352</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0MjMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI1ZmE0NTBiOTA5ODU5MmQ1
NDYzMzc1MTMyNzZkM2RkNjJkYTMzMzAuLjQyOTBjYzY0MTM3NGUyNWUzNGE0M2JiYWUzZTEyMWQw
ZWRkMDAxZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDctMTAgIEJyZW50IEZ1
bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gUHJvbXB0IGZvciBy
ZXF1ZXN0U3RvcmFnZUFjY2VzcyBpcyBpbnZlcnRlZCBpbiBXS1dlYlZpZXcgCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQxOTgKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzY1MzY5NzI1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFRoZSBsYWJlbHMgZm9yICJhbGxvdyIgYW5kICJkZW55IiBTdG9yYWdl
QWNjZXNzIEFQSSB3ZXJlIGludmVydGVkIGluIHRoZSBXS1dlYlZpZXcKKyAgICAgICAgaW1wbGVt
ZW50YXRpb24uCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV0tTdG9yYWdlQWNjZXNzQWxl
cnQubW06CisgICAgICAgIChXZWJLaXQ6OnByZXNlbnRTdG9yYWdlQWNjZXNzQWxlcnQpOgorCiAy
MDIwLTA3LTEwICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAg
IFtJUEMgaGFyZGVuaW5nXSBVc2UgTUVTU0FHRV9DSEVDSyBpbiBXZWJQYWdlUHJveHk6OnNldENv
bG9yUGlja2VyQ29sb3IoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvV0tTdG9yYWdlQWNjZXNzQWxlcnQubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XS1N0b3JhZ2VBY2Nlc3NBbGVydC5tbQppbmRleCA4MWEwZTU2ZmVlOTk3ZmQyNzU5MWI1ZmM5
ZWI1ZmE1YzRiNWNhYjMwLi5hOWNlMDc1YWRkMDkwMTFmMDhjMTI5MzhiM2FlMmJlNmI2NzYzNTFk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XS1N0b3JhZ2VBY2Nl
c3NBbGVydC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XS1N0b3JhZ2VB
Y2Nlc3NBbGVydC5tbQpAQCAtNjcsMTIgKzY3LDEyIEBAIHZvaWQgcHJlc2VudFN0b3JhZ2VBY2Nl
c3NBbGVydChXS1dlYlZpZXcgKndlYlZpZXcsIGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9t
CiAjZWxzZQogICAgIFVJQWxlcnRDb250cm9sbGVyKiBhbGVydCA9IFtVSUFsZXJ0Q29udHJvbGxl
ciBhbGVydENvbnRyb2xsZXJXaXRoVGl0bGU6YWxlcnRUaXRsZSBtZXNzYWdlOmluZm9ybWF0aXZl
VGV4dCBwcmVmZXJyZWRTdHlsZTpVSUFsZXJ0Q29udHJvbGxlclN0eWxlQWxlcnRdOwogCi0gICAg
VUlBbGVydEFjdGlvbiogZG9Ob3RBbGxvd0FjdGlvbiA9IFtVSUFsZXJ0QWN0aW9uIGFjdGlvbldp
dGhUaXRsZTphbGxvd0J1dHRvblN0cmluZyBzdHlsZTpVSUFsZXJ0QWN0aW9uU3R5bGVDYW5jZWwg
aGFuZGxlcjpbY29tcGxldGlvbkJsb2NrXShVSUFsZXJ0QWN0aW9uICphY3Rpb24pIHsKLSAgICAg
ICAgY29tcGxldGlvbkJsb2NrKGZhbHNlKTsKKyAgICBVSUFsZXJ0QWN0aW9uKiBhbGxvd0FjdGlv
biA9IFtVSUFsZXJ0QWN0aW9uIGFjdGlvbldpdGhUaXRsZTphbGxvd0J1dHRvblN0cmluZyBzdHls
ZTpVSUFsZXJ0QWN0aW9uU3R5bGVDYW5jZWwgaGFuZGxlcjpbY29tcGxldGlvbkJsb2NrXShVSUFs
ZXJ0QWN0aW9uICphY3Rpb24pIHsKKyAgICAgICAgY29tcGxldGlvbkJsb2NrKHRydWUpOwogICAg
IH1dOwogCi0gICAgVUlBbGVydEFjdGlvbiogYWxsb3dBY3Rpb24gPSBbVUlBbGVydEFjdGlvbiBh
Y3Rpb25XaXRoVGl0bGU6ZG9Ob3RBbGxvd0J1dHRvblN0cmluZyBzdHlsZTpVSUFsZXJ0QWN0aW9u
U3R5bGVEZWZhdWx0IGhhbmRsZXI6W2NvbXBsZXRpb25CbG9ja10oVUlBbGVydEFjdGlvbiAqYWN0
aW9uKSB7Ci0gICAgICAgIGNvbXBsZXRpb25CbG9jayh0cnVlKTsKKyAgICBVSUFsZXJ0QWN0aW9u
KiBkb05vdEFsbG93QWN0aW9uID0gW1VJQWxlcnRBY3Rpb24gYWN0aW9uV2l0aFRpdGxlOmRvTm90
QWxsb3dCdXR0b25TdHJpbmcgc3R5bGU6VUlBbGVydEFjdGlvblN0eWxlRGVmYXVsdCBoYW5kbGVy
Oltjb21wbGV0aW9uQmxvY2tdKFVJQWxlcnRBY3Rpb24gKmFjdGlvbikgeworICAgICAgICBjb21w
bGV0aW9uQmxvY2soZmFsc2UpOwogICAgIH1dOwogCiAgICAgW2FsZXJ0IGFkZEFjdGlvbjpkb05v
dEFsbG93QWN0aW9uXTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>