<?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>238687</bug_id>
          
          <creation_ts>2022-04-01 16:19:55 -0700</creation_ts>
          <short_desc>[iOS] Several tests in media/modern-media-controls crash in -[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]</short_desc>
          <delta_ts>2022-04-01 23:29:17 -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>Media</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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>hi</cc>
    
    <cc>jer.noble</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1857440</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-04-01 16:19:55 -0700</bug_when>
    <thetext>These are the ones I reproduced locally (basically the ones that present the media controls context menu):

media/modern-media-controls/overflow-support/button-state.html
media/modern-media-controls/overflow-support/chapters.html
media/modern-media-controls/overflow-support/playback-speed.html
media/modern-media-controls/tracks-support/audio-multiple-tracks.html
media/modern-media-controls/tracks-support/audio-single-track.html
media/modern-media-controls/tracks-support/auto-text-track.html
media/modern-media-controls/tracks-support/click-track-in-contextmenu.html
media/modern-media-controls/tracks-support/hidden-tracks.html
media/modern-media-controls/tracks-support/off-text-track.html

```
Thread 0 Crashed::  Dispatch queue: com.apple.main-thread
0   WebKit                        	       0x151e56c8c WTF::RefPtr&lt;WTF::StringImpl, WTF::RawPtrTraits&lt;WTF::StringImpl&gt;, WTF::DefaultRefDerefTraits&lt;WTF::StringImpl&gt; &gt;::operator!() const + 12
1   WebKit                        	       0x151ea3689 WTF::String::isEmpty() const + 25
2   WebKit                        	       0x15357f693 -[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4::operator()(WebCore::MediaControlsContextMenuItem&amp;) const + 51
3   WebKit                        	       0x15357f64d decltype(static_cast&lt;-[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4&gt;(fp)(static_cast&lt;WebCore::MediaControlsContextMenuItem&amp;&gt;(fp0))) std::__1::__invoke&lt;-[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4, WebCore::MediaControlsContextMenuItem&amp;&gt;(-[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4&amp;&amp;, WebCore::MediaControlsContextMenuItem&amp;) + 29
4   WebKit                        	       0x15357f5c2 std::__1::invoke_result&lt;-[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4, WebCore::MediaControlsContextMenuItem&amp;&gt;::type std::__1::invoke&lt;-[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4, WebCore::MediaControlsContextMenuItem&amp;&gt;(-[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4&amp;&amp;, WebCore::MediaControlsContextMenuItem&amp;) + 50
5   WebKit                        	       0x1535717be WTF::RetainPtr&lt;NSMutableArray&gt; WTF::createNSArray&lt;WTF::Vector&lt;WebCore::MediaControlsContextMenuItem, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;, -[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4&gt;(WTF::Vector&lt;WebCore::MediaControlsContextMenuItem, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;&amp;, -[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]::$_4&amp;&amp;) + 238
6   WebKit                        	       0x153571681 -[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:] + 49
7   WebKit                        	       0x153571b89 -[WKActionSheetAssistant showMediaControlsContextMenu:items:completionHandler:] + 809
8   WebKit                        	       0x1549d4d15 -[WKContentView(WKInteraction) _showMediaControlsContextMenu:items:completionHandler:] + 117
```</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857441</commentid>
    <comment_count>1</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-04-01 16:20:58 -0700</bug_when>
    <thetext>The `WTFMove(item.icon)` is unsafe, I think.. Just need to avoid that</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857478</commentid>
    <comment_count>2</comment_count>
      <attachid>456424</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-04-01 18:49:43 -0700</bug_when>
    <thetext>Created attachment 456424
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857480</commentid>
    <comment_count>3</comment_count>
      <attachid>456424</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2022-04-01 18:51:07 -0700</bug_when>
    <thetext>Comment on attachment 456424
Patch

Oof</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857541</commentid>
    <comment_count>4</comment_count>
      <attachid>456424</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-04-01 22:44:38 -0700</bug_when>
    <thetext>Comment on attachment 456424
Patch

Thanks for the review!

