in Sources/Instrumentation/WKWebView/BodyCache/StreamingMultipartFormData.swift [513:538]
func transitionToNextPhase() -> Bool {
if !Thread.current.isMainThread {
let _ = DispatchQueue.main.sync {
self.transitionToNextPhase()
}
return true
}
switch phase {
case .EncapsulationBoundaryPhase:
phase = .HeaderPhase
case .HeaderPhase:
self.inputStream?.schedule(in: RunLoop.current, forMode: RunLoop.Mode.common)
self.inputStream?.open()
phase = .BodyPhase
case .BodyPhase:
self.inputStream?.close()
phase = .FinalBoundaryPhase
case .FinalBoundaryPhase:
fallthrough
default:
phase = .EncapsulationBoundaryPhase
}
self.phaseReadOffset = 0
return true
}