]> git.cameronkatri.com Git - mandoc.git/blobdiff - test-getsubopt.c
Fix incorrectly swapped labels of left/right arrows; from bentley@.
[mandoc.git] / test-getsubopt.c
index 25e11246e67b1d1ea16448d1e9a04cd443d5e4bb..afcc5599d75f2b5adc49e3be1ca30ac1cea6ccd8 100644 (file)
@@ -1,12 +1,34 @@
+/*     $Id: test-getsubopt.c,v 1.4 2015/10/06 18:32:20 schwarze Exp $  */
+/*
+ * Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
 #if defined(__linux__) || defined(__MINT__)
 #if defined(__linux__) || defined(__MINT__)
-# define _GNU_SOURCE /* getsubopt() */
+#define _GNU_SOURCE /* getsubopt() */
 #endif
 
 #include <stdlib.h>
 
 int
 #endif
 
 #include <stdlib.h>
 
 int
-main(int argc, char **argv)
+main(void)
 {
 {
-       getsubopt(argv, argv, argv);
-       return 0;
+       char buf[] = "k=v";
+       char *options = buf;
+       char token0[] = "k";
+       char *const tokens[] = { token0, NULL };
+       char *value = NULL;
+       return ! (getsubopt(&options, tokens, &value) == 0
+           && value == buf+2 && options == buf+3);
 }
 }