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