Move ResumeOnce out of closure for Swift compile.

This commit is contained in:
Jos Vooges | STH 2026-09-19 15:51:12 +02:00
parent 77ddc8b6a3
commit 4064406d20

View file

@ -4,6 +4,18 @@ import os.log
private let proxyLog = Logger(subsystem: "nl.vonas.mediacluster.ios", category: "ClearKeyProxy") private let proxyLog = Logger(subsystem: "nl.vonas.mediacluster.ios", category: "ClearKeyProxy")
private final class ResumeOnce: @unchecked Sendable {
private var done = false
private let lock = NSLock()
func run(_ body: () -> Void) {
lock.lock()
defer { lock.unlock() }
guard !done else { return }
done = true
body()
}
}
/// Lokale HTTP-proxy: haalt DASH MPD/segmenten op, strip DRM-metadata, decrypt CENC met ClearKey. /// Lokale HTTP-proxy: haalt DASH MPD/segmenten op, strip DRM-metadata, decrypt CENC met ClearKey.
/// VLC speelt daarna plain DASH vanaf 127.0.0.1. /// VLC speelt daarna plain DASH vanaf 127.0.0.1.
final class ClearKeyDashProxy { final class ClearKeyDashProxy {
@ -45,17 +57,6 @@ final class ClearKeyDashProxy {
self.cryptoState = CencMp4Decryptor.SessionState() self.cryptoState = CencMp4Decryptor.SessionState()
self.generation += 1 self.generation += 1
final class ResumeOnce: @unchecked Sendable {
private var done = false
private let lock = NSLock()
func run(_ body: () -> Void) {
lock.lock()
defer { lock.unlock() }
guard !done else { return }
done = true
body()
}
}
let once = ResumeOnce() let once = ResumeOnce()
do { do {