If another instance of calls was already running, invoking calls with
`-v` flag would set the verbosity for the newly created process and then
exit if it was not the primary instance.
IPv4 keeps working through the magic of IPv4 mapped IPv6 addresses.
Without this change errors about invalid address family will be raised
when trying to connect to a IPv6 host.
Bail out! CallsSipMediaPipeline-FATAL-WARNING: Error on the message bus: Could not get/set settings from/on resource. (../gst/udp/gstmultiudpsink.c(1228): gst_multiudpsink_configure_client (): /GstPipeline:media-pipeline/GstUDPSink:rtcp-udp-sink:
Invalid address family (got 10))
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1019292
Copied from libfeedback as of 2e081602f627505e566cc0bdb6cd96c7642d8b65
and adjusted for our mocking needs.
The mocked library will be LD_PRELOADED for the moment,
but further changes to the build should allow us to simply link
to it in the future.
This will get removed soon while refactoring the ringer as cancelling
the async methods would not guarantee that the requested operation would
not be performed.
It could actually already be started (e.g. starting or stopping the
feedback), but we have not yet received the reply, so it was always a
bit flaky.
Mostly updating of dependencies.
Notable changes:
- Build abseil with position independent code
- Drop patch for libphonenumber and use -DREGENERATE_METADATA=OFF
instead to drop the java build dependency
- Drop gstreamer as it's included in the runtime already
- Drop cmocka as we're about to drop it's usage completely anyway
If calls was already running as a daemon it and were invoked again with
`--daemon` it ended up showing the UI.
Now we always set the `daemon` variable and simplify activation logic as
a side effect.
Fixes#500
Leave the LfbEvent self->event alive in dispose()
to give potentially pending GAsyncReadyCallback invocations
or running GSources a better chance of finishing gracefully.
This greatly simplifies the post install script. As this functionality
depends on newer meson (0.59.0) it is guarded by a version check.
Distributions usually use their own tooling so it's does not matter if
they don't run the postinstall scripts (e.g. because of using too old
meson)