insteda to rtsp_state::rtsp_error_occurred, the error was printed to
some place of stack (the address of `s` variable on stack plus offset
of that attribute).
\+ added magic value to ensure
The printout includes pointer, which was at the time of writting supposed
to be 32, in which case the line length was:
2 /* 0x */ + 8 /* ptr */ + 1 /* : */ + 3 * 16 /* " XX" */ + 16 /* char repr */ + 5 /* additiona separators */ + 1 /* NL */ = 81
(separators - 2 betweeh group of hexa and char repre, 3 between hexa and char represenatation)
With 64 bit pinters, it can be at most 89 bytes. To keep the old length,
removed one space between every pair of hexadecimal byte representation -
it is still good legible, compatibile with xxd, still keeping the 80
long line..
Fixed correctly the problem that was incorrectly attempted by the
previous commit revert. should_exit doesn't need to be checked with the
main while loop because it is done by the inner one.
Together with the previous revert commit fixes CID 464437.
In addition to incorrect change to unsigned, also parenthesis around
(height - 1) were missing.
Some macs doesn't have Monaco.ttf, in which case Keyboard.ttf is usually
selected, which is not monospace and doesn't have a symbol for ':'.
The mac, where Monaco.ttf is missing usually have Monaco.dfont, that
can be directly used, so added it to font_candidates.
just a default value
Actually, not much is influenced by that change, since it has been 5 (by
default) and the version 6 keeps v5 API, so that the entrypoint remains
`const NDIlib_v5* NDIlib_v5_load(void);` (not 6).
Only functional change is updated fallback path in MSW.
Do not call dlerror() second time - the function actually clears the
error status, so that the second call returns NULL (printing with '%s'
is actually UB).
Fix the commit ab794ce70 (2023-11-23) that fixed (incorrectly) the
CID 424197.
If should_exit was set before waiting in pthread_cond_timedwait, the
infinite loop is never left. Moreover, it seems that the loop was left
only on should_exit timeout, not when notified by condition variable.
This is mostly to make Coverity happy - the spurious wakeup here does
not matter in any way. So reverting the original "fix" would be enough.
The pointer ifa_addr in struct ifaddrs can be NULL and indeed it occurs
(perhaps with interfaces without assigned addrs?). Steps to reproduce:
```
uv -x sdp -t testcard -c lavc:subs=420
````
Since the function can be called from the signal handler, there must
not be any call to signal unsafe function (see signal-safety(7)).
Actually, this is not just a fix of a possible problem but it caused
activelly problems within the reflector when 2 signals were raised one
shortly after anotner. Was stuck at following (snippet):
```
std::unique_lock<std::mutex>::unique_lock(std::mutex&) at /usr/include/c++/14.1.1/bits/unique_lock.h:74
(inlined by) state_root::broadcast_should_exit() at /home/martin/Projects/ultragrid/src/host.cpp:533
exit_uv at /home/martin/Projects/ultragrid/src/host.cpp:587
signal_handler(int) at /home/martin/Projects/ultragrid/src/hd-rum-translator/hd-rum-translator.cpp:219
```
the message: `Error: No such keg: /opt/homebrew/Cellar/asciidoctor`
is now print on stderr, which disturbs GitHub CI (complains about it in
action summary annotations; just a warning).
`
Latest MSVS 2022 17.10.34928.147 (MSVC v14.40.33807) in GH runner
20240603.1.0) is no longer compatible with CUDA 11.8.0.52206. CUDA refuses
to compile because of unsupported compiler. Previous version 17.9.34902.65
(GH runner 20240514.3.0) was OK.
As MSVS 2022 is supported by CUDA 11.8 in general, we can pass
-allow-unsupported-compiler flag.
Previously the --conference-compression parameter would only work for
automatic output ports (sending back to participants who are sending to
us), while the hosts explicitely specified on cmdline would default to
packet reflecting mode (and not receive the mixed video).
If using transcoding reflector, eg.:
`hd-rum-transcode 8M 5004 -c libavcodec -P 6004 100:1`
pipe is used, which advertised VC_NONE, for which assertion at the
beginning of get_pixfmt_desc() failed.
The GitHub actions now complain if trying to install a formula, that is
already installed, eg:
```
run macOS (macos-14)
pkg-config 0.29.2_3 is already installed and up-to-date. To reinstall 0.29.2_3, run: brew reinstall pkg-config
```
As a workaround, install just the formulas, that are not already
installed.
This caused occasional crashes on M1 Mac Pro with `uv --capabilities`
(also in macos-14 arm64 GH runner). This was most likely caused by the
callback being run just after the audio state has been destroyed.
Moved metadata housekeeping to store_metadata() and removed the
assert. The idea is to prevent crashes on assert when some encode fails.
In some malicous case (eg. when the latency is higg), the metadata can be
now released prior to restoring, so print at least a warning about that.