mac-avcapture: Avoid possible bad access on device connect events

This commit is contained in:
jcm
2025-11-26 10:59:56 -06:00
committed by Ryan Foster
parent b093030106
commit cc0fd86c05

View File

@@ -1146,22 +1146,15 @@ static const UInt32 kMaxFrameRateRangesInDescription = 10;
return;
}
if (![[device uniqueID] isEqualTo:self.deviceUUID]) {
obs_source_update_properties(self.captureInfo->source);
return;
}
if (self.deviceInput.device) {
[self AVCaptureLog:LOG_INFO withFormat:@"Received connect event with active device '%@' (UUID %@)",
self.deviceInput.device.localizedName, self.deviceInput.device.uniqueID];
obs_source_update_properties(self.captureInfo->source);
return;
}
obs_source_update_properties(self.captureInfo->source);
[self AVCaptureLog:LOG_INFO
withFormat:@"Received connect event for device '%@' (UUID %@)", device.localizedName, device.uniqueID];
if (![[device uniqueID] isEqualTo:self.deviceUUID]) {
return;
}
NSError *error;
NSString *presetName = [OBSAVCapture stringFromSettings:self.captureInfo->settings withSetting:@"preset"];
BOOL isPresetEnabled = obs_data_get_bool(self.captureInfo->settings, "use_preset");