Commit Graph

22 Commits

Author SHA1 Message Date
Chris Wilson
033e54e8a4 Track whether the last key=value pair in a group is a blank line and
2007-03-22  Chris Wilson  <chris@chris-wilson.co.uk>

	* glib/gkeyfile.c: Track whether the last key=value pair in a group
	is a blank line and during to_data() only insert a new blank line
	betweens group in its absence. This allows the beautification of the
	GKeyFile and prevents newlines being inserted indefinitely. (#420686)

	* tests/keyfile-test.c (test_reload_idempotency): Test that after a 
	single beautification pass, g_key_file_to_data() does not alter its
	input data.


svn path=/trunk/; revision=5431
2007-03-22 08:58:59 +00:00
Matthias Clasen
38b9221961 Rework the handling of invalid keys/groups again. We are back to being
2007-01-12  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c: Rework the handling of invalid
        keys/groups again. We are back to being liberal about
        what we accept, and only reject things that would lead
        to non-rereadable keyfiles.

        * tests/keyfile-test.c: Adapt tests.



svn path=/trunk/; revision=5254
2007-01-12 20:25:57 +00:00
Matthias Clasen
01f78fa7f5 Accept '/', '+' and '.' in key names, since gnome-vfs uses mime types as
2006-12-19  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c (g_key_file_is_key_name): Accept
        '/', '+' and '.' in key names, since gnome-vfs uses
        mime types as keys in some cache.

2
2006-12-19 21:08:32 +00:00
Matthias Clasen
52ef9438ca Accept '@' in locale names.
2006-12-18  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c: Accept '@' in locale names.
2006-12-18 14:13:34 +00:00
Matthias Clasen
6b52690bb5 Tighten up the check for allowed key and group names. (#343191, Tommi
2006-12-18  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c: Tighten up the check for allowed
        key and group names.  (#343191, Tommi Komulainen)

        * tests/keyfile-test.c: Test handling of key and group names.
2006-12-18 07:29:56 +00:00
Matthias Clasen
966872d789 If the group is already there, make it current. (#385910, Joe Halliwell)
2006-12-14  Matthias Clasen  <mclasen@redhat.com>

        * glib/gkeyfile.c (g_key_file_add_group): If the group
        is already there, make it current.  (#385910, Joe Halliwell)

        * tests/keyfile-test.c: Add a test for duplicate groups/keys.
2006-12-14 23:19:28 +00:00
Matthias Clasen
eda3af5546 Add some tests for invalid floating point numbers.
2006-05-08  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c (test_number): Add some tests for
	invalid floating point numbers.
2006-05-08 16:48:47 +00:00
Matthias Clasen
2ce08609db Add a test for the previous change.
2006-04-25  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c (test_comments): Add a test for
	the previous change.
2006-04-26 03:12:03 +00:00
Matthias Clasen
22ec64756c Add api to get and set doubles and lists of doubles. (#164719, Maurizio
2006-04-18  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.h:
	* glib/glib.symbols:
	* glib/gkeyfile.c: Add api to get and set doubles and
	lists of doubles.  (#164719, Maurizio Monge, Dom Lachowicz)

	* tests/keyfile-test.c: Add tests for new api.
2006-04-19 02:59:37 +00:00
Matthias Clasen
64434acfe1 Accept duplicate groups. (#157877, Sebastien Bacher)
2006-04-18  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c (g_key_file_add_group): Accept duplicate
	groups.  (#157877, Sebastien Bacher)

	* tests/keyfile-test.c: Add tests for duplicate key and
	duplicate group handling.
2006-04-19 02:39:37 +00:00
Matthias Clasen
283d4a73f9 Add bug ref 2005-09-14 18:12:52 +00:00
Matthias Clasen
81719cc164 Add a test for grup names of length 1.
2005-09-14  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c: Add a test for grup names of length 1.

	* glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
	of length 1.  (#316309)
2005-09-14 18:04:53 +00:00
Matthias Clasen
9d6e10125b Don't reverse the order of multiline comments.
2005-07-01  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c (g_key_file_get_key_comment):
	(g_key_file_get_top_comment): Don't reverse the order of multiline
	comments.
	(g_key_file_get_group_comment): Actually get the group comment.

	* tests/keyfile-test.c (test_comments): Test that comments are
	handled properly.  (#309263, Mikael Magnusson)
2005-07-01 18:54:25 +00:00
Matthias Clasen
61b7337092 Test that comments are handled properly. (#309263, Mikael Magnusson)
2005-07-01  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c (test_comments): Test that comments are
	handled properly.  (#309263, Mikael Magnusson)
2005-07-01 15:56:03 +00:00
Matthias Clasen
58f83683e9 Don't leak memory here.
2005-06-23  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c (test_group_remove): Don't leak
	memory here.

	* glib/gkeyfile.c (g_key_file_load_from_data_dirs): Don't
	leak output_path.  (#308546, Kjartan Maraas)
2005-06-23 16:28:55 +00:00
Matthias Clasen
db0d5b6b61 Set LANGUAGE instead of LC_ALL to shield against LANGUAGE being set in the
2005-02-23  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c (test_locale_string): Set LANGUAGE
	instead of LC_ALL to shield against LANGUAGE being set in
	the environment.  (#168311, Suren A. Chilingaryan)
2005-02-24 03:54:42 +00:00
Matthias Clasen
4a2773ee7b Add test case for key removal.
2005-02-01  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c (test_key_remove): Add test case for
	key removal.

	* glib/gkeyfile.c (g_key_file_remove_key): Actually remove
	the key from the list of pairs.  (#165980, David Hoover)
2005-02-02 03:25:00 +00:00
Matthias Clasen
df59e8e19b Add test case for group removal.
2005-02-01  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c (test_group_remove): Add test case for
	group removal.

	* glib/gkeyfile.c (g_key_file_remove_group): Don't segfault
	if the group doesn't exist.  (#165887, Mathias Hasselmann)
2005-02-01 14:10:46 +00:00
Matthias Clasen
396253b84d Some more unit tests.
2005-01-30  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c: Some more unit tests.
2005-01-30 06:33:10 +00:00
Matthias Clasen
3db329a613 Don't interpret leading zeros as octal. The specification requires %f
2005-01-20  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c (g_key_file_parse_value_as_integer): Don't
	interpret leading zeros as octal. The specification requires
	%f parsing, and %f doesn't allow octal.

	* tests/keyfile-test.c: Add some more tests.
2005-01-20 17:16:47 +00:00
Matthias Clasen
9775edea89 Add some more tests.
2005-01-20  Matthias Clasen  <mclasen@redhat.com>

	* tests/keyfile-test.c: Add some more tests.

	* glib/gkeyfile.c (g_key_file_get_keys): Return keys in
	the order found in the file, rather than the opposite.
	(g_key_file_parse_value_as_string): Fix error reporting.
2005-01-20 15:31:55 +00:00
Matthias Clasen
92a710ba28 Accept \r\n as line end. (#163030, Bastian Nocera)
2005-01-19  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c (g_key_file_parse_data): Accept \r\n as
	line end.  (#163030, Bastian Nocera)
	(g_key_file_load_from_data): Make -1 work as a size.

	* tests/keyfile-test.c: Some unit tests for the keyfile
	parser.

	* tests/Makefile.am (test_programs): Add keyfile-test.
2005-01-19 14:14:27 +00:00