about summary refs log tree commit diff
path: root/lib/strings.nix
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2018-08-12 10:17:08 +0200
committerVladimír Čunát <vcunat@gmail.com>2018-08-12 10:17:08 +0200
commitfecb444e18c2d655d7de4253047e664873b42cf4 (patch)
tree388da492e6f2872434b7370fcc00666fec45ed38 /lib/strings.nix
parent50674becf6fc5a1438fa158e519d7e7ee11c6d83 (diff)
downloadnixlib-fecb444e18c2d655d7de4253047e664873b42cf4.tar
nixlib-fecb444e18c2d655d7de4253047e664873b42cf4.tar.gz
nixlib-fecb444e18c2d655d7de4253047e664873b42cf4.tar.bz2
nixlib-fecb444e18c2d655d7de4253047e664873b42cf4.tar.lz
nixlib-fecb444e18c2d655d7de4253047e664873b42cf4.tar.xz
nixlib-fecb444e18c2d655d7de4253047e664873b42cf4.tar.zst
nixlib-fecb444e18c2d655d7de4253047e664873b42cf4.zip
lib/strings: guard against an easy mistake
This would catch the bad `fwknop` flags fixed in 580cab57e4,
during evaluation already.
Diffstat (limited to 'lib/strings.nix')
-rw-r--r--lib/strings.nix8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/strings.nix b/lib/strings.nix
index 7cd09a109396..1dba455628df 100644
--- a/lib/strings.nix
+++ b/lib/strings.nix
@@ -412,7 +412,9 @@ rec {
        enableFeature false "shared"
        => "--disable-shared"
   */
-  enableFeature = enable: feat: "--${if enable then "enable" else "disable"}-${feat}";
+  enableFeature = enable: feat:
+    assert isString feat; # e.g. passing openssl instead of "openssl"
+    "--${if enable then "enable" else "disable"}-${feat}";
 
   /* Create an --{enable-<feat>=<value>,disable-<feat>} string that can be passed to
      standard GNU Autoconf scripts.
@@ -434,7 +436,9 @@ rec {
        withFeature false "shared"
        => "--without-shared"
   */
-  withFeature = with_: feat: "--${if with_ then "with" else "without"}-${feat}";
+  withFeature = with_: feat:
+    assert isString feat; # e.g. passing openssl instead of "openssl"
+    "--${if with_ then "with" else "without"}-${feat}";
 
   /* Create an --{with-<feat>=<value>,without-<feat>} string that can be passed to
      standard GNU Autoconf scripts.