Updates
[platform/upstream/glib.git] / ChangeLog
1 2008-12-13  Matthias Clasen <mclaesn@redhat.com>
2
3         * NEWS: Updates
4
5 2008-12-12  Dan Winship  <danw@gnome.org>
6
7         * glib/pltcheck.sh: make this work on x86_64
8  
9 2008-12-12  Ryan Lortie  <desrt@desrt.ca>
10
11         * gio/gicon.c (g_icon_to_string_tokenized): free the tokens when done
12         with them
13
14 2008-12-12  Ryan Lortie  <desrt@desrt.ca>
15
16         * gio/gunixmounts.c (g_unix_mount_at): fix leak that occurs when
17         multiple mount entries match the requested path
18
19 2008-12-12  Behdad Esfahbod  <behdad@gnome.org>
20
21         * glib/guniprop.c: Improve g_unichar_iswide_cjk() docs.
22
23 2008-12-07  Matthias Clasen  <mclasen@redhat.com>
24
25         Bug 508021 – Add support for the CRIS and CRISv32 architectures
26
27         * configure.in: 
28         * glib/gatomic.c: Add an implementation for the CRIS and CRISv32 
29         architectures, by Peter Kjellerstedt
30
31 2008-12-02  Matthias Clasen  <mclasen@redhat.com>
32
33         * glib/gkeyfile.c: Some more documentation additions.
34
35 2008-12-01  Matthias Clasen  <mclasen@redhat.com>
36
37         * configure.in: Bump version
38
39 2008-12-01  Matthias Clasen  <mclasen@redhat.com>
40
41         * === Released 2.19.2 ===
42
43 2008-12-01  Matthias Clasen  <mclasen@redhat.com>
44
45         * configure.in: Bump version
46
47 2008-12-01  Matthias Clasen  <mclasen@redhat.com>
48
49         * === Released 2.19.1 ===
50
51         * NEWS: Updates
52
53 2008-11-28  Behdad Esfahbod  <behdad@gnome.org>
54
55         Bug 562639 – g_parse_debug_flags() parsing "help"
56
57         * glib/gutils.c (g_parse_debug_string): Print available keys if
58         string is "help".
59
60 2008-11-28  Behdad Esfahbod  <behdad@gnome.org>
61
62         Bug 562638 – GDebugKey key member should be const
63
64         * glib/gutils.h: Change GDebugKey key member from gchar * to
65         const gchar *.
66
67 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
68
69         Bug 547264 – Missing "no flags" flag
70
71         * glib/gregex.c: Mention 0 as value for 'no flags' in some places..
72         Pointed out by Bastien Nocera
73
74 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
75
76         Bug 562544 – g_key_file_get_string and g_key_file_get_value
77         documentation does not explain the difference
78
79         * glib/gkeyfile.c (g_key_file_get_string): Explain the difference
80         to g_key_file_get_value(). Pointed out by Mart Raudsepp.
81
82 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
83
84         * glib/gkeyfile.c: Refer to @locale parameters as locale identifier
85         in docs.
86
87 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
88
89         Bug 557603 – carbon check output misplaced
90
91         * configure.in: Call AC_PROG_CPP early to avoid it messing up
92         carbon check output. Fix proposed by Christian Persch
93
94 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
95
96         Bug 559110 – Do not include libintl.h after glibintl.h
97
98         * glib/glibintl.h: Define bind_textdomain_codeset in the DISABLE_NLS
99         branch. Patch by Peter Kjellerstedt.
100
101         * glib/gutil.c: Don't include libintl.h directly.
102
103 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
104
105         Bug 562378 – callback return value not respected for callback option
106         with no arg
107
108         * glib/goption.c (parse_long_option): Return the parse_arg return
109         value even for no-arg callbacks. Patch by Christian Persch
110
111         * glib/tests/option-context.c: Add a test for a callback which
112         returns FALSE.
113
114 2008-11-23  Christian Persch  <chpe@gnome.org>
115
116         Bug 559413 – g_option_group_set_error_hook docs buglet
117
118         * glib/goption.c: Doc fix.
119
120 2008-11-23  Christian Persch  <chpe@gnome.org>
121
122         Bug 560568 – gkeyfile docs buglet
123
124         * glib/gkeyfile.c: Clarify the docs.
125
126 2008-11-23  Christian Persch  <chpe@gnome.org>
127
128         Bug 560569 – gkeyfile doesn't use the set list_separator in some cases
129
130         * glib/gkeyfile.c: (g_key_file_get_locale_string_list),
131         (g_key_file_set_locale_string_list), (g_key_file_set_integer_list),
132         (g_key_file_set_double_list): Use the key file's list separator character,
133         not the default one.
134
135         * glib/tests/keyfile.c: (test_lists), (test_reload_idempotency): Test
136         this.
137
138 2008-11-21  Christophe Fergeau <teuf@gnome.org>
139
140         Bug 561212 – GFileReadMoreCallback API doc refers to non-existant function
141
142         * gio/giotypes.h: fix name of function referred to in
143         GFileReadMoreCallback API documentation
144
145 2008-11-21  Matthias Clasen <mclasen@redhat.com>
146
147         * configure.in: Bump gtk-doc dependency to 1.11 for
148         nicer index-generation.
149
150 2008-11-14  Matthias Clasen <mclasen@redhat.com>
151
152         * NEWS: Updates
153
154 2008-11-04  Christian Dywan  <christian@imendio.com>
155
156         Bug 558672 – NULL key lookup using g_hash_table_lookup_extended()
157
158         * glib/ghash.c:
159         Clarify g_hash_table_lookup_extended
160
161 2008-11-02  Tor Lillqvist  <tml@novell.com>
162
163         * configure.in: Expand also build/win32/vs9/Makefile.
164
165 2008-10-31  Christian Dywan  <christian@imendio.com>
166
167         Bug 558513 – g_warn_if_fail FIXME in gtestutils
168
169         * glib/gtestutils.c (g_test_log_send):
170         Turn g_assert into g_warn_if_fail as advised
171
172 2008-10-31  Grahame Bowland  <grahame@angrygoats.net>
173
174         Bug 558185 – 'parent' variable in g_local_file_get_child_for_display_name() 
175         hits g_object_unref(NULL) assertion
176
177         * gio/glocalfile.c: 
178         - remove unused variable. Patch by Matt Johnston <matt@ucc.asn.au>
179
180 2008-10-29 16:11:14  Tim Janik  <timj@gtk.org>
181
182         * glib/gmacros.h: added G_PASTE() and G_STATIC_ASSERT(), based on
183         patches by Christian Persch and Christian Dywan. Fixes:
184         Bug 558381 - Add support for compile time assertions
185
186 2008-10-27  Joseph Pingenot  <gnomesvn@digitasaru.net>
187
188         * glib/ghash.c: changed "#GHashTableIterator" to "#GHashTableIter"
189         in the documentation-comments above g_hash_table_foreach_remove()
190         and g_hash_table_foreach_steal() to correctly name and link to
191         GHashTableIter.  This affects the GNOME documentation website
192         as well, so further steps are likely necessary beyond this subproject..
193
194 2008-10-23 Matthias Clasen <mclasen@redhat.com>
195
196         Bug 557210 – g_compute_checksum_for_* asserts with less than 2 bytes
197
198         * glib/gchecksum.c (g_compute_checksum_for_data): Accept 
199         lengths < 2. Patch by Tommi Komulainen
200
201         * tests/checksum-test.c: Add a test for this
202
203 2008-10-23 Matthias Clasen <mclasen@redhat.com>
204
205         Bug 556921 – gpoll.h breaks hal compilation
206
207         * glib/gpoll.h: Include gtypes.h. Pointed out by Anis Elleuch
208
209 2008-10-20 Christian Persch <chpe@gnome.org>
210
211         Bug 557087 – mem leak in g_content_types_get_registered
212                 
213         * gio/gcontenttype.c: Plug a mem leak.
214
215 2008-10-19  Michael Natterer  <mitch@imendio.com>
216
217         Bug 556186 – gpoll.h breaks gmain.h inclusion
218
219         * glib/gpoll.h: different fix: disallow direct inclusion
220         unconditionally again but make an exception if included from
221         gmain.h to maintain compatibility.
222
223 2008-10-16  Matthias Clasen <mclasen@redhat.com>
224
225         * configure.in: Bump version to 2.19.1
226
227         * === Released 2.19.0 ===
228
229         * NEWS: Updates
230
231 2008-10-14  Christian Persch <chpe@gnome.org>
232
233         Bug 556186 – gpoll.h breaks gmain.h inclusion
234
235         * glib/gpoll.h: Only disallow direct inclusion when
236         G_DISABLE_SINGLE_INCLUDES is defined.
237
238 2008-10-13  Sven Herzberg  <sven@imendio.com>
239
240         Bug 556101 – static mutex yields warnings with g++
241         Reviewed by Tim Janik
242
243         * configure.in: added an intermediate cast to gpointer
244
245 2008-10-13  Christian Persch <chpe@gnome.org>
246
247         Bug 555311 – format not a string literal and no format arguments
248
249         * glib/gmarkup.c:
250         * glib/gshell.c: Use literal errors where appropriate.
251
252 2008-10-10  Behdad Esfahbod  <behdad@gnome.org>
253
254         Bug 551355 – [PATCH] Make glib build with libtool 2.2
255
256         * autogen.sh: Accept libtool 2.2.   We are moving towards having
257         it working.
258
259 2008-10-10  Behdad Esfahbod  <behdad@gnome.org>
260
261         * configure.in: With libtool 2.x, regenerate libtool early.
262         Based on bug 552107, patch by Patryk Zawadzki
263
264 2008-10-10  Matthias Clasen  <mclasen@redhat.com>
265
266         Bug 554557 – Patch to fix gcc warnings about missing format 
267         specifiers
268
269         * glib/gmarkup.c:
270         * glib/gshell.c:
271         * glib/grel.c: Fix gcc warnings. Patch by Kjartan Maraas
272
273 2008-10-10  Matthias Clasen  <mclasen@redhat.com>
274
275         Bug 552861 – glib-2.0.m4 calls system(3) without storing its result
276
277         * m4macros/glib-2.0.m4: Cosmetic change to make -Werror happy.
278         Patch by Andreas Köhler
279
280 2008-10-08  Christian Persch  <chpe@gnome.org>
281
282         Bug 555313 – GFileAttribute boxed type get_type function should
283         use usual get_type pattern
284
285         * gio/gfileattribute.c (g_file_attribute_info_list_get_type): Use
286         g_once_init_enter/leave.
287
288 2008-10-08  Christian Persch  <chpe@gnome.org>
289
290         Bug 555314 – mem leak in gmarkup
291
292         * glib/gmarkup.c: (g_markup_parse_context_parse): Plug a mem leak.
293
294 2008-10-08  Tor Lillqvist  <tml@novell.com>
295
296         Bug 554790 - g_convert() misbehaves with winiconv versions
297
298         * glib/win_iconv.c (kernel_mbtowc): If converting from ASCII,
299         explicitly check for and reject 8bit chars. MultiByteToWideChar()
300         doesn't, at least not on XP.
301
302 2008-10-06  Matthias Clasen  <mclasen@redhat.com>
303
304         * glib/gtypes.h: Properly include gmacros.h
305
306 2008-10-06  Behdad Esfahbod  <behdad@gnome.org>
307
308         Bug 555309 – giochannel breaks on error
309         Patch from Christian Persch
310
311         * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
312         (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags):
313         Don't shadow err.  Oops!
314
315 2008-10-06  Christophe Fergeau  <teuf@gnome.org>
316
317         Bug 555224 – Improve g_format_size_for_display doc
318         
319         * glib/gfileutils.c: change g_format_size_for_display API doc to
320         explicitly say that the returned string has to be freed. Change
321         spelling of "newly allocated" to "newly-allocated" in g_file_read_link
322         API doc to be more consistent with what is done in that file.
323
324 2008-10-01  David Zeuthen  <davidz@redhat.com>
325
326         * README.in: Add "Notes about glib 2.20" section detailing the
327         ramifications of the patch from bug #528670.
328
329 2008-09-30  Behdad Esfahbod  <behdad@gnome.org>
330
331         Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X
332
333         * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
334         (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags),
335         (g_io_unix_get_flags), (g_io_channel_new_file):
336         Like mclasen says: "well, thats the way errno works...,
337         save it or loose it".  Save errno.
338
339 2008-09-30  Tor Lillqvist  <tml@novell.com>
340
341         * Makefile.decl
342         * glib/tests/Makefile.am: Bypass gtester related stuff on Windows.
343
344 2008-09-30  Tor Lillqvist  <tml@novell.com>
345
346         * glib/gprintf.c
347         * glib/gnulib/vasnprintf.c: Don't define _GNU_SOURCE on Windows,
348         as _GNU_SOURCE has unintended side effects when compiling against
349         newest mingw headers.
350
351 2008-09-26  Dan Winship  <danw@gnome.org>
352
353         Bug 553447 – g_assert_no_error()
354
355         * glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
356         assert that a GError is not set, or else is set to a particular
357         error.
358
359         * glib/gtestutils.c (g_assertion_message_error): utility for
360         those macros
361
362         * glib/tests/keyfile.c:
363         * tests/asyncqueue-test.c:
364         * tests/bookmarkfile-test.c:
365         * tests/convert-test.c:
366         * tests/file-test.c: Use g_assert_error/g_assert_no_error
367
368 2008-09-26  Dan Winship  <danw@gnome.org>
369
370         * glib/gthreadpool.c (wakeup_thread_marker): make this a "const
371         gpointer" rather than a gconstpointer to avoid warnings later
372
373         * glib/pcre/pcre_ucp_searchfuncs.c:
374         * glib/pcre/pcre_valid_utf8.c: #include "config.h"
375
376         * glib/tests/printf.c (test_d): fool gcc into not warning about
377         some printf format strings that we know are dubious
378
379 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
380
381         Bug 553857 – gbacktrace.h requires signal.h
382
383         * glib/gbacktrace.h: Include signal.h for raise(). 
384         Pointed out by Sebastien Bacher
385
386 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
387
388         Bug 553724 – python interpretter path not patched in correctly
389
390         * glib/Makefile.am: Fix the sed magic to replace python.
391
392 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
393
394         * glib/gmain.c: Add some more docs.
395
396         * glib/giochannel.c: Move more docs inline, and improve them
397         on the way.
398
399 2008-09-25  Tor Lillqvist  <tml@novell.com>
400
401         Bug 553820 - gpoll.c: undeclared identifier
402
403         * glib/gmain.c
404         * glib/gpoll.c: Make the g_poll() function non-static also on
405         Windows. Prefix an underscore to the g_main_poll_debug variable
406         and make it non-static in gmain.c so that it can be used in
407         gpoll.c. Add back missing variable declaration.
408
409 2008-09-25  Tor Lillqvist  <tml@novell.com>
410
411         * glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
412         Just ignore the child_setup function, never call it. The is no
413         situation in which it could be useful on Windows. Do print a
414         warning, like before.
415
416         * glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
417         in documentation.
418
419 2008-09-24  Sven Herzberg  <sven@imendio.com>
420
421         Be a little more explcit in the docs. Includes Owen's requested
422         changes.
423
424         * glib/gmain.c: improved documentation for g_source_attach() and
425         g_source_destroy()
426
427 2008-09-23  Michael Natterer  <mitch@imendio.com>
428
429         * glib/glib.h: #include <glib/gpoll.h>
430
431         * glib/gpoll.h: #error out if gpoll.h is included directly.
432
433         * glib/gpoll.c: remove trailing whitespace.
434
435 2008-09-23  Dan Winship  <danw@gnome.org>
436
437         * glib/gpoll.[ch] (g_poll): Move this out of gmain.c and make it part
438         of the public API. (Part of Bug 505361 - gunixinputstream.c assumes
439         poll() available.)
440
441 2008-09-23  Tor Lillqvist  <tml@novell.com>
442
443         * glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
444         passing an incorrect third parameter to memmove(), had forgotten
445         to multiply by the size of the table entry. Just use a for loop
446         instead, clearer. Odd I didn't notice when testing this code.
447
448 2008-09-19  Hans Petter Jansson  <hpj@novell.com>
449
450         Rewrite most of GHashTable to use open addressing with quadratic
451         probing instead of chaining. This has the potential to reduce memory
452         fragmentation significantly, while being slightly faster due to
453         better locality and no need to call alloc/free functions for nodes.
454         Benchmarks suggest it also uses less memory overall.
455
456         * glib/ghash.c (prime_mod): Table of suitable primes for
457         initial-probe distribution.
458         (g_hash_table_set_shift): New function.
459         (g_hash_table_find_closest_shift): New function.
460         (g_hash_table_set_shift_from_size): New function.
461         (g_hash_table_lookup_node_for_insertion): New function.
462         (g_hash_table_lookup_node): Rewritten to return node index instead of
463         pointer, use quadratic probe on flat table, and not return insertion
464         data. The latter saves some computation for read-only lookups.
465         (g_hash_table_remove_node): Rewrite to take a pointer directly to the
466         node structure to remove, and clear that. Remove unlinking code.
467         (g_hash_table_remove_all_nodes): Rewrite to not clear nodes
468         individually, but en masse using memset () after potentially calling
469         notify functions.
470         (iter_remove_or_steal): Use new data structure and algorithm. Vastly
471         simplified - now just a call to g_hash_table_remove_node ().
472         (g_hash_table_resize): New resize code, re-indexing with new prime
473         and cleaning up tombstones.
474         (g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
475         than 1/4 load excluding tombstones, and no more than 15/16 load
476         including tombstones. These numbers are the results of a lot of
477         benchmarking with multiple complex applications, and should not be
478         changed lightly.
479         (g_hash_table_iter_next)
480         (g_hash_table_lookup)
481         (g_hash_table_lookup_extended)
482         (g_hash_table_insert_internal)
483         (g_hash_table_remove_internal)
484         (g_hash_table_foreach_remove_or_steal)
485         (g_hash_table_foreach)
486         (g_hash_table_find)
487         (g_hash_table_get_keys)
488         (g_hash_table_get_values): Use new data structure and algorithm,
489         fairly trivial changes.
490
491 2008-09-19  Tor Lillqvist  <tml@novell.com>
492
493         * glib-zip.in: Look for man pages in share/man.
494
495         * glib/gutils.c (_glib_get_dll_directory)
496         * glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
497         restrictive, look for the helper programs in the same folder where
498         the GLib DLL is, not necessarily in a "bin" subfolder of the top
499         GLib installation folder.
500
501 2008-09-18  Matthias Clasen <mclasen@redhat.com>
502
503         * configure.in: Bump version to 2.19.0
504
505         * ChangeLog.pre-2-18: rotate ChangeLog
506         
507         * === branch for 2.18 ===