AVAudioSessionCaptureDeviceManager should use crossThreadCopy on CaptureDevice list allocated on a background queue.
<rdar://75480589>
Created attachment 423848 [details] Patch
Comment on attachment 423848 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=423848&action=review > Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDevice.h:42 > + AVAudioSessionCaptureDevice isolatedCopy() const; We could try to change it to: AVAudioSessionCaptureDevice isolatedCopy() &&; > Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDevice.mm:61 > + groupId().isolatedCopy(), If we go with isolatedCopy() &&, doing WTFMove(m_persistentId).isolatedCopy(), WTFMove(m_groupId).isolatedCopy() will most probably remove the memory allocation of a new string.
Created attachment 423905 [details] Patch for landing
Comment on attachment 423905 [details] Patch for landing View in context: https://bugs.webkit.org/attachment.cgi?id=423905&action=review > Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDevice.mm:58 > + m_persistentId.isolatedCopy(), WTFMove(m_persistentId) would remove a potential memory allocation. > Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDevice.mm:61 > + m_groupId.isolatedCopy(), Ditto for m_label and m_groupId.
Created attachment 423938 [details] Updated patch for landing
Committed r274819: <https://commits.webkit.org/r274819> All reviewed patches have been landed. Closing bug and clearing flags on attachment 423938 [details].