- Dec 17, 2021
-
-
ListView.delayRemove should apply to the delegate, which has id: delegate, and not the root.
-
-
And fix potential data races, that could have become criticial with the new medialibary (more than one samba access in //). Indeed, the SMBCCTX and SMBCFILE were stored statically and fetch from an unique fd without any lock mechanism.
-
- Dec 16, 2021
-
-
-
-
-
-
-
-
-
-
-
-
-
Thomas Guillem authored
-
Thomas Guillem authored
And favor our original VAAPI backend. Fixes #26361
-
Thomas Guillem authored
Fixes #26367
-
- Dec 15, 2021
-
-
-
-
-
This improves the documentation by exposing a C++-idiomatic way to handle the resources without leaking for most users copying this part of the code to their application.
-
C++14 is needed to use std::make_unique<> in particular, and is already a requirement for libvlc anyway.
-
-
Hugo Beauzée-Luyssen authored
Fix #26356
-
...and indeed ignoring them. as per the previous commit, we want to get rid of cat hints from option sets, instead looking up cats from subcats. we have already implemented in the previous commit the lookup mechanism, and started ignoring cat hints from plugins, but still relied upon them from the core set for constructing the base tree (and reacted to them in building core panels). here we adjust the base tree construction code to completely remove our reliance upon cat hints. we also now completely ignore them when building core panels (no difference results from this). we are now in a position to purge the cat items themselves from the entire infrastructure along with all remaining artefacts, though that will be done separately later. note that the macos code needed no such change here, it was taken care of completely in the previous commit.
-
having `set_category()` + `set_subcategory()` pairs of calls to setup the location in the preferences tree where a plugin node needs to be attached to, with corresponding pairs of option records in the plugin option sets, is silly, inefficient and bug prone. all we need is the subcat records and we can look up the corresponding cat from the data table when it comes to time to build the tree. here we take a step forward to address this, adding cat data to the subcat data table, and a lookup function making use of it. note, qt and macos tree construction are done a little differently from each other, so while the change here is entirely sufficient to rid the core option set of category hints as far as the macos code is concerned, more work in a subsequent commit will be needed for qt. thus the purge of `set_category()` must be postponed for a later commit and so for now we must just ignore those records. a subcat table entry was added for `SUBCAT_HIDDEN` since for now the qt code could potentially look this up and we should preserve the existing behaviour for it for now.
-
with respect to plugin vs. module. before we adjust it in the next commit.
-
these 'index-of' helpers find the index for the given cat/subcat. this allows us to de-duplicate the code from the other helper functions (both for those that already exist and ones to be added in further commits). they loop based upon array length rather than looking out for some particular condition of varying properties in an end marker record, allowing us to also drop those. i used an index-of design here rather than have functions that return pointers because there will be a secondary use for index-of helpers in later commits.
-
...to prepare for divergence in the data held for categories vs. subcategories. we replace here the generic helpers: - `config_CategoryNameGet()` - `config_CategoryHelpGet()` with: - `vlc_config_cat_GetName()` - `vlc_config_cat_GetHelp()` - `vlc_config_subcat_GetName()` - `vlc_config_subcat_GetHelp()` the new names conform to the format requested for the `vlc_config_subcat_IsGeneral()` function added in MR 313. opportunity was taken to remove the old style prefixes from the attributes of `config_category_t`, affecting a few additional lines, avoiding introducing inconsistency or new instances of the old style with the addition of `config_subcategory_t`.
-
it is used only to define the structure of `categories_array` which lives in `vlc_config_cat.h`; it belongs next to that.
-
this stuff is used by prefs, and is not even used by help currently.
-
- Dec 14, 2021
-
-
fix #26275
-
-
-
Hugo Beauzée-Luyssen authored
This is a manual backport of https://github.com/protocolbuffers/protobuf/commit/01a05a53f40ca2ac5f0af10c6cc0810bee39b792
-
The test was failing randomly because the decoder was asked to decode more data and its output format was reset to VLC_CODEC_UNKNOWN, which is not an allocatable format for picture_NewFromResource. Abandon the picture allocation in decoder_decoder(dec, picture) callback to let the scenario handle the allocation, and in particular discard it if it already did the test. The new test_finished boolean will force the decoder callback to no-op. It is a bit redundant with the display_opened callback where it could loop doing the update until it is correctly closed but much clearer. I'm not sure yet, but it seems that the easiest method to control the behaviour of the test is to have a custom demux to push data at will. It's adding a lot of code and is trickier to manage so here we fix the test first. Fixes #26374
-
- Dec 13, 2021
-
-
Normally closing a logger should not incur new log messages, but... the early logger does exactly that, and this prevents it from looping infinitely into itself. This situation occurs if no proper logger was installed until the log switch was destroyed. Fixes #26363. This effectively reverts commit e8700cbd.
-
Fixes #22909
-
Thomas Guillem authored
Regression from c9ab8bd8 Fixes #26367
-
- Dec 11, 2021
-
-
Alexandre Janniaux authored
This commit introduces an integration test infrastructure which mocks the external components (filters, decoders, window, display) used by the video pipeline and starts this pipeline using the usual input item properties and player. The test will spawn an interface to have an initial vlc_object_t without going though the private layers of libvlc (avoiding casting the instance to private type, etc), so as to avoid encouraging code using such casts. It uses this infrastructure to prevent regression from the ticket #26345. By ensuring that the second failed decoder update won't crash, we can check that an already started vout won't lead to double-join/free like it was fixed in a7c99d05. The test itself will later be extended to add more sensible cases.
-