(In reply to Tim Horton from comment #3)
&gt; Comment on attachment 456424 [details]
&gt; Patch
&gt; 
&gt; Oof

...indeed :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857547</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-04-01 23:28:57 -0700</bug_when>
    <thetext>Committed r292260 (249158@main): &lt;https://commits.webkit.org/249158@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 456424.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1857548</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-04-01 23:29:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/91196038&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456424</attachid>
            <date>2022-04-01 18:49:43 -0700</date>
            <delta_ts>2022-04-01 23:28:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238687-20220401184942.patch</filename>
            <type>text/plain</type>
            <size>3637</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyMjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDlhNjA0OGM4NzgyYTdmODI1
ZmEwNDFlYzUwZjZmZmY3ZDA1OTNkMzMuLmJjMDg4ZjMxNGQyNDNmMTM5ZGIxNjI3NjMwMDNjYjlh
ZmExNjQwZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjItMDQtMDEgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gU2V2ZXJhbCB0
ZXN0cyBpbiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMgY3Jhc2ggaW4gLVtXS0FjdGlvblNo
ZWV0QXNzaXN0YW50IF91aU1lbnVFbGVtZW50c0Zvck1lZGlhQ29udHJvbENvbnRleHRNZW51SXRl
bXM6XQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4
Njg3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4
ZXMgc2V2ZXJhbCBkZWJ1ZyBhc3NlcnRpb25zIHRoYXQgYXJlIGhpdCB3aGVuIHJ1bm5pbmcgbGF5
b3V0IHRlc3RzIGluIG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scywgZHVlIHRvCisgICAgICAg
IGV4ZXJjaXNpbmcgdW5kZWZpbmVkIGJlaGF2aW9yIGluIHRoZSBjYXNlIHdoZXJlIHRoZXJlIGlz
IG9ubHkgb25lIGl0ZW0uIFRoaXMgaXMgYmVjYXVzZSB3ZSBjdXJyZW50bHkgdXNlCisgICAgICAg
IFZlY3RvcidzIG1vdmUgYXNzaWdubWVudCBvcGVyYXRvciB0byBzZXQgYGl0ZW1zYCB0byBgaXRl
bXNbMF0uY2hpbGRyZW5gOyBob3dldmVyLCB0aGlzIG1vdmUgYXNzaWdubWVudCBvcGVyYXRvcgor
ICAgICAgICBzdGFydHMgYnkgY2FsbGluZyB0aGUgZGVzdHJ1Y3RvciBvbiB0aGUgY29udGVudHMg
b2YgYGl0ZW1gLCB3aGljaCBwdXRzIHRoZSBmaXJzdCBpdGVtJ3MgdmVjdG9yIG9mIGNoaWxkcmVu
IGluIGFuCisgICAgICAgIGludmFsaWQgc3RhdGUuCisKKyAgICAgICAgSW5zdGVhZCwgc2ltcGx5
IGFkZCBhIG5ldyB0ZW1wb3JhcnkgdmFyaWFibGUsIGFuZCBtb3ZlIGludG8gdGhlIHRlbXBvcmFy
eSB2YXJpYWJsZSBpbnN0ZWFkLgorCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNo
ZWV0QXNzaXN0YW50Lm1tOgorICAgICAgICAoLVtXS0FjdGlvblNoZWV0QXNzaXN0YW50IF91aU1l
bnVFbGVtZW50c0Zvck1lZGlhQ29udHJvbENvbnRleHRNZW51SXRlbXM6XSk6CisgICAgICAgICgt
W1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQgc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudTppdGVt
czpjb21wbGV0aW9uSGFuZGxlcjpdKToKKwogMjAyMi0wNC0wMSAgV2Vuc29uIEhzaWVoICA8d2Vu
c29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBbV0syXSBBZGQgcGx1bWJpbmcg
Zm9yIGV4dHJhY3RpbmcgdmlkZW8gZnJhbWVzIGluIGVsZW1lbnQgZnVsbHNjcmVlbgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQu
bW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5t
bQppbmRleCAzMGFlMTllMTFlOGM3NzEzZjFjYmE4ZjVhMWE1MjEyNTM3NmUyOThmLi4xNTAxMjRm
MTEwMDY4ZjU3MzAyNmMwMWUxYTBiNjc2Y2Y4YWExZmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbQpAQCAtODA4LDcg
KzgwOCw3IEBAIC0gKHZvaWQpc2hvd0RhdGFEZXRlY3RvcnNVSUZvclBvc2l0aW9uSW5mb3JtYXRp
b246KGNvbnN0IFdlYktpdDo6SW50ZXJhY3Rpb25JbmZvCiAKICNpZiBFTkFCTEUoTUVESUFfQ09O
VFJPTFNfQ09OVEVYVF9NRU5VUykKIAotLSAoTlNBcnJheTxVSU1lbnVFbGVtZW50ICo+ICopX3Vp
TWVudUVsZW1lbnRzRm9yTWVkaWFDb250cm9sQ29udGV4dE1lbnVJdGVtczooVmVjdG9yPFdlYkNv
cmU6Ok1lZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW0+JiYpIGl0ZW1zCistIChOU0FycmF5PFVJ
TWVudUVsZW1lbnQgKj4gKilfdWlNZW51RWxlbWVudHNGb3JNZWRpYUNvbnRyb2xDb250ZXh0TWVu
dUl0ZW1zOihWZWN0b3I8V2ViQ29yZTo6TWVkaWFDb250cm9sc0NvbnRleHRNZW51SXRlbT4mJilp
dGVtcwogewogICAgIHJldHVybiBjcmVhdGVOU0FycmF5KGl0ZW1zLCBbJl0gKFdlYkNvcmU6Ok1l
ZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW0mIGl0ZW0pIC0+IFVJTWVudUVsZW1lbnQgKiB7CiAg
ICAgICAgIFVJSW1hZ2UgKmltYWdlID0gIWl0ZW0uaWNvbi5pc0VtcHR5KCkgPyBbVUlJbWFnZSBz
eXN0ZW1JbWFnZU5hbWVkOldURk1vdmUoaXRlbS5pY29uKV0gOiBuaWw7CkBAIC04MzcsMTcgKzgz
NywxOSBAQCAtICh2b2lkKXNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnU6KFdlYkNvcmU6OkZs
b2F0UmVjdCYmKXRhcmdldEZyYW1lIGl0ZW1zOihWZQogICAgIEFTU0VSVCghX21lZGlhQ29udHJv
bHNDb250ZXh0TWVudUNhbGxiYWNrKTsKIAogICAgIFN0cmluZyBtZW51VGl0bGU7CisgICAgVmVj
dG9yPFdlYkNvcmU6Ok1lZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW0+IGl0ZW1zVG9QcmVzZW50
OwogICAgIGlmIChpdGVtcy5zaXplKCkgPT0gMSkgewogICAgICAgICBtZW51VGl0bGUgPSBXVEZN
b3ZlKGl0ZW1zWzBdLnRpdGxlKTsKLSAgICAgICAgaXRlbXMgPSBXVEZNb3ZlKGl0ZW1zWzBdLmNo
aWxkcmVuKTsKLSAgICB9CisgICAgICAgIGl0ZW1zVG9QcmVzZW50ID0gV1RGTW92ZShpdGVtc1sw
XS5jaGlsZHJlbik7CisgICAgfSBlbHNlCisgICAgICAgIGl0ZW1zVG9QcmVzZW50ID0gV1RGTW92
ZShpdGVtcyk7CiAKLSAgICBpZiAoIVtfdmlldyB3aW5kb3ddIHx8IGl0ZW1zLmlzRW1wdHkoKSkg
eworICAgIGlmICghW192aWV3IHdpbmRvd10gfHwgaXRlbXNUb1ByZXNlbnQuaXNFbXB0eSgpKSB7
CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6Ok1lZGlhQ29udHJvbHNDb250ZXh0
TWVudUl0ZW06OmludmFsaWRJRCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBfbWVk
aWFDb250cm9sc0NvbnRleHRNZW51ID0gW1VJTWVudSBtZW51V2l0aFRpdGxlOldURk1vdmUobWVu
dVRpdGxlKSBjaGlsZHJlbjpbc2VsZiBfdWlNZW51RWxlbWVudHNGb3JNZWRpYUNvbnRyb2xDb250
ZXh0TWVudUl0ZW1zOldURk1vdmUoaXRlbXMpXV07CisgICAgX21lZGlhQ29udHJvbHNDb250ZXh0
TWVudSA9IFtVSU1lbnUgbWVudVdpdGhUaXRsZTpXVEZNb3ZlKG1lbnVUaXRsZSkgY2hpbGRyZW46
W3NlbGYgX3VpTWVudUVsZW1lbnRzRm9yTWVkaWFDb250cm9sQ29udGV4dE1lbnVJdGVtczpXVEZN
b3ZlKGl0ZW1zVG9QcmVzZW50KV1dOwogICAgIF9tZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVUYXJn
ZXRGcmFtZSA9IFdURk1vdmUodGFyZ2V0RnJhbWUpOwogICAgIF9tZWRpYUNvbnRyb2xzQ29udGV4
dE1lbnVDYWxsYmFjayA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpOwogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>