The memory leak was introduced by a commit ba68eda59 to use
av_packet_alloc because av_init_packet got deprecated.
Also removes a boolean flag `new_packet` and use the pointer `packet`,
which is introduced by ba68eda59, to indicate there is a new packet.
Co-authored-by: Norihiro Kamae <norihiro@nagater.net>
This reverts commit 90a409fe58.
Reverts #7077 for now. This really shouldn't be done so close to
release. This crash technically only happens under very niche scenarios,
and the fix seems to have some other potential issues. Prematurely
merged by Jim.
Qt translation strings use the full English string as an identifier,
rather than a standardised key. Meanwhile, .ini files aren't designed
for keys with spaces, so a translation string for "Restore Defaults"
won't match unless the ini line is
"Restore Defaults"="Defaults"
which is inconsistent, unpleasant and harder to read.
Setting a QStyle resets the color palette. This is unhelpful when a few
lines before that we set a new palette. In theory the setStyle call
could just be moved up, but we don't need to since we always set the
same style so there's no reason to call it multiple times.
If the user just reselects the theme they're already on, we shouldn't
set it again, as setting a theme always introduces issues (that are
especially visible on macOS and Linux).
Parentheses are needed due to operator precedence (although the previous
code happened to work because POLLIN has the value 1).
Fixes: 91f986ec99 ("linux-v4l2: Check udev fd events")
Plugins are expected to be in the .plugin bundle format. We do not want
to encourage usage of the old .so format, this is only kept at all for
backwards compatibility with existing plugins.
This crash is suspected to be a QT bug that happens in 6.2.4, as
it only happens in this version. This is the QT version that is in
the Ubuntu 22.04 ppa, so this fix is a necessary evil as it affects
Ubuntu users.
This fixes the crash by deferring the hiding of the audio mixer
item to the next event loop.
Users with AMD CPUs and Intel dGPUs (Arc) would find that QSV is
restricted to 1200p and missing features due to to this check failing.
Once the encoder gets rewritten for AV1 support we will fix this
properly.
udev_event_thread calls poll with two fds: the udev fd, and an eventfd
used for shutdown. On FreeBSD we were hanging on shutdown in
udev_monitor_receive_device after receiving the eventfd event.
Now, if the udev fd reports no events skip the
udev_monitor_receive_device call.
At shutdown the loop will exit via os_event_try().
Previously FreeBSD had an optional port that installed /etc/os-release
so it was already available on many FreeBSD systems, but os-release is
now provided by the base system and will be universally available.