1 2006-06-01 Matthias Clasen <mclasen@redhat.com>
4 * glib/gmain.c: Add three new functions,
5 g_main_current_source, g_source_set_funcs and
6 g_source_is_destroyed, that will be necessary to
7 solve thread-safety issues with idles in GTK+.
8 (#321886, Chris Wilson)
10 2006-06-01 Matthias Clasen <mclasen@redhat.com>
12 * glib/giochannel.c (g_io_channel_write_chars): Avoid
13 running in an assertion with small writes. (#343566, Chris
16 * tests/iochannel-test.c: Add a testcase for small writes.
20 * glib/ghash.c: Add g_hash_table_{remove,steal}_all to
21 remove all nodes from a hash table. (#168538, Matt Barnes)
23 2006-06-01 Behdad Esfahbod <behdad@gnome.org>
25 * glib/gkeyfile.c (g_key_file_to_data),
26 (g_key_file_parse_value_as_comment),
27 (g_key_file_parse_comment_as_value):
28 * glib/gscanner.c (g_scanner_get_token_ll): Cleanup. Use return
29 value of g_string_free(...). (#343548, Chris Wilson)
31 2006-05-28 Matthias Clasen <mclasen@redhat.com>
33 * glib/gmarkup.c (g_markup_parse_context_parse):
34 Don't use g_str_has_{prefix,suffix} here.
36 2006-05-28 Matthias Clasen <mclasen@redhat.com>
38 * glib/gmarkup.h: Add a GMarkupParseFlags flag for
39 treating CDATA as text.
41 * glib/gmarkup.c (g_markup_parse_context_parse):
44 2006-05-28 Matthias Clasen <mclasen@redhat.com>
46 * tests/markups/expected-*: Output that test-markup
47 is expected to produce when run on the valid gmarkup
50 * tests/markup-test.c: Only dump the results of the
51 first, unchunked parse, to compare it against the expected
54 * tests/run-markup-tests.sh: For valid examples, compare
55 the output of test-markup against the corresponding
58 2006-05-24 Matthias Clasen <mclasen@redhat.com>
60 * configure.in: Don't compile timeloop on Minix.
61 (Leonard den Ottolander)
63 2006-05-22 Sebastian Wilhelmi <wilhelmi@google.com>
65 * glib/gthread.c (g_thread_init_glib): Run _g_atomic_thread_init
66 as the first of the full fledged initializers to allow the later
67 to potentially use atomic ints (which they currently do
68 not). (#342563, Peter Kjellerstedt)
70 2006-05-16 Matthias Clasen <mclasen@redhat.com>
73 * tests/strtoll-test.c: Add tests for g_ascii_strtoll()
74 and g_ascii_strtoull().
78 * glib/gstrfuncs.c (g_ascii_strtoll): New function to
79 parse signed 64bit integers like strtoll does.
81 * glib/goption.c (parse_int64): Use g_ascii_strtoll(),
82 since strtoll() is C99 and not available on some
83 systems. (#341826, Kazuki Iwamoto)
85 2006-05-15 Matthias Clasen <mclasen@redhat.com>
87 * configure.in: Bump version
89 * === Released 2.11.1 ===
93 2006-05-13 Matthias Clasen <mclasen@redhat.com>
95 * glib/grel.c: Fix several cases of deref-before-NULL-check.
96 (#341191, Pascal Terjan)
100 * glib/goption.c: Allow optional summary and description
101 texts before and after the option descriptions, and add
102 a way to translate them. (#336120, Behdad Esfahbod)
104 2006-05-12 Tor Lillqvist <tml@novell.com>
106 * glib/giowin32.c (g_io_win32_sock_set_flags): Implement
107 setting/clearing G_IO_FLAG_NONBLOCK for channels attached to
109 (g_io_win32_unimpl_set_flags): set_flags method for the
112 2006-05-11 Bastien Nocera <hadess@hadess.net>
114 * glib/goption.c: (parse_int64), (parse_arg), (free_changes_list):
116 * tests/option-test.c: (arg_test6), (main): add an int64 type for
117 GOption (G_OPTION_ARG_INT64) (#341237)
119 2006-05-10 Sebastian Wilhelmi <wilhelmi@google.com>
121 * glib/gthread.h, gthread/gthread-impl.c: Make the magic and
122 location arguments to the error-checking-mutex functions const and
123 do not write to them, as we might not own them. Clean up the
124 error-checking-mutex code quite a bit. (#335198, Chris Wilson)
126 * glib/gthread.c: Use g_atomic_pointer_set instead of old
127 homegrown version now that we have it. (#335198, Chris Wilson)
129 * gthread/gthread-posix.c, gthread/gthread-win32.c: Prevent
130 calling into g_cond_wait resp. g_mutex_lock/unlock directly to
131 avoid recursions into the errorcheking mutex code (and out of
132 principle anyway). (#335198, Chris Wilson)
134 * tests/errorcheck-mutex-test.c: Adapt to GLib coding standards.
136 2006-05-09 Sebastian Wilhelmi <wilhelmi@google.com>
138 * glib/gthreadinit.h: Renamed to glib/gthreadprivate.h and moved
139 system thread identifier comparision and assignment macros from
140 glib/gthread.c to glib/gthreadprivate.h.
142 * glib/Makefile.am, glib/gatomic.c, glib/gconvert.c, glib/gmain.c,
143 glib/gmem.c, glib/gmessages.c, glib/grand.c, glib/gslice.c,
144 glib/gthread.c, glib/gutils.c, gthread/gthread-impl.c: Use
145 glib/gthreadprivate.h instead of glib/gthreadinit.h.
147 * gthread/gthread-impl.c: Use GSystemThread instead of GThread for
148 owner determination. (#311043, jylefort@FreeBSD.org)
150 * tests/Makefile.am, tests/errorcheck-mutex-test: New test program
151 to test for all checked violations.
153 * glib/gprintf.c, glib/gspawn-win32.c, glib/gutf8.c,
154 gthread/gthread-impl.c, gthread/gthread-posix.c,
155 gthread/gthread-win32.c: Use canonical include form for internal
156 headers. config.h is always there.
158 * Remove obsolete gthread/gthread-solaris.c.
160 2006-05-08 Matthias Clasen <mclasen@redhat.com>
162 * tests/convert-test.c (test_one_half): Use encoding names which
163 may work better on Solaris. (#340434, Alessandro Vesely)
165 * tests/keyfile-test.c (test_number): Add some tests for
166 invalid floating point numbers.
168 * glib/gkeyfile.c (g_key_file_parse_value_as_double): Return
169 an error for the empty string. (#339105, Morten Welinder)
171 * glib/gscanner.c (g_scanner_config_template): Make const,
172 noticed by Kjartan Maraas.
174 2006-05-06 Matthias Clasen <mclasen@redhat.com>
176 * glib/gkeyfile.c (g_key_file_set_string_list)
177 (g_key_file_set_locale_string_list): Fix invalid memory
178 reads. (#340816, Nick Treleaven)
180 2006-05-04 Alexander Larsson <alexl@redhat.com>
182 * glib/gbase64.c: (g_base64_decode_step):
183 Fix OOB write (#340538)
185 2006-05-03 Matthias Clasen <mclasen@redhat.com>
187 * tests/base64-test.c: Add some more tests.
189 * glib/gbase64.c (g_base64_decode_step): Avoid writing
190 beyond the guaranteed lenght of the output buffer, if
193 * tests/base64-test.c (test_incremental): Use malloced memory
194 instead of stack-allocated, so that MALLOC_CHECK_=2 catches
197 * glib/gbookmarkfile.c (g_bookmark_file_load_from_data): Remove
198 an overzealous return_if_fail check that causes make check to
201 2006-05-02 Matthias Clasen <mclasen@redhat.com>
203 * configure.in: Bump version
205 * === Released 2.11.0 ===
210 * tests/casefold.txt: Regenerate from Unicode 5.0 data.
212 * glib/guniprop.c: Make interval_compare static.
214 Tue May 2 15:00:00 2006 Tim Janik <timj@gtk.org>
216 * tests/gobject/deftype.c: added test code from Behdad Esfahbod,
219 Tue May 2 14:18:25 2006 Tim Janik <timj@gtk.org>
221 * glib/goption.c (g_option_context_parse): fixed leak in short
222 option parsing. rewrote parts of the code to be more concise to
223 enhance readability. fixed exaggerated uses of strlen.
225 2006-04-28 Behdad Esfahbod <behdad@gnome.org>
227 * glib/guniprop.c: #include <stdlib.h>
229 2006-04-27 Matthias Clasen <mclasen@redhat.com>
231 * glib/glib.symbols: Add g_unichar_iswide_cjk.
232 * glib/guniprop.c: Add a "Since: 2.12".
236 2006-04-27 Behdad Esfahbod <behdad@gnome.org>
238 * docs/reference/glib/glib-sections.txt,
239 * glib/gunicode.h glib/guniprop.c: Implement g_unichar_iswide_cjk().
242 2006-04-27 Matthias Clasen <mclasen@redhat.com>
244 * glib/gbookmarkfile.c (g_bookmark_file_set_description)
245 (g_bookmark_file_set_title, g_bookmark_file_set_icon):
246 Remove some special-casing of empty string which led to
247 dangling pointers. (#339337, Morten Welinder)
248 (expand_exec_line): Don't use printf() needlessly, handle
249 trailing '%' gracefully. (#339338, Morten Welinder)
250 (is_element_full): Silence the compiler.
251 (g_bookmark_file_dump, bookmark_metadata_dump):
252 (bookmark_app_info_dump): Escape strings before dumping
253 them in xml. (#339340, Morten Welinder)
255 2006-04-27 Behdad Esfahbod <behdad@gnome.org>
257 * glib/gunibreak.h, glib/gunichartables.h: Regenerated using
258 Unicode Character Database 5.0 beta.
260 2006-04-26 Matthias Clasen <mclasen@redhat.com>
262 * glib/grand.c (g_rand_new): Don't repeat a failed fclose()
263 call, since that invokes undefined behaviour. (Coverity)
265 2006-04-25 Matthias Clasen <mclasen@redhat.com>
267 * glib/gbookmarkfile.c (is_element_full): Avoid a possible
268 NULL dereference (found by Coverity), also avoid some
271 * tests/keyfile-test.c (test_comments): Add a test for
274 * glib/gkeyfile.c (g_key_file_lookup_group_node): Remove
276 (g_key_file_get_group_comment): Don't dereference before
277 checking for NULL. (#338572, Coverity, Pascal Terjan)
279 2006-04-19 Matthias Clasen <mclasen@redhat.com>
281 * glib/gdataset.c: Add some missing Since: 2.8 tags.
283 2006-04-19 Tor Lillqvist <tml@novell.com>
285 * glib/gatomic.c: Adapt to the changed prototype of
286 InterlockedCompareExchange() in newer SDKs. Use
287 InterlockedCompareExchangePointer() when applicable. (#155884,
290 2006-04-18 Matthias Clasen <mclasen@redhat.com>
294 * glib/gkeyfile.c: Add api to get and set doubles and
295 lists of doubles. (#164719, Maurizio Monge, Dom Lachowicz)
297 * tests/keyfile-test.c: Add tests for new api.
299 * glib/gkeyfile.c (g_key_file_add_group): Accept duplicate
300 groups. (#157877, Sebastien Bacher)
302 * tests/keyfile-test.c: Add tests for duplicate key and
303 duplicate group handling.
305 2006-04-17 Matthias Clasen <mclasen@redhat.com>
307 * glib/gcompletion.c (g_completion_complete_utf8): Make passing
308 NULL for new_prefix work as documented. (#338845, Yevgen Muntyan)
310 * tests/completion-test.c: Test that passing NULL for
311 new_prefix in g_completion_complete_utf8 works.
313 2006-04-17 Kjartan Maraas <kmaraas@gnome.org>
315 * configure.in: Remove obsolete entry for no_NO.
316 * po/no.po: And the translation.
318 2006-04-16 Matthias Clasen <mclasen@redhat.com>
320 * glib/gdate.c (g_date_fill_parse_tokens): Avoid an array
321 overrun. (Coverity, fix by Pascal Terjan)
323 2006-04-12 Bastien Nocera <hadess@hadess.net>
325 reviewed by: Matthias Clasen <mclasen@redhat.com>
327 * glib/gconvert.c: add more details about which RFC is concerned
328 when using g_filename_to_uri (#337553)
330 2006-04-12 Matthias Clasen <mclasen@redhat.com>
332 * glib/goption.c (parse_arg): Add an assert to make it
333 clear when value can be NULL.
335 2006-04-07 Martyn Russell <martyn@imendio.com>
337 * tests/threadpool-test.c: (test_thread_stop_unused): Removed an
338 assertion which can fail and is not a critical test.
340 2006-04-07 Hans Breuer <hans@breuer.org>
342 * glib/makefile.msc.in : added gbase64.obj and derive the static libs
343 name from auto* variables
344 * glib/makefile.msc.in : link user32.lib for MessageBox()
346 2006-04-07 Martyn Russell <martyn@imendio.com>
348 * glib/gasyncqueue.[ch]: Added private API
349 _g_async_queue_get_mutex so that g_thread_pool_free() can use the
352 * glib/gthreadpool.c: Make sure
353 g_thread_pool_stop_unused_threads() actually stops unused threads
354 and global limits (like max idle time and max unused threads) can
355 be set without creating a thread pool first. Fixed #335215 (patch
358 * tests/threadpool-test.c: Added two new tests, tests setting
359 global limits before creating a thread pool. The second test
360 makes sure unused threads are actually stopped when using the
361 g_thread_pool_stop_unused_threads().
363 2006-04-05 Matthias Clasen <mclasen@redhat.com>
365 * glib/gnulib/vasnprintf.c (vasnprintf): Make
366 long long printing work if snprintf is not
367 available. (#332841, Michael McDonald)
369 2006-04-05 Behdad Esfahbod <behdad@gnome.org>
371 * tests/option-test.c: Check the return value of g_get_prgname for
372 NULL before passing to strcmp.
374 * tests/slice-test.c: Report the correct name in Usage summary.
376 2006-04-05 Matthias Clasen <mclasen@redhat.com>
378 * tests/run-collate-tests.sh: Fix up shell script.
380 * tests/option-test.c (arg_test5): Skip the test if
381 setting the locale fails.
382 (empty_test1): Reset prgname before the test.
384 * tests/Makefile.am: Arrange for run-bookmark-test.sh
385 to be run by make check.
387 * tests/utf8-pointer.c:
388 * tests/tree-test.c: Silence warnings.
390 2006-04-04 Matthias Clasen <mclasen@redhat.com>
393 * glib/gbase64.[hc]: Add G_GNUC_MALLOC where
394 appropriate, use glib types.
396 2006-04-04 Alexander Larsson <alexl@redhat.com>
401 Add base64 encode/decode functions
407 * tests/base64-test.c:
408 Tests for base64 functions
410 2006-04-04 Matthias Clasen <mclasen@redhat.com>
412 * glib/gdate.c: Move short_month_names and long_month_names
415 * glib/gspawn-win32.c (g_spawn_error_quark):
416 * glib/gspawn.c (g_spawn_error_quark):
417 * glib/gshell.c (g_shell_error_quark):
418 * glib/gmarkup.c (g_markup_error_quark):
419 * glib/goption.c (g_option_error_quark):
420 * glib/gkeyfile.c (g_key_file_error_quark):
421 * glib/giochannel.c (g_io_channel_error_quark):
422 * glib/gfileutils.c (g_file_error_quark):
423 * glib/gconvert.c (g_convert_error_quark):
424 * glib/gbookmarkfile.c (g_bookmark_file_error_quark):
425 * glib/gthread.c (g_thread_error_quark): No point in making
426 the error path fast by caching quarks.
428 * glib/gbookmarkfile.c: Make the parser struct const.
430 2006-04-04 Behdad Esfahbod <behdad@gnome.org>
432 * glib/gbookmarkfile.c: Fix accidentally broken build.
434 2006-04-03 Matthias Clasen <mclasen@redhat.com>
436 * glib/gbookmarkfile.c: Don't include sys/time.h (#337027,
439 2006-03-31 Tor Lillqvist <tml@novell.com>
441 * glib/gstdio.c (g_remove): Revert change below. It wasn't a good
442 idea after all, says the original bug reporter. See bug for
445 2006-03-30 Tor Lillqvist <tml@novell.com>
447 * glib/gstdio.c (g_remove): [Win32] call rmdir() only if remove()
448 fails with errno set to ENOENT, to leave errno set to EACCESS if
449 that is the problem. (#334799, Yevgen Muntyan)
451 2006-03-30 Matthias Clasen <mclasen@redhat.com>
453 * glib/gbookmarkfile.c (g_bookmark_file_get_app_info): Sync
454 the parameter names with the .h files, otherwise gtk-doc
457 2006-03-27 Emmanuele Bassi <ebassi@cvs.gnome.org>
459 * tests/.cvsignore: Add bookmarkfile-test to the ignored files.
461 2006-03-27 Emmanuele Bassi <ebassi@cvs.gnome.org>
464 * tests/bookmarkfile-test.c:
465 * tests/run-bookmark-test.sh:
466 * tests/bookmarks/*.xbel: Add test suite for GBookmarkFile.
468 2006-03-27 Emmanuele Bassi <ebassi@cvs.gnome.org>
470 * docs/reference/glib/glib-docs.sgml:
471 * docs/reference/glib/glib-sections.txt:
472 * docs/reference/glib/tmpl/bookmarkfile.sgml: Add documentation for
473 GBookmarkFile to GLib's reference guide.
475 2006-03-27 Emmanuele Bassi <ebassi@cvs.gnome.org>
478 * glib/gbookmarkfile.h
479 * glib/gbookmarkfile.c: Add GBookmarkFile, a parser for files
480 containing bookmarks stored using the Desktop Bookmark
481 specification. Fixes bug #327662.
485 * glib/makefile.msc.in:
486 * glib/makefile.mingw.in: Build glue for GBookmarkFile.
488 2006-03-27 Dom Lachowicz <cinamod@hotmail.com>
490 * tests/option-test.c: Copy-and-paste error slipped into test5. Enable
491 test5, as per Matthias' comments in bug 329548#c11.
493 Change a gboolean to an int. Fixes bug #329789.
495 * configure.in: Bump version number to 2.11.0
497 2006-03-27 Matthias Clasen <mclasen@redhat.com>
499 Add support for floating point numbers to goption.
500 (#329548, Behdad Esfahbod, patch by Antoine Dopffer and
504 * glib/goption.c: Support double arguments.
506 * tests/option-test.c: Test double arguments.`
508 2006-03-26 Matthias Clasen <mclasen@redhat.com>
510 * glib/goption.c (g_option_context_new): Improve the description
511 of parameter_string in the docs. (#336085, Claudio Saavedra)
513 2006-03-24 Martyn Russell <martyn@imendio.com>
515 * glib/gthreadpool.c: Updated the documentation to explain that
516 when the maximum threads is > 1 the sort functionality is not 100%
517 accurate due to the ramdom nature of the scheduler choosing which
518 threads to execute. Fixes bug #334943.
520 * tests/threadpool-test.c: Disabled the debugging by default and
521 fixed the sort test to set the maximum threads to 1 to guarantee
522 the thread entry function is called in order.
524 2006-03-23 Matthias Clasen <mclasen@redhat.com>
526 === Branch for 2.10 ===