Commit Graph

14 Commits

Author SHA1 Message Date
Matthias Clasen
58dd4814b2 Add and implement a new flag to turn off the automatic <groupname>-
2005-07-12  Matthias Clasen  <mclasen@redhat.com>

	* glib/goption.h (G_OPTION_FLAG_NOALIAS):
	* glib/goption.c: Add and implement a new flag
	to turn off the automatic <groupname>- prefixing
	for conflict resolution of long option names. (#171840,
	Adam McLaurin)

	All optional callback arguments  (#308886, Pawel
	Sliwowski)

	* glib/goption.h (G_OPTION_FLAG_OPTIONAL_ARG):
	* glib/goption.c: Add and implement a new flag
	to indicate that a callback *optionally* takes another
	argument.

	* tests/option-test.c: Add tests for optional arguments.
2005-07-12 18:56:25 +00:00
Matthias Clasen
3a7a096682 Add G_OPTION_FLAG_NO_ARG and G_OPTION_FLAG_FILENAME to allow greater
2005-06-18  Matthias Clasen  <mclasen@redhat.com>

	* glib/goption.h:
	* glib/goption.c: Add G_OPTION_FLAG_NO_ARG and
	G_OPTION_FLAG_FILENAME to allow greater control of
	G_OPTION_ARG_CALLBACK options. (#302632, Dan Winship)

	* tests/option-test.c: test callback args
2005-06-18 04:55:26 +00:00
Matthias Clasen
4c4f106344 Return an error if an option is missing its argument. (#305576, Björn
2005-05-27  Matthias Clasen  <mclasen@redhat.com>

	* glib/goption.c (parse_short_option, parse_long_option):
	Return an error if an option is missing its argument.  (#305576,
	Björn Lindqvist)

	* tests/option-test.c (missing_arg_test): Add a testcase.
2005-05-27 18:30:34 +00:00
Matthias Clasen
6e60dd8489 Add a testcase.
2005-05-06  Matthias Clasen  <mclasen@redhat.com>

	* tests/option-test.c: Add a testcase.

	* glib/goption.c (g_option_context_parse): Treat '-'
	on its own as a non-option argument.  (#168008, Tim Musson,
	Thomas Leonard and others)
2005-05-06 20:10:52 +00:00
Matthias Clasen
348da88e27 Don't write out of bounds.
2005-02-08  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c (g_key_file_parse_value_as_string): Don't
	write out of bounds.

	* glib/goption.c (g_option_context_parse): Fix a
	one-too-short memory allocation.  (#166609, Nicolas Laurent)

	* tests/Makefile.am (TESTS_ENVIRONMENT): Add tests with
	MALLOC_CHECK_.

	* tests/option-test.c: Add a test for unkown short options.
2005-02-08 15:14:31 +00:00
Matthias Clasen
9d8c5bc757 Add some tests for '--' stripping.
2004-12-20  Matthias Clasen  <mclasen@redhat.com>

	* tests/option-test.c: Add some tests for '--'
	stripping.

	* glib/goption.c (g_option_context_parse): Don't
	strip '--' if it would be needed by a second option
	parser.  (#161701)
2004-12-20 21:09:16 +00:00
Matthias Clasen
a9fa61a13e Add tests for the handling of non-option arguments, "--" and
2004-10-29  Matthias Clasen  <mclasen@redhat.com>

	* tests/option-test.c: Add tests for the handling of
	non-option arguments, "--" and G_OPTION_REMAINING.

	* glib/goption.[hc]: #define G_OPTION_REMAINING, which is
	a special long option name, which can be used for an option
	in the main group which collects the non-option arguments.
	It must be of type G_OPTION_ARG_STRING_ARRAY or
	G_OPTION_ARG_FILENAME_ARRAY. If the main group doesn't contain
	an option whose name is G_OPTION_REMAINING, the non-option
	arguments are left behind in argv as before.
2004-10-29 20:19:06 +00:00
Anders Carlsson
9af2838a91 Add check for if argc is 0.
2004-10-05  Anders Carlsson  <andersca@gnome.org>

	* glib/goption.c: (g_option_context_parse):
	Add check for if argc is 0.

	* tests/option-test.c: (empty_test3), (main):
	Add test case.
2004-10-05 20:04:18 +00:00
Anders Carlsson
a515025dee Set arg_data on filenames. (Discovered by Mats-Ola Persson).
2004-10-03  Anders Carlsson  <andersca@gnome.org>

	* glib/goption.c: (parse_arg):
	Set arg_data on filenames. (Discovered by Mats-Ola Persson).

	* tests/option-test.c: (arg_test3), (ignore_test3), (main):
	Add test for filename args.
2004-10-03 19:34:19 +00:00
Matthias Clasen
6aad158c67 Don't call g_set_error () with a NULL format. (#153103, Robert Ögren)
Mon Sep 20 00:17:37 2004  Matthias Clasen  <maclas@gmx.de>

	* tests/option-test.c (error_test3_post_parse):
	* tests/option-test.c (error_test2_post_parse):
	* tests/option-test.c (error_test1_post_parse): Don't call
	g_set_error () with a NULL format.  (#153103, Robert Ögren)
2004-09-20 04:18:40 +00:00
Matthias Clasen
08fe920a50 Make GOption remove long options completely. (#153113, Robert Ögren)
Mon Sep 20 00:13:48 2004  Matthias Clasen  <maclas@gmx.de>

	Make GOption remove long options completely. (#153113, Robert Ögren)

	* glib/goption.c (parse_long_option): Fix a wrong index.

	* tests/option-test.c (ignore_test3): Test handling of unknown
	options some more.
2004-09-20 04:15:38 +00:00
Anders Carlsson
338d949559 Handle option contexts without a main group.
2004-09-01  Anders Carlsson  <andersca@gnome.org>

	* glib/goption.c: (g_option_context_free), (print_help),
	(g_option_context_parse):
	Handle option contexts without a main group.

	* tests/option-test.c: (empty_test2), (main):
	Add test case for that.
2004-09-01 17:31:43 +00:00
Anders Carlsson
11957cabec Set prgname to <unknown> if argc and argv are NULL.
2004-08-30  Anders Carlsson  <andersca@gnome.org>

	* glib/goption.c: (g_option_context_parse):
	Set prgname to <unknown> if argc and argv are NULL.

	* tests/option-test.c: (empty_test1), (main):
	Add test case for that.
2004-08-30 20:40:52 +00:00
Anders Carlsson
deee47edfd Add GOption.
2004-08-02  Anders Carlsson  <andersca@gnome.org>

	* glib/Makefile.am:
	* glib/glib.h:
	* glib/goption.c:
	* glib/goption.h:
	* tests/.cvsignore:
	* tests/Makefile.am:
	* tests/option-test.c:
	Add GOption.
2004-08-02 21:40:40 +00:00