If an image source isn't visible there is no point polling for changes
during the time it's hidden as no one will see them. Should the image
be on unreachable media such as an unavailable network share, this
check would cause the graphics thread to periodically stall trying to
detect changes of a non-visible image source.
If the image is modified while it's hidden, the updated file will now
be loaded as soon as the source is made visible - the update timer
intentionally ticks up while hidden.
Partially fixes some of the behavior described in
https://github.com/obsproject/obs-studio/issues/3007, a full fix
likely requires significant changes to support OS-specific file change
notification APIs.
Batch files into clang-format to prevent needless processes. Now its
twice as fast in real time and uses 4x less resources. The old
implementation is also slower (but pretty close to) running a single
invocation of clang-format on all files.
before
time ./formatcode.sh
real 0m3.860s
user 0m20.975s
sys 0m6.694s
after
time ./formatcode.sh
real 0m1.486s
user 0m5.426s
sys 0m0.203s
Since libobs internally rounds to various powers of 2 to support SSE
functions, resolutions that are too low can get rounded to zero. libobs
will fail to startup with a zero resolution, so if a user accidentally
entered anything that rounded to zero OBS would become unusable without
manual fixing by editing the profile .ini.
All strings were treated as partial matches before, which caused a
false positive with any executable beginning with "time", notably
affecting the game "Timelie" which used Timelie.exe.
The files on disk are lower-case but QSS refrences them in
upper-case. Windows doesn't report errors as the platform isn't case
sensitive. Error messages are generated and icons not to render on
case sensitive platforms such as Linux and Mac
As of 3.17 using find_package_handle_standard_args checks that the name
of the FindXXX file and the first argument are the same case.
Some modules used non-standard variables or the old singular variables
instead of plurals. This normalizes variable usage to the new-style.
Some CMakeLists.txt did custom error checking instead of propagating
find_package errors. These were changes to call find_package with
REQUIRED or without QUIET where needed and shortens the custom status
messages. This helps users who want to enable that functionality see
what precisely wasnt found.