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