1580606fcd6d0bd843c2648a4f2b7d4c9cb02da5
[platform/upstream/glib.git] / ChangeLog.pre-2-12
1 2006-06-01  Matthias Clasen  <mclasen@redhat.com>
2
3         * glib/glib.symbols:
4         * glib/gmain.h: 
5         * glib/gmain.c: Add two new functions, 
6         g_source_set_funcs and g_source_is_destroyed,
7         that will be necessary to solve thread-safety
8         issues with idles in GTK+.  (#321886, Chris Wilson)
9
10 2006-06-01  Matthias Clasen  <mclasen@redhat.com>
11
12         * glib/giochannel.c (g_io_channel_write_chars): Avoid
13         running in an assertion with small writes.  (#343566, Chris
14         Wilson)
15
16         * tests/iochannel-test.c: Add a testcase for small writes.
17
18         * glib/glib.symbols: 
19         * glib/ghash.h: 
20         * glib/ghash.c: Add g_hash_table_{remove,steal}_all to
21         remove all nodes from a hash table.  (#168538, Matt Barnes)
22
23 2006-06-01  Behdad Esfahbod  <behdad@gnome.org>
24
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)
30
31 2006-05-28  Matthias Clasen  <mclasen@redhat.com>
32
33         * glib/gmarkup.c (g_markup_parse_context_parse): 
34         Don't use g_str_has_{prefix,suffix} here.
35
36 2006-05-28  Matthias Clasen  <mclasen@redhat.com>
37
38         * glib/gmarkup.h: Add a GMarkupParseFlags flag for
39         treating CDATA as text. 
40
41         * glib/gmarkup.c (g_markup_parse_context_parse): 
42         Implement it here.
43
44 2006-05-28  Matthias Clasen  <mclasen@redhat.com>
45
46         * tests/markups/expected-*: Output that test-markup
47         is expected to produce when run on the valid gmarkup 
48         examples.
49
50         * tests/markup-test.c: Only dump the results of the
51         first, unchunked parse, to compare it against the expected
52         output. 
53
54         * tests/run-markup-tests.sh: For valid examples, compare
55         the output of test-markup against the corresponding
56         expected-<n> file.
57         
58 2006-05-24  Matthias Clasen  <mclasen@redhat.com>
59
60         * configure.in: Don't compile timeloop on Minix. 
61         (Leonard den Ottolander)
62
63 2006-05-22  Sebastian Wilhelmi  <wilhelmi@google.com>
64
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)
69
70 2006-05-16  Matthias Clasen  <mclasen@redhat.com>
71
72         * tests/Makefile.am: 
73         * tests/strtoll-test.c: Add tests for g_ascii_strtoll()
74         and g_ascii_strtoull().
75
76         * glib/glib.symbols:
77         * glib/gstrfuncs.h: 
78         * glib/gstrfuncs.c (g_ascii_strtoll): New function to
79         parse signed 64bit integers like strtoll does.  
80
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)
84
85 2006-05-15  Matthias Clasen  <mclasen@redhat.com>
86         
87         * configure.in: Bump version
88
89         * === Released 2.11.1 ===
90
91         * NEWS: Updates
92
93 2006-05-13  Matthias Clasen  <mclasen@redhat.com>
94
95         * glib/grel.c: Fix several cases of deref-before-NULL-check.
96         (#341191, Pascal Terjan)
97
98         * glib/glib.symbols: 
99         * glib/goption.h: 
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)
103
104 2006-05-12  Tor Lillqvist  <tml@novell.com>
105
106         * glib/giowin32.c (g_io_win32_sock_set_flags): Implement
107         setting/clearing G_IO_FLAG_NONBLOCK for channels attached to
108         sockets. (#341192)
109         (g_io_win32_unimpl_set_flags): set_flags method for the
110         unimplemented case.
111         
112 2006-05-11  Bastien Nocera  <hadess@hadess.net>
113
114         * glib/goption.c: (parse_int64), (parse_arg), (free_changes_list):
115         * glib/goption.h:
116         * tests/option-test.c: (arg_test6), (main): add an int64 type for
117         GOption (G_OPTION_ARG_INT64) (#341237)
118
119 2006-05-10  Sebastian Wilhelmi  <wilhelmi@google.com>
120
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)
125
126         * glib/gthread.c: Use g_atomic_pointer_set instead of old
127         homegrown version now that we have it. (#335198, Chris Wilson)
128
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)
133
134         * tests/errorcheck-mutex-test.c: Adapt to GLib coding standards.
135
136 2006-05-09  Sebastian Wilhelmi  <wilhelmi@google.com>
137
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.
141
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.
146
147         * gthread/gthread-impl.c: Use GSystemThread instead of GThread for
148         owner determination. (#311043, jylefort@FreeBSD.org)
149
150         * tests/Makefile.am, tests/errorcheck-mutex-test: New test program
151         to test for all checked violations.
152
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.
157
158         * Remove obsolete gthread/gthread-solaris.c.
159
160 2006-05-08  Matthias Clasen  <mclasen@redhat.com>
161
162         * tests/convert-test.c (test_one_half): Use encoding names which 
163         may work better on Solaris.  (#340434, Alessandro Vesely)
164
165         * tests/keyfile-test.c (test_number): Add some tests for
166         invalid floating point numbers.
167
168         * glib/gkeyfile.c (g_key_file_parse_value_as_double): Return
169         an error for the empty string.  (#339105, Morten Welinder)
170
171         * glib/gscanner.c (g_scanner_config_template): Make const,
172         noticed by Kjartan Maraas.
173
174 2006-05-06  Matthias Clasen  <mclasen@redhat.com>
175
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)
179
180 2006-05-04  Alexander Larsson  <alexl@redhat.com>
181
182         * glib/gbase64.c: (g_base64_decode_step):
183         Fix OOB write (#340538)
184
185 2006-05-03  Matthias Clasen  <mclasen@redhat.com>
186
187         * tests/base64-test.c: Add some more tests.
188
189         * glib/gbase64.c (g_base64_decode_step): Avoid writing
190         beyond the guaranteed lenght of the output buffer, if
191         there is padding.
192
193         * tests/base64-test.c (test_incremental): Use malloced memory
194         instead of stack-allocated, so that MALLOC_CHECK_=2 catches
195         the OOB write...
196
197         * glib/gbookmarkfile.c (g_bookmark_file_load_from_data): Remove
198         an overzealous return_if_fail check that causes make check to 
199         fail.
200
201 2006-05-02  Matthias Clasen  <mclasen@redhat.com>
202
203         * configure.in: Bump version
204         
205         * === Released 2.11.0 ===
206
207         * NEWS: Updates
208
209         * tests/casemap.txt: 
210         * tests/casefold.txt: Regenerate from Unicode 5.0 data. 
211
212         * glib/guniprop.c: Make interval_compare static.
213
214 Tue May  2 15:00:00 2006  Tim Janik  <timj@gtk.org>
215
216         * tests/gobject/deftype.c: added test code from Behdad Esfahbod, 
217         see #337128.
218
219 Tue May  2 14:18:25 2006  Tim Janik  <timj@gtk.org>
220
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.
224
225 2006-04-28  Behdad Esfahbod  <behdad@gnome.org>
226
227         * glib/guniprop.c: #include <stdlib.h>
228
229 2006-04-27  Matthias Clasen  <mclasen@redhat.com>
230
231         * glib/glib.symbols: Add g_unichar_iswide_cjk.
232         * glib/guniprop.c: Add a "Since: 2.12".
233
234         * NEWS: Updates
235
236 2006-04-27  Behdad Esfahbod  <behdad@gnome.org>
237
238         * docs/reference/glib/glib-sections.txt,
239         * glib/gunicode.h glib/guniprop.c: Implement g_unichar_iswide_cjk().
240         (#105626)
241
242 2006-04-27  Matthias Clasen  <mclasen@redhat.com>
243
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)
254
255 2006-04-27  Behdad Esfahbod  <behdad@gnome.org>
256
257         * glib/gunibreak.h, glib/gunichartables.h: Regenerated using
258         Unicode Character Database 5.0 beta.
259
260 2006-04-26  Matthias Clasen  <mclasen@redhat.com>
261
262         * glib/grand.c (g_rand_new): Don't repeat a failed fclose()
263         call, since that invokes undefined behaviour.  (Coverity)
264
265 2006-04-25  Matthias Clasen  <mclasen@redhat.com>
266
267         * glib/gbookmarkfile.c (is_element_full): Avoid a possible
268         NULL dereference (found by Coverity), also avoid some 
269         pointless strdups.
270
271         * tests/keyfile-test.c (test_comments): Add a test for
272         the previous change.
273
274         * glib/gkeyfile.c (g_key_file_lookup_group_node): Remove
275         redundant code.
276         (g_key_file_get_group_comment): Don't dereference before
277         checking for NULL.  (#338572, Coverity, Pascal Terjan)
278
279 2006-04-19  Matthias Clasen  <mclasen@redhat.com>
280
281         * glib/gdataset.c: Add some missing Since: 2.8 tags.
282
283 2006-04-19  Tor Lillqvist  <tml@novell.com>
284
285         * glib/gatomic.c: Adapt to the changed prototype of
286         InterlockedCompareExchange() in newer SDKs. Use
287         InterlockedCompareExchangePointer() when applicable. (#155884,
288         John Ehresman)
289
290 2006-04-18  Matthias Clasen  <mclasen@redhat.com>
291
292         * glib/gkeyfile.h:
293         * glib/glib.symbols:
294         * glib/gkeyfile.c: Add api to get and set doubles and 
295         lists of doubles.  (#164719, Maurizio Monge, Dom Lachowicz)
296
297         * tests/keyfile-test.c: Add tests for new api.
298
299         * glib/gkeyfile.c (g_key_file_add_group): Accept duplicate
300         groups.  (#157877, Sebastien Bacher)
301
302         * tests/keyfile-test.c: Add tests for duplicate key and
303         duplicate group handling.
304
305 2006-04-17  Matthias Clasen  <mclasen@redhat.com>
306
307         * glib/gcompletion.c (g_completion_complete_utf8): Make passing
308         NULL for new_prefix work as documented.  (#338845, Yevgen Muntyan)
309
310         * tests/completion-test.c: Test that passing NULL for 
311         new_prefix in g_completion_complete_utf8 works.
312
313 2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
314
315         * configure.in: Remove obsolete entry for no_NO.
316         * po/no.po: And the translation.
317
318 2006-04-16  Matthias Clasen  <mclasen@redhat.com>
319
320         * glib/gdate.c (g_date_fill_parse_tokens): Avoid an array
321         overrun.  (Coverity, fix by Pascal Terjan)
322
323 2006-04-12  Bastien Nocera  <hadess@hadess.net>
324
325         reviewed by: Matthias Clasen <mclasen@redhat.com>
326
327         * glib/gconvert.c: add more details about which RFC is concerned
328         when using g_filename_to_uri (#337553)
329
330 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
331
332         * glib/goption.c (parse_arg): Add an assert to make it
333         clear when value can be NULL.
334
335 2006-04-07  Martyn Russell  <martyn@imendio.com>
336
337         * tests/threadpool-test.c: (test_thread_stop_unused): Removed an
338         assertion which can fail and is not a critical test.
339
340 2006-04-07  Hans Breuer  <hans@breuer.org>
341
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()
345
346 2006-04-07  Martyn Russell  <martyn@imendio.com>
347
348         * glib/gasyncqueue.[ch]: Added private API
349         _g_async_queue_get_mutex so that g_thread_pool_free() can use the
350         async queue mutex. 
351         
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
356         from Chris Wilson).  
357         
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(). 
362
363 2006-04-05  Matthias Clasen  <mclasen@redhat.com>
364
365         * glib/gnulib/vasnprintf.c (vasnprintf): Make
366         long long printing work if snprintf is not 
367         available.  (#332841, Michael McDonald)
368
369 2006-04-05  Behdad Esfahbod  <behdad@gnome.org>
370
371         * tests/option-test.c: Check the return value of g_get_prgname for
372         NULL before passing to strcmp.
373
374         * tests/slice-test.c: Report the correct name in Usage summary.
375
376 2006-04-05  Matthias Clasen  <mclasen@redhat.com>
377
378         * tests/run-collate-tests.sh: Fix up shell script.
379
380         * tests/option-test.c (arg_test5): Skip the test if
381         setting the locale fails.
382         (empty_test1): Reset prgname before the test.
383
384         * tests/Makefile.am: Arrange for run-bookmark-test.sh
385         to be run by make check.
386
387         * tests/utf8-pointer.c: 
388         * tests/tree-test.c: Silence warnings.
389
390 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
391
392         * glib/glib.symbols:
393         * glib/gbase64.[hc]: Add G_GNUC_MALLOC where
394         appropriate, use glib types.
395
396 2006-04-04  Alexander Larsson  <alexl@redhat.com>
397
398         * glib/Makefile.am:
399         * glib/gbase64.[ch]:
400         * glib/glib.symbols:
401         Add base64 encode/decode functions
402         
403         * glib/glib.h:
404         Include gbase64.h
405         
406         * tests/Makefile.am:
407         * tests/base64-test.c:
408         Tests for base64 functions
409
410 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
411
412         * glib/gdate.c: Move short_month_names and long_month_names
413         to bss.
414
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.
427
428         * glib/gbookmarkfile.c: Make the parser struct const.
429
430 2006-04-04  Behdad Esfahbod  <behdad@gnome.org>
431
432         * glib/gbookmarkfile.c: Fix accidentally broken build.
433
434 2006-04-03  Matthias Clasen  <mclasen@redhat.com>
435
436         * glib/gbookmarkfile.c: Don't include sys/time.h  (#337027,
437          Kazuki IWAMOTO)
438
439 2006-03-31  Tor Lillqvist  <tml@novell.com>
440
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
443         discussion.
444
445 2006-03-30  Tor Lillqvist  <tml@novell.com>
446
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)
450
451 2006-03-30  Matthias Clasen  <mclasen@redhat.com>
452
453         * glib/gbookmarkfile.c (g_bookmark_file_get_app_info): Sync
454         the parameter names with the .h files, otherwise gtk-doc
455         misbehaves.
456
457 2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>
458
459         * tests/.cvsignore: Add bookmarkfile-test to the ignored files.
460
461 2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>
462
463         * tests/Makefile.am:
464         * tests/bookmarkfile-test.c:
465         * tests/run-bookmark-test.sh:
466         * tests/bookmarks/*.xbel: Add test suite for GBookmarkFile.
467
468 2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>
469
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.
474
475 2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>
476
477         * glib/glib.h:
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.
482
483         * glib/glib.symbols:
484         * glib/Makefile.am:
485         * glib/makefile.msc.in:
486         * glib/makefile.mingw.in: Build glue for GBookmarkFile.
487
488 2006-03-27  Dom Lachowicz  <cinamod@hotmail.com>
489
490         * tests/option-test.c: Copy-and-paste error slipped into test5. Enable
491         test5, as per Matthias' comments in bug 329548#c11.
492
493         Change a gboolean to an int. Fixes bug #329789.
494
495         * configure.in: Bump version number to 2.11.0
496         
497 2006-03-27  Matthias Clasen  <mclasen@redhat.com>
498
499         Add support for floating point numbers to goption.
500         (#329548, Behdad Esfahbod, patch by Antoine Dopffer and 
501          Dom Lachowicz)
502
503         * glib/goption.h:
504         * glib/goption.c: Support double arguments.
505
506         * tests/option-test.c: Test double arguments.`
507
508 2006-03-26  Matthias Clasen  <mclasen@redhat.com>
509
510         * glib/goption.c (g_option_context_new): Improve the description
511         of parameter_string in the docs.  (#336085, Claudio Saavedra)
512
513 2006-03-24  Martyn Russell  <martyn@imendio.com>
514
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.
519
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. 
523
524 2006-03-23  Matthias Clasen  <mclasen@redhat.com> 
525
526         === Branch for 2.10 ===