From b227fa4b0dd8d43cfbdd4b5c22b71b98f1966a94 Mon Sep 17 00:00:00 2001 From: Beingpax Date: Fri, 19 Dec 2025 09:21:38 +0545 Subject: [PATCH] Fix Force unwrapping serviceRegistry! is risky --- VoiceInk/Services/AudioFileTranscriptionManager.swift | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/VoiceInk/Services/AudioFileTranscriptionManager.swift b/VoiceInk/Services/AudioFileTranscriptionManager.swift index 4ae1ecb..f1950a1 100644 --- a/VoiceInk/Services/AudioFileTranscriptionManager.swift +++ b/VoiceInk/Services/AudioFileTranscriptionManager.swift @@ -16,7 +16,6 @@ class AudioTranscriptionManager: ObservableObject { private var currentTask: Task? private let audioProcessor = AudioProcessor() private let logger = Logger(subsystem: "com.prakashjoshipax.voiceink", category: "AudioTranscriptionManager") - private var serviceRegistry: TranscriptionServiceRegistry? enum ProcessingPhase { case idle @@ -60,7 +59,7 @@ class AudioTranscriptionManager: ObservableObject { throw TranscriptionError.noModelSelected } - serviceRegistry = TranscriptionServiceRegistry(whisperState: whisperState, modelsDirectory: whisperState.modelsDirectory) + let serviceRegistry = TranscriptionServiceRegistry(whisperState: whisperState, modelsDirectory: whisperState.modelsDirectory) processingPhase = .processingAudio let samples = try await audioProcessor.processAudioToSamples(url) @@ -80,7 +79,7 @@ class AudioTranscriptionManager: ObservableObject { processingPhase = .transcribing let transcriptionStart = Date() - var text = try await serviceRegistry!.transcribe(audioURL: permanentURL, model: currentModel) + var text = try await serviceRegistry.transcribe(audioURL: permanentURL, model: currentModel) let transcriptionDuration = Date().timeIntervalSince(transcriptionStart) text = TranscriptionOutputFilter.filter(text) text = text.trimmingCharacters(in: .whitespacesAndNewlines)