8bc0b010439d0d0329e3b0f948367264a7e3f865
[platform/upstream/glib.git] / ChangeLog
1 2008-09-26  Dan Winship  <danw@gnome.org>
2
3         Bug 553447 – g_assert_no_error()
4
5         * glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
6         assert that a GError is not set, or else is set to a particular
7         error.
8
9         * glib/gtestutils.c (g_assertion_message_error): utility for
10         those macros
11
12         * glib/tests/keyfile.c:
13         * tests/asyncqueue-test.c:
14         * tests/bookmarkfile-test.c:
15         * tests/convert-test.c:
16         * tests/file-test.c: Use g_assert_error/g_assert_no_error
17
18 2008-09-26  Dan Winship  <danw@gnome.org>
19
20         * glib/gthreadpool.c (wakeup_thread_marker): make this a "const
21         gpointer" rather than a gconstpointer to avoid warnings later
22
23         * glib/pcre/pcre_ucp_searchfuncs.c:
24         * glib/pcre/pcre_valid_utf8.c: #include "config.h"
25
26         * glib/tests/printf.c (test_d): fool gcc into not warning about
27         some printf format strings that we know are dubious
28
29 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
30
31         Bug 553857 – gbacktrace.h requires signal.h
32
33         * glib/gbacktrace.h: Include signal.h for raise(). 
34         Pointed out by Sebastien Bacher
35
36 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
37
38         Bug 553724 – python interpretter path not patched in correctly
39
40         * glib/Makefile.am: Fix the sed magic to replace python.
41
42 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
43
44         * glib/gmain.c: Add some more docs.
45
46         * glib/giochannel.c: Move more docs inline, and improve them
47         on the way.
48
49 2008-09-25  Tor Lillqvist  <tml@novell.com>
50
51         Bug 553820 - gpoll.c: undeclared identifier
52
53         * glib/gmain.c
54         * glib/gpoll.c: Make the g_poll() function non-static also on
55         Windows. Prefix an underscore to the g_main_poll_debug variable
56         and make it non-static in gmain.c so that it can be used in
57         gpoll.c. Add back missing variable declaration.
58
59 2008-09-25  Tor Lillqvist  <tml@novell.com>
60
61         * glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
62         Just ignore the child_setup function, never call it. The is no
63         situation in which it could be useful on Windows. Do print a
64         warning, like before.
65
66         * glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
67         in documentation.
68
69 2008-09-24  Sven Herzberg  <sven@imendio.com>
70
71         Be a little more explcit in the docs. Includes Owen's requested
72         changes.
73
74         * glib/gmain.c: improved documentation for g_source_attach() and
75         g_source_destroy()
76
77 2008-09-23  Michael Natterer  <mitch@imendio.com>
78
79         * glib/glib.h: #include <glib/gpoll.h>
80
81         * glib/gpoll.h: #error out if gpoll.h is included directly.
82
83         * glib/gpoll.c: remove trailing whitespace.
84
85 2008-09-23  Dan Winship  <danw@gnome.org>
86
87         * glib/gpoll.[ch] (g_poll): Move this out of gmain.c and make it part
88         of the public API. (Part of Bug 505361 - gunixinputstream.c assumes
89         poll() available.)
90
91 2008-09-23  Tor Lillqvist  <tml@novell.com>
92
93         * glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
94         passing an incorrect third parameter to memmove(), had forgotten
95         to multiply by the size of the table entry. Just use a for loop
96         instead, clearer. Odd I didn't notice when testing this code.
97
98 2008-09-19  Hans Petter Jansson  <hpj@novell.com>
99
100         Rewrite most of GHashTable to use open addressing with quadratic
101         probing instead of chaining. This has the potential to reduce memory
102         fragmentation significantly, while being slightly faster due to
103         better locality and no need to call alloc/free functions for nodes.
104         Benchmarks suggest it also uses less memory overall.
105
106         * glib/ghash.c (prime_mod): Table of suitable primes for
107         initial-probe distribution.
108         (g_hash_table_set_shift): New function.
109         (g_hash_table_find_closest_shift): New function.
110         (g_hash_table_set_shift_from_size): New function.
111         (g_hash_table_lookup_node_for_insertion): New function.
112         (g_hash_table_lookup_node): Rewritten to return node index instead of
113         pointer, use quadratic probe on flat table, and not return insertion
114         data. The latter saves some computation for read-only lookups.
115         (g_hash_table_remove_node): Rewrite to take a pointer directly to the
116         node structure to remove, and clear that. Remove unlinking code.
117         (g_hash_table_remove_all_nodes): Rewrite to not clear nodes
118         individually, but en masse using memset () after potentially calling
119         notify functions.
120         (iter_remove_or_steal): Use new data structure and algorithm. Vastly
121         simplified - now just a call to g_hash_table_remove_node ().
122         (g_hash_table_resize): New resize code, re-indexing with new prime
123         and cleaning up tombstones.
124         (g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
125         than 1/4 load excluding tombstones, and no more than 15/16 load
126         including tombstones. These numbers are the results of a lot of
127         benchmarking with multiple complex applications, and should not be
128         changed lightly.
129         (g_hash_table_iter_next)
130         (g_hash_table_lookup)
131         (g_hash_table_lookup_extended)
132         (g_hash_table_insert_internal)
133         (g_hash_table_remove_internal)
134         (g_hash_table_foreach_remove_or_steal)
135         (g_hash_table_foreach)
136         (g_hash_table_find)
137         (g_hash_table_get_keys)
138         (g_hash_table_get_values): Use new data structure and algorithm,
139         fairly trivial changes.
140
141 2008-09-19  Tor Lillqvist  <tml@novell.com>
142
143         * glib-zip.in: Look for man pages in share/man.
144
145         * glib/gutils.c (_glib_get_dll_directory)
146         * glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
147         restrictive, look for the helper programs in the same folder where
148         the GLib DLL is, not necessarily in a "bin" subfolder of the top
149         GLib installation folder.
150
151 2008-09-18  Matthias Clasen <mclasen@redhat.com>
152
153         * configure.in: Bump version to 2.19.0
154
155         * ChangeLog.pre-2-18: rotate ChangeLog
156         
157         * === branch for 2.18 ===