| 208 | } |
| 209 | |
| 210 | static DecodeResult |
| 211 | decoder_run_stream_plugin(DecoderBridge &bridge, InputStream &is, |
| 212 | std::unique_lock<Mutex> &lock, |
| 213 | std::string_view suffix, |
| 214 | const DecoderPlugin &plugin) |
| 215 | { |
| 216 | if (!decoder_check_plugin_mime(plugin, is) && |
| 217 | !decoder_check_plugin_suffix(plugin, suffix)) |
| 218 | return DecodeResult::NO_PLUGIN; |
| 219 | |
| 220 | if (plugin.stream_decode == nullptr) |
| 221 | return DecodeResult::NO_STREAM_PLUGIN; |
| 222 | |
| 223 | bridge.Reset(); |
| 224 | |
| 225 | return decoder_stream_decode(plugin, bridge, is, lock); |
| 226 | } |
| 227 | |
| 228 | static DecodeResult |
| 229 | decoder_run_stream_locked(DecoderBridge &bridge, InputStream &is, |
no test coverage detected