Changes all string parsers to have a the almost same interface while
also having a proper return value, which indicates success of the
parsing process.
Just recently, I started using g_return_val_if_fail as a brief assertion
checker. It'll also exit the function with a specified return value.
But actually this introduces some weird behavior. It's configurable by
environment variables and it'll print out a log message, if the
expression didn't validate properly. But some of these assertions are
actually ment to be silent.
Using a simple macro makes it simple to structure the assertions and its
return values in a block at the start of a function or anywhere else.
This implies, that memory will only get freed, if the whole test method
is gone through. In case of failure, memory leaks aren't important. But
it's crucial not to fail with a segfault just for an assertion.
Fixes#580
Before, it only did test for `ASSERT_FALSE` both times. So a raw_image
wasn't guaranteed to be a condition to falsify the return.
Using the single field function, will test for both cases.
When using clang, this will create a race condition between
clang/gcc builds. Coveralls will take the first one. As GCC and clang
are counting line coverage differently, coveralls regularly fails.
While running under valgrind, it may take over 30 cycles in the loop to
wait for a running GTestDBus instance. So we have to increase the
waiting time.
Waiting a whole second will change the signal/noise ratio and will only
fail, if there's really a problem with the GTestDBus usage.
And as we're sleeping 500us in every loop, we usually get a super fast
response, too.
-j introduces race conditions, which lets the find -name ... -delete
commands fail, because those can't find specific files, which got
removed in the meantime.
The xctx color field is a full duplicate of the settings logic.
Only logic included in xctx color fields, are the frame colors, which
fall back to the global frame setting. So, this required to handle it
directly in settings.c
We haven't been using libdbus for a while so there is no use to
linking it with the build.
Unfortunately there is still a dependency on it as we depend on the dbus
package to tell us where to put our service files.