4527b8069f746a6fd2a1d482bc1914ece2b58b9d
[platform/upstream/glib.git] / ChangeLog
1 2008-10-23 Matthias Clasen <mclasen@redhat.com>
2
3         Bug 556921 – gpoll.h breaks hal compilation
4
5         * glib/gpoll.h: Include gtypes.h. Pointed out by Anis Elleuch
6
7 2008-10-20 Christian Persch <chpe@gnome.org>
8
9         Bug 557087 – mem leak in g_content_types_get_registered
10                 
11         * gio/gcontenttype.c: Plug a mem leak.
12
13 2008-10-19  Michael Natterer  <mitch@imendio.com>
14
15         Bug 556186 – gpoll.h breaks gmain.h inclusion
16
17         * glib/gpoll.h: different fix: disallow direct inclusion
18         unconditionally again but make an exception if included from
19         gmain.h to maintain compatibility.
20
21 2008-10-16  Matthias Clasen <mclasen@redhat.com>
22
23         * configure.in: Bump version to 2.19.1
24
25         * === Released 2.19.0 ===
26
27         * NEWS: Updates
28
29 2008-10-14  Christian Persch <chpe@gnome.org>
30
31         Bug 556186 – gpoll.h breaks gmain.h inclusion
32
33         * glib/gpoll.h: Only disallow direct inclusion when
34         G_DISABLE_SINGLE_INCLUDES is defined.
35
36 2008-10-13  Sven Herzberg  <sven@imendio.com>
37
38         Bug 556101 – static mutex yields warnings with g++
39         Reviewed by Tim Janik
40
41         * configure.in: added an intermediate cast to gpointer
42
43 2008-10-13  Christian Persch <chpe@gnome.org>
44
45         Bug 555311 – format not a string literal and no format arguments
46
47         * glib/gmarkup.c:
48         * glib/gshell.c: Use literal errors where appropriate.
49
50 2008-10-10  Behdad Esfahbod  <behdad@gnome.org>
51
52         Bug 551355 – [PATCH] Make glib build with libtool 2.2
53
54         * autogen.sh: Accept libtool 2.2.   We are moving towards having
55         it working.
56
57 2008-10-10  Behdad Esfahbod  <behdad@gnome.org>
58
59         * configure.in: With libtool 2.x, regenerate libtool early.
60         Based on bug 552107, patch by Patryk Zawadzki
61
62 2008-10-10  Matthias Clasen  <mclasen@redhat.com>
63
64         Bug 554557 – Patch to fix gcc warnings about missing format 
65         specifiers
66
67         * glib/gmarkup.c:
68         * glib/gshell.c:
69         * glib/grel.c: Fix gcc warnings. Patch by Kjartan Maraas
70
71 2008-10-10  Matthias Clasen  <mclasen@redhat.com>
72
73         Bug 552861 – glib-2.0.m4 calls system(3) without storing its result
74
75         * m4macros/glib-2.0.m4: Cosmetic change to make -Werror happy.
76         Patch by Andreas Köhler
77
78 2008-10-08  Christian Persch  <chpe@gnome.org>
79
80         Bug 555313 – GFileAttribute boxed type get_type function should
81         use usual get_type pattern
82
83         * gio/gfileattribute.c (g_file_attribute_info_list_get_type): Use
84         g_once_init_enter/leave.
85
86 2008-10-08  Christian Persch  <chpe@gnome.org>
87
88         Bug 555314 – mem leak in gmarkup
89
90         * glib/gmarkup.c: (g_markup_parse_context_parse): Plug a mem leak.
91
92 2008-10-08  Tor Lillqvist  <tml@novell.com>
93
94         Bug 554790 - g_convert() misbehaves with winiconv versions
95
96         * glib/win_iconv.c (kernel_mbtowc): If converting from ASCII,
97         explicitly check for and reject 8bit chars. MultiByteToWideChar()
98         doesn't, at least not on XP.
99
100 2008-10-06  Matthias Clasen  <mclasen@redhat.com>
101
102         * glib/gtypes.h: Properly include gmacros.h
103
104 2008-10-06  Behdad Esfahbod  <behdad@gnome.org>
105
106         Bug 555309 – giochannel breaks on error
107         Patch from Christian Persch
108
109         * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
110         (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags):
111         Don't shadow err.  Oops!
112
113 2008-10-06  Christophe Fergeau  <teuf@gnome.org>
114
115         Bug 555224 – Improve g_format_size_for_display doc
116         
117         * glib/gfileutils.c: change g_format_size_for_display API doc to
118         explicitly say that the returned string has to be freed. Change
119         spelling of "newly allocated" to "newly-allocated" in g_file_read_link
120         API doc to be more consistent with what is done in that file.
121
122 2008-10-01  David Zeuthen  <davidz@redhat.com>
123
124         * README.in: Add "Notes about glib 2.20" section detailing the
125         ramifications of the patch from bug #528670.
126
127 2008-09-30  Behdad Esfahbod  <behdad@gnome.org>
128
129         Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X
130
131         * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
132         (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags),
133         (g_io_unix_get_flags), (g_io_channel_new_file):
134         Like mclasen says: "well, thats the way errno works...,
135         save it or loose it".  Save errno.
136
137 2008-09-30  Tor Lillqvist  <tml@novell.com>
138
139         * Makefile.decl
140         * glib/tests/Makefile.am: Bypass gtester related stuff on Windows.
141
142 2008-09-30  Tor Lillqvist  <tml@novell.com>
143
144         * glib/gprintf.c
145         * glib/gnulib/vasnprintf.c: Don't define _GNU_SOURCE on Windows,
146         as _GNU_SOURCE has unintended side effects when compiling against
147         newest mingw headers.
148
149 2008-09-26  Dan Winship  <danw@gnome.org>
150
151         Bug 553447 – g_assert_no_error()
152
153         * glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
154         assert that a GError is not set, or else is set to a particular
155         error.
156
157         * glib/gtestutils.c (g_assertion_message_error): utility for
158         those macros
159
160         * glib/tests/keyfile.c:
161         * tests/asyncqueue-test.c:
162         * tests/bookmarkfile-test.c:
163         * tests/convert-test.c:
164         * tests/file-test.c: Use g_assert_error/g_assert_no_error
165
166 2008-09-26  Dan Winship  <danw@gnome.org>
167
168         * glib/gthreadpool.c (wakeup_thread_marker): make this a "const
169         gpointer" rather than a gconstpointer to avoid warnings later
170
171         * glib/pcre/pcre_ucp_searchfuncs.c:
172         * glib/pcre/pcre_valid_utf8.c: #include "config.h"
173
174         * glib/tests/printf.c (test_d): fool gcc into not warning about
175         some printf format strings that we know are dubious
176
177 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
178
179         Bug 553857 – gbacktrace.h requires signal.h
180
181         * glib/gbacktrace.h: Include signal.h for raise(). 
182         Pointed out by Sebastien Bacher
183
184 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
185
186         Bug 553724 – python interpretter path not patched in correctly
187
188         * glib/Makefile.am: Fix the sed magic to replace python.
189
190 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
191
192         * glib/gmain.c: Add some more docs.
193
194         * glib/giochannel.c: Move more docs inline, and improve them
195         on the way.
196
197 2008-09-25  Tor Lillqvist  <tml@novell.com>
198
199         Bug 553820 - gpoll.c: undeclared identifier
200
201         * glib/gmain.c
202         * glib/gpoll.c: Make the g_poll() function non-static also on
203         Windows. Prefix an underscore to the g_main_poll_debug variable
204         and make it non-static in gmain.c so that it can be used in
205         gpoll.c. Add back missing variable declaration.
206
207 2008-09-25  Tor Lillqvist  <tml@novell.com>
208
209         * glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
210         Just ignore the child_setup function, never call it. The is no
211         situation in which it could be useful on Windows. Do print a
212         warning, like before.
213
214         * glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
215         in documentation.
216
217 2008-09-24  Sven Herzberg  <sven@imendio.com>
218
219         Be a little more explcit in the docs. Includes Owen's requested
220         changes.
221
222         * glib/gmain.c: improved documentation for g_source_attach() and
223         g_source_destroy()
224
225 2008-09-23  Michael Natterer  <mitch@imendio.com>
226
227         * glib/glib.h: #include <glib/gpoll.h>
228
229         * glib/gpoll.h: #error out if gpoll.h is included directly.
230
231         * glib/gpoll.c: remove trailing whitespace.
232
233 2008-09-23  Dan Winship  <danw@gnome.org>
234
235         * glib/gpoll.[ch] (g_poll): Move this out of gmain.c and make it part
236         of the public API. (Part of Bug 505361 - gunixinputstream.c assumes
237         poll() available.)
238
239 2008-09-23  Tor Lillqvist  <tml@novell.com>
240
241         * glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
242         passing an incorrect third parameter to memmove(), had forgotten
243         to multiply by the size of the table entry. Just use a for loop
244         instead, clearer. Odd I didn't notice when testing this code.
245
246 2008-09-19  Hans Petter Jansson  <hpj@novell.com>
247
248         Rewrite most of GHashTable to use open addressing with quadratic
249         probing instead of chaining. This has the potential to reduce memory
250         fragmentation significantly, while being slightly faster due to
251         better locality and no need to call alloc/free functions for nodes.
252         Benchmarks suggest it also uses less memory overall.
253
254         * glib/ghash.c (prime_mod): Table of suitable primes for
255         initial-probe distribution.
256         (g_hash_table_set_shift): New function.
257         (g_hash_table_find_closest_shift): New function.
258         (g_hash_table_set_shift_from_size): New function.
259         (g_hash_table_lookup_node_for_insertion): New function.
260         (g_hash_table_lookup_node): Rewritten to return node index instead of
261         pointer, use quadratic probe on flat table, and not return insertion
262         data. The latter saves some computation for read-only lookups.
263         (g_hash_table_remove_node): Rewrite to take a pointer directly to the
264         node structure to remove, and clear that. Remove unlinking code.
265         (g_hash_table_remove_all_nodes): Rewrite to not clear nodes
266         individually, but en masse using memset () after potentially calling
267         notify functions.
268         (iter_remove_or_steal): Use new data structure and algorithm. Vastly
269         simplified - now just a call to g_hash_table_remove_node ().
270         (g_hash_table_resize): New resize code, re-indexing with new prime
271         and cleaning up tombstones.
272         (g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
273         than 1/4 load excluding tombstones, and no more than 15/16 load
274         including tombstones. These numbers are the results of a lot of
275         benchmarking with multiple complex applications, and should not be
276         changed lightly.
277         (g_hash_table_iter_next)
278         (g_hash_table_lookup)
279         (g_hash_table_lookup_extended)
280         (g_hash_table_insert_internal)
281         (g_hash_table_remove_internal)
282         (g_hash_table_foreach_remove_or_steal)
283         (g_hash_table_foreach)
284         (g_hash_table_find)
285         (g_hash_table_get_keys)
286         (g_hash_table_get_values): Use new data structure and algorithm,
287         fairly trivial changes.
288
289 2008-09-19  Tor Lillqvist  <tml@novell.com>
290
291         * glib-zip.in: Look for man pages in share/man.
292
293         * glib/gutils.c (_glib_get_dll_directory)
294         * glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
295         restrictive, look for the helper programs in the same folder where
296         the GLib DLL is, not necessarily in a "bin" subfolder of the top
297         GLib installation folder.
298
299 2008-09-18  Matthias Clasen <mclasen@redhat.com>
300
301         * configure.in: Bump version to 2.19.0
302
303         * ChangeLog.pre-2-18: rotate ChangeLog
304         
305         * === branch for 2.18 ===