Commit 78054320 authored by David Fuhrmann's avatar David Fuhrmann

macosx: Fix index out of bound crash in open dialog

This happend when multiple audio devices with the same name are
connected.

(cherry picked from commit 60a30462b2524fece671d2463917dd55379b824e)
Signed-off-by: default avatarDavid Fuhrmann <dfuhrmann@videolan.org>
parent 43bb985e
...@@ -236,9 +236,10 @@ static VLCOpen *_o_sharedMainInstance = nil; ...@@ -236,9 +236,10 @@ static VLCOpen *_o_sharedMainInstance = nil;
for (int ivideo = 0; ivideo < deviceCount; ivideo++) { for (int ivideo = 0; ivideo < deviceCount; ivideo++) {
QTCaptureDevice *qtk_device; QTCaptureDevice *qtk_device;
qtk_device = [qtkvideoDevices objectAtIndex:ivideo]; qtk_device = [qtkvideoDevices objectAtIndex:ivideo];
[o_qtk_video_device_pop addItemWithTitle: [qtk_device localizedDisplayName]]; // allow same name for multiple times
[[o_qtk_video_device_pop menu] addItemWithTitle:[qtk_device localizedDisplayName] action:nil keyEquivalent:@""];
if ([[[qtk_device uniqueID]stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] isEqualToString:qtk_currdevice_uid]) if ([[[qtk_device uniqueID] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] isEqualToString:qtk_currdevice_uid])
[o_qtk_video_device_pop selectItemAtIndex:ivideo]; [o_qtk_video_device_pop selectItemAtIndex:ivideo];
} }
} else { } else {
...@@ -258,11 +259,13 @@ static VLCOpen *_o_sharedMainInstance = nil; ...@@ -258,11 +259,13 @@ static VLCOpen *_o_sharedMainInstance = nil;
NSUInteger deviceCount = [qtkaudioDevices count]; NSUInteger deviceCount = [qtkaudioDevices count];
for (int iaudio = 0; iaudio < deviceCount; iaudio++) { for (int iaudio = 0; iaudio < deviceCount; iaudio++) {
QTCaptureDevice *qtkaudio_device; QTCaptureDevice *qtkaudio_device = [qtkaudioDevices objectAtIndex:iaudio];
qtkaudio_device = [qtkaudioDevices objectAtIndex:iaudio];
[o_qtk_audio_device_pop addItemWithTitle: [qtkaudio_device localizedDisplayName]]; // allow same name for multiple times
[o_screen_qtk_audio_pop addItemWithTitle: [qtkaudio_device localizedDisplayName]]; [[o_qtk_audio_device_pop menu] addItemWithTitle:[qtkaudio_device localizedDisplayName] action:nil keyEquivalent:@""];
if ([[[qtkaudio_device uniqueID]stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] isEqualToString:qtkaudio_currdevice_uid]) { [[o_screen_qtk_audio_pop menu] addItemWithTitle:[qtkaudio_device localizedDisplayName] action:nil keyEquivalent:@""];
if ([[[qtkaudio_device uniqueID] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] isEqualToString:qtkaudio_currdevice_uid]) {
[o_qtk_audio_device_pop selectItemAtIndex:iaudio]; [o_qtk_audio_device_pop selectItemAtIndex:iaudio];
[o_screen_qtk_audio_pop selectItemAtIndex:iaudio]; [o_screen_qtk_audio_pop selectItemAtIndex:iaudio];
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment