From 10b294d85b13b64bd3293174eca6fb1cca210a12 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 12 Jul 2020 21:17:03 +0200 Subject: [PATCH] Media Kit: use the B_WRITABLE flag in plugins The ffmpeg plugin reports some formats as read-only. But the media kit included them in the list of writable formats anyway. --- src/kits/media/AddOnManager.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/kits/media/AddOnManager.cpp b/src/kits/media/AddOnManager.cpp index 8ef6228005..c050d349b7 100644 --- a/src/kits/media/AddOnManager.cpp +++ b/src/kits/media/AddOnManager.cpp @@ -519,9 +519,13 @@ AddOnManager::_RegisterWriter(WriterPlugin* writer, const entry_ref& ref) return; } for (uint i = 0 ; i < count ; i++) { + media_file_format fileFormat = fileFormats[i]; + // Ignore non-writable formats + if ((fileFormat.capabilities & media_file_format::B_WRITABLE) == 0) + continue; + // Generate a proper ID before inserting this format, this encodes // the specific plugin in the media_file_format. - media_file_format fileFormat = fileFormats[i]; fileFormat.id.node = ref.directory; fileFormat.id.device = ref.device; fileFormat.id.internal_id = info.internalID;