diff --git a/pkgs/development/libraries/libunique/default.nix b/pkgs/development/libraries/libunique/default.nix index a5adaa9ac179..1bef76836542 100644 --- a/pkgs/development/libraries/libunique/default.nix +++ b/pkgs/development/libraries/libunique/default.nix @@ -13,7 +13,8 @@ stdenv.mkDerivation rec { ./1.1.6-fix-test.patch ./1.1.6-G_CONST_RETURN.patch ./1.1.6-include-terminator.patch - ]; + ] + ++ [ ./gcc7-bug.patch ]; nativeBuildInputs = [ pkgconfig ]; buildInputs = [ glib gtk2 dbus_glib ]; @@ -24,7 +25,7 @@ stdenv.mkDerivation rec { doCheck = true; meta = { - homepage = http://live.gnome.org/LibUnique; + homepage = https://wiki.gnome.org/Attic/LibUnique; description = "A library for writing single instance applications"; license = stdenv.lib.licenses.lgpl21; platforms = stdenv.lib.platforms.linux; diff --git a/pkgs/development/libraries/libunique/gcc7-bug.patch b/pkgs/development/libraries/libunique/gcc7-bug.patch new file mode 100644 index 000000000000..2b0587510bc0 --- /dev/null +++ b/pkgs/development/libraries/libunique/gcc7-bug.patch @@ -0,0 +1,18 @@ +gcc-7 newly detects this class of bugs. +In this particular case it's clear that the inention was +to detect if the string is non-NULL *and* non-empty. + + +diff --git a/unique/uniqueapp.c b/unique/uniqueapp.c +index b40a86c..66a7226 100644 +--- a/unique/uniqueapp.c ++++ b/unique/uniqueapp.c +@@ -176,7 +176,7 @@ set_startup_id (UniqueBackend *backend, + { + gchar *id; + +- if (startup_id && startup_id != '\0') ++ if (startup_id && *startup_id != '\0') + id = g_strdup (startup_id); + else + {