2.11.1
[platform/upstream/glib.git] / ChangeLog
1 2006-05-15  Matthias Clasen  <mclasen@redhat.com>
2
3         * === Released 2.11.1 ===
4
5         * NEWS: Updates
6
7 2006-05-13  Matthias Clasen  <mclasen@redhat.com>
8
9         * glib/grel.c: Fix several cases of deref-before-NULL-check.
10         (#341191, Pascal Terjan)
11
12         * glib/glib.symbols: 
13         * glib/goption.h: 
14         * glib/goption.c: Allow optional summary and description
15         texts before and after the option descriptions, and add
16         a way to translate them.  (#336120, Behdad Esfahbod)
17
18 2006-05-12  Tor Lillqvist  <tml@novell.com>
19
20         * glib/giowin32.c (g_io_win32_sock_set_flags): Implement
21         setting/clearing G_IO_FLAG_NONBLOCK for channels attached to
22         sockets. (#341192)
23         (g_io_win32_unimpl_set_flags): set_flags method for the
24         unimplemented case.
25         
26 2006-05-11  Bastien Nocera  <hadess@hadess.net>
27
28         * glib/goption.c: (parse_int64), (parse_arg), (free_changes_list):
29         * glib/goption.h:
30         * tests/option-test.c: (arg_test6), (main): add an int64 type for
31         GOption (G_OPTION_ARG_INT64) (#341237)
32
33 2006-05-10  Sebastian Wilhelmi  <wilhelmi@google.com>
34
35         * glib/gthread.h, gthread/gthread-impl.c: Make the magic and
36         location arguments to the error-checking-mutex functions const and
37         do not write to them, as we might not own them. Clean up the
38         error-checking-mutex code quite a bit. (#335198, Chris Wilson)
39
40         * glib/gthread.c: Use g_atomic_pointer_set instead of old
41         homegrown version now that we have it. (#335198, Chris Wilson)
42
43         * gthread/gthread-posix.c, gthread/gthread-win32.c: Prevent
44         calling into g_cond_wait resp. g_mutex_lock/unlock directly to
45         avoid recursions into the errorcheking mutex code (and out of
46         principle anyway). (#335198, Chris Wilson)
47
48         * tests/errorcheck-mutex-test.c: Adapt to GLib coding standards.
49
50 2006-05-09  Sebastian Wilhelmi  <wilhelmi@google.com>
51
52         * glib/gthreadinit.h: Renamed to glib/gthreadprivate.h and moved
53         system thread identifier comparision and assignment macros from
54         glib/gthread.c to glib/gthreadprivate.h.
55
56         * glib/Makefile.am, glib/gatomic.c, glib/gconvert.c, glib/gmain.c,
57         glib/gmem.c, glib/gmessages.c, glib/grand.c, glib/gslice.c,
58         glib/gthread.c, glib/gutils.c, gthread/gthread-impl.c: Use
59         glib/gthreadprivate.h instead of glib/gthreadinit.h.
60
61         * gthread/gthread-impl.c: Use GSystemThread instead of GThread for
62         owner determination. (#311043, jylefort@FreeBSD.org)
63
64         * tests/Makefile.am, tests/errorcheck-mutex-test: New test program
65         to test for all checked violations.
66
67         * glib/gprintf.c, glib/gspawn-win32.c, glib/gutf8.c,
68         gthread/gthread-impl.c, gthread/gthread-posix.c,
69         gthread/gthread-win32.c: Use canonical include form for internal
70         headers. config.h is always there.
71
72         * Remove obsolete gthread/gthread-solaris.c.
73
74 2006-05-08  Matthias Clasen  <mclasen@redhat.com>
75
76         * tests/convert-test.c (test_one_half): Use encoding names which 
77         may work better on Solaris.  (#340434, Alessandro Vesely)
78
79         * tests/keyfile-test.c (test_number): Add some tests for
80         invalid floating point numbers.
81
82         * glib/gkeyfile.c (g_key_file_parse_value_as_double): Return
83         an error for the empty string.  (#339105, Morten Welinder)
84
85         * glib/gscanner.c (g_scanner_config_template): Make const,
86         noticed by Kjartan Maraas.
87
88 2006-05-06  Matthias Clasen  <mclasen@redhat.com>
89
90         * glib/gkeyfile.c (g_key_file_set_string_list)
91         (g_key_file_set_locale_string_list): Fix invalid memory
92         reads.  (#340816, Nick Treleaven)
93
94 2006-05-04  Alexander Larsson  <alexl@redhat.com>
95
96         * glib/gbase64.c: (g_base64_decode_step):
97         Fix OOB write (#340538)
98
99 2006-05-03  Matthias Clasen  <mclasen@redhat.com>
100
101         * tests/base64-test.c: Add some more tests.
102
103         * glib/gbase64.c (g_base64_decode_step): Avoid writing
104         beyond the guaranteed lenght of the output buffer, if
105         there is padding.
106
107         * tests/base64-test.c (test_incremental): Use malloced memory
108         instead of stack-allocated, so that MALLOC_CHECK_=2 catches
109         the OOB write...
110
111         * glib/gbookmarkfile.c (g_bookmark_file_load_from_data): Remove
112         an overzealous return_if_fail check that causes make check to 
113         fail.
114
115 2006-05-02  Matthias Clasen  <mclasen@redhat.com>
116
117         * configure.in: Bump version
118         
119         * === Released 2.11.0 ===
120
121         * NEWS: Updates
122
123         * tests/casemap.txt: 
124         * tests/casefold.txt: Regenerate from Unicode 5.0 data. 
125
126         * glib/guniprop.c: Make interval_compare static.
127
128 Tue May  2 15:00:00 2006  Tim Janik  <timj@gtk.org>
129
130         * tests/gobject/deftype.c: added test code from Behdad Esfahbod, 
131         see #337128.
132
133 Tue May  2 14:18:25 2006  Tim Janik  <timj@gtk.org>
134
135         * glib/goption.c (g_option_context_parse): fixed leak in short
136         option parsing. rewrote parts of the code to be more concise to
137         enhance readability. fixed exaggerated uses of strlen.
138
139 2006-04-28  Behdad Esfahbod  <behdad@gnome.org>
140
141         * glib/guniprop.c: #include <stdlib.h>
142
143 2006-04-27  Matthias Clasen  <mclasen@redhat.com>
144
145         * glib/glib.symbols: Add g_unichar_iswide_cjk.
146         * glib/guniprop.c: Add a "Since: 2.12".
147
148         * NEWS: Updates
149
150 2006-04-27  Behdad Esfahbod  <behdad@gnome.org>
151
152         * docs/reference/glib/glib-sections.txt,
153         * glib/gunicode.h glib/guniprop.c: Implement g_unichar_iswide_cjk().
154         (#105626)
155
156 2006-04-27  Matthias Clasen  <mclasen@redhat.com>
157
158         * glib/gbookmarkfile.c (g_bookmark_file_set_description) 
159         (g_bookmark_file_set_title, g_bookmark_file_set_icon): 
160         Remove some special-casing of empty string which led to 
161         dangling pointers.  (#339337, Morten Welinder)
162         (expand_exec_line): Don't use printf() needlessly, handle
163         trailing '%' gracefully.  (#339338, Morten Welinder)
164         (is_element_full): Silence the compiler.
165         (g_bookmark_file_dump, bookmark_metadata_dump): 
166         (bookmark_app_info_dump): Escape strings before dumping 
167         them in xml.  (#339340, Morten Welinder)
168
169 2006-04-27  Behdad Esfahbod  <behdad@gnome.org>
170
171         * glib/gunibreak.h, glib/gunichartables.h: Regenerated using
172         Unicode Character Database 5.0 beta.
173
174 2006-04-26  Matthias Clasen  <mclasen@redhat.com>
175
176         * glib/grand.c (g_rand_new): Don't repeat a failed fclose()
177         call, since that invokes undefined behaviour.  (Coverity)
178
179 2006-04-25  Matthias Clasen  <mclasen@redhat.com>
180
181         * glib/gbookmarkfile.c (is_element_full): Avoid a possible
182         NULL dereference (found by Coverity), also avoid some 
183         pointless strdups.
184
185         * tests/keyfile-test.c (test_comments): Add a test for
186         the previous change.
187
188         * glib/gkeyfile.c (g_key_file_lookup_group_node): Remove
189         redundant code.
190         (g_key_file_get_group_comment): Don't dereference before
191         checking for NULL.  (#338572, Coverity, Pascal Terjan)
192
193 2006-04-19  Matthias Clasen  <mclasen@redhat.com>
194
195         * glib/gdataset.c: Add some missing Since: 2.8 tags.
196
197 2006-04-19  Tor Lillqvist  <tml@novell.com>
198
199         * glib/gatomic.c: Adapt to the changed prototype of
200         InterlockedCompareExchange() in newer SDKs. Use
201         InterlockedCompareExchangePointer() when applicable. (#155884,
202         John Ehresman)
203
204 2006-04-18  Matthias Clasen  <mclasen@redhat.com>
205
206         * glib/gkeyfile.h:
207         * glib/glib.symbols:
208         * glib/gkeyfile.c: Add api to get and set doubles and 
209         lists of doubles.  (#164719, Maurizio Monge, Dom Lachowicz)
210
211         * tests/keyfile-test.c: Add tests for new api.
212
213         * glib/gkeyfile.c (g_key_file_add_group): Accept duplicate
214         groups.  (#157877, Sebastien Bacher)
215
216         * tests/keyfile-test.c: Add tests for duplicate key and
217         duplicate group handling.
218
219 2006-04-17  Matthias Clasen  <mclasen@redhat.com>
220
221         * glib/gcompletion.c (g_completion_complete_utf8): Make passing
222         NULL for new_prefix work as documented.  (#338845, Yevgen Muntyan)
223
224         * tests/completion-test.c: Test that passing NULL for 
225         new_prefix in g_completion_complete_utf8 works.
226
227 2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
228
229         * configure.in: Remove obsolete entry for no_NO.
230         * po/no.po: And the translation.
231
232 2006-04-16  Matthias Clasen  <mclasen@redhat.com>
233
234         * glib/gdate.c (g_date_fill_parse_tokens): Avoid an array
235         overrun.  (Coverity, fix by Pascal Terjan)
236
237 2006-04-12  Bastien Nocera  <hadess@hadess.net>
238
239         reviewed by: Matthias Clasen <mclasen@redhat.com>
240
241         * glib/gconvert.c: add more details about which RFC is concerned
242         when using g_filename_to_uri (#337553)
243
244 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
245
246         * glib/goption.c (parse_arg): Add an assert to make it
247         clear when value can be NULL.
248
249 2006-04-07  Martyn Russell  <martyn@imendio.com>
250
251         * tests/threadpool-test.c: (test_thread_stop_unused): Removed an
252         assertion which can fail and is not a critical test.
253
254 2006-04-07  Hans Breuer  <hans@breuer.org>
255
256         * glib/makefile.msc.in : added gbase64.obj and derive the static libs
257         name from auto* variables
258         * glib/makefile.msc.in : link user32.lib for MessageBox()
259
260 2006-04-07  Martyn Russell  <martyn@imendio.com>
261
262         * glib/gasyncqueue.[ch]: Added private API
263         _g_async_queue_get_mutex so that g_thread_pool_free() can use the
264         async queue mutex. 
265         
266         * glib/gthreadpool.c: Make sure
267         g_thread_pool_stop_unused_threads() actually stops unused threads
268         and global limits (like max idle time and max unused threads) can
269         be set without creating a thread pool first. Fixed #335215 (patch
270         from Chris Wilson).  
271         
272         * tests/threadpool-test.c: Added two new tests, tests setting
273         global limits before creating a thread pool. The second test
274         makes sure unused threads are actually stopped when using the
275         g_thread_pool_stop_unused_threads(). 
276
277 2006-04-05  Matthias Clasen  <mclasen@redhat.com>
278
279         * glib/gnulib/vasnprintf.c (vasnprintf): Make
280         long long printing work if snprintf is not 
281         available.  (#332841, Michael McDonald)
282
283 2006-04-05  Behdad Esfahbod  <behdad@gnome.org>
284
285         * tests/option-test.c: Check the return value of g_get_prgname for
286         NULL before passing to strcmp.
287
288         * tests/slice-test.c: Report the correct name in Usage summary.
289
290 2006-04-05  Matthias Clasen  <mclasen@redhat.com>
291
292         * tests/run-collate-tests.sh: Fix up shell script.
293
294         * tests/option-test.c (arg_test5): Skip the test if
295         setting the locale fails.
296         (empty_test1): Reset prgname before the test.
297
298         * tests/Makefile.am: Arrange for run-bookmark-test.sh
299         to be run by make check.
300
301         * tests/utf8-pointer.c: 
302         * tests/tree-test.c: Silence warnings.
303
304 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
305
306         * glib/glib.symbols:
307         * glib/gbase64.[hc]: Add G_GNUC_MALLOC where
308         appropriate, use glib types.
309
310 2006-04-04  Alexander Larsson  <alexl@redhat.com>
311
312         * glib/Makefile.am:
313         * glib/gbase64.[ch]:
314         * glib/glib.symbols:
315         Add base64 encode/decode functions
316         
317         * glib/glib.h:
318         Include gbase64.h
319         
320         * tests/Makefile.am:
321         * tests/base64-test.c:
322         Tests for base64 functions
323
324 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
325
326         * glib/gdate.c: Move short_month_names and long_month_names
327         to bss.
328
329         * glib/gspawn-win32.c (g_spawn_error_quark):
330         * glib/gspawn.c (g_spawn_error_quark):
331         * glib/gshell.c (g_shell_error_quark):
332         * glib/gmarkup.c (g_markup_error_quark):
333         * glib/goption.c (g_option_error_quark):
334         * glib/gkeyfile.c (g_key_file_error_quark):
335         * glib/giochannel.c (g_io_channel_error_quark):
336         * glib/gfileutils.c (g_file_error_quark):
337         * glib/gconvert.c (g_convert_error_quark):
338         * glib/gbookmarkfile.c (g_bookmark_file_error_quark):
339         * glib/gthread.c (g_thread_error_quark): No point in making
340         the error path fast by caching quarks.
341
342         * glib/gbookmarkfile.c: Make the parser struct const.
343
344 2006-04-04  Behdad Esfahbod  <behdad@gnome.org>
345
346         * glib/gbookmarkfile.c: Fix accidentally broken build.
347
348 2006-04-03  Matthias Clasen  <mclasen@redhat.com>
349
350         * glib/gbookmarkfile.c: Don't include sys/time.h  (#337027,
351          Kazuki IWAMOTO)
352
353 2006-03-31  Tor Lillqvist  <tml@novell.com>
354
355         * glib/gstdio.c (g_remove): Revert change below. It wasn't a good
356         idea after all, says the original bug reporter. See bug for
357         discussion.
358
359 2006-03-30  Tor Lillqvist  <tml@novell.com>
360
361         * glib/gstdio.c (g_remove): [Win32] call rmdir() only if remove()
362         fails with errno set to ENOENT, to leave errno set to EACCESS if
363         that is the problem. (#334799, Yevgen Muntyan)
364
365 2006-03-30  Matthias Clasen  <mclasen@redhat.com>
366
367         * glib/gbookmarkfile.c (g_bookmark_file_get_app_info): Sync
368         the parameter names with the .h files, otherwise gtk-doc
369         misbehaves.
370
371 2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>
372
373         * tests/.cvsignore: Add bookmarkfile-test to the ignored files.
374
375 2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>
376
377         * tests/Makefile.am:
378         * tests/bookmarkfile-test.c:
379         * tests/run-bookmark-test.sh:
380         * tests/bookmarks/*.xbel: Add test suite for GBookmarkFile.
381
382 2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>
383
384         * docs/reference/glib/glib-docs.sgml:
385         * docs/reference/glib/glib-sections.txt:
386         * docs/reference/glib/tmpl/bookmarkfile.sgml: Add documentation for
387         GBookmarkFile to GLib's reference guide.
388
389 2006-03-27  Emmanuele Bassi  <ebassi@cvs.gnome.org>
390
391         * glib/glib.h:
392         * glib/gbookmarkfile.h
393         * glib/gbookmarkfile.c: Add GBookmarkFile, a parser for files
394         containing bookmarks stored using the Desktop Bookmark
395         specification. Fixes bug #327662.
396
397         * glib/glib.symbols:
398         * glib/Makefile.am:
399         * glib/makefile.msc.in:
400         * glib/makefile.mingw.in: Build glue for GBookmarkFile.
401
402 2006-03-27  Dom Lachowicz  <cinamod@hotmail.com>
403
404         * tests/option-test.c: Copy-and-paste error slipped into test5. Enable
405         test5, as per Matthias' comments in bug 329548#c11.
406
407         Change a gboolean to an int. Fixes bug #329789.
408
409         * configure.in: Bump version number to 2.11.0
410         
411 2006-03-27  Matthias Clasen  <mclasen@redhat.com>
412
413         Add support for floating point numbers to goption.
414         (#329548, Behdad Esfahbod, patch by Antoine Dopffer and 
415          Dom Lachowicz)
416
417         * glib/goption.h:
418         * glib/goption.c: Support double arguments.
419
420         * tests/option-test.c: Test double arguments.`
421
422 2006-03-26  Matthias Clasen  <mclasen@redhat.com>
423
424         * glib/goption.c (g_option_context_new): Improve the description
425         of parameter_string in the docs.  (#336085, Claudio Saavedra)
426
427 2006-03-24  Martyn Russell  <martyn@imendio.com>
428
429         * glib/gthreadpool.c: Updated the documentation to explain that
430         when the maximum threads is > 1 the sort functionality is not 100%
431         accurate due to the ramdom nature of the scheduler choosing which
432         threads to execute. Fixes bug #334943.
433
434         * tests/threadpool-test.c: Disabled the debugging by default and
435         fixed the sort test to set the maximum threads to 1 to guarantee
436         the thread entry function is called in order. 
437
438 2006-03-23  Matthias Clasen  <mclasen@redhat.com> 
439
440         === Branch for 2.10 ===