Bug 554790 - g_convert() misbehaves with winiconv versions
[platform/upstream/glib.git] / ChangeLog
1 2008-10-08  Tor Lillqvist  <tml@novell.com>
2
3         Bug 554790 - g_convert() misbehaves with winiconv versions
4
5         * glib/win_iconv.c (kernel_mbtowc): If converting from ASCII,
6         explicitly check for and reject 8bit chars. MultiByteToWideChar()
7         doesn't, at least not on XP.
8
9 2008-10-06  Matthias Clasen  <mclasen@redhat.com>
10
11         * glib/gtypes.h: Properly include gmacros.h
12
13 2008-10-06  Behdad Esfahbod  <behdad@gnome.org>
14
15         Bug 555309 – giochannel breaks on error
16         Patch from Christian Persch
17
18         * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
19         (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags):
20         Don't shadow err.  Oops!
21
22 2008-10-06  Christophe Fergeau  <teuf@gnome.org>
23
24         Bug 555224 – Improve g_format_size_for_display doc
25         
26         * glib/gfileutils.c: change g_format_size_for_display API doc to
27         explicitly say that the returned string has to be freed. Change
28         spelling of "newly allocated" to "newly-allocated" in g_file_read_link
29         API doc to be more consistent with what is done in that file.
30
31 2008-10-01  David Zeuthen  <davidz@redhat.com>
32
33         * README.in: Add "Notes about glib 2.20" section detailing the
34         ramifications of the patch from bug #528670.
35
36 2008-09-30  Behdad Esfahbod  <behdad@gnome.org>
37
38         Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X
39
40         * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
41         (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags),
42         (g_io_unix_get_flags), (g_io_channel_new_file):
43         Like mclasen says: "well, thats the way errno works...,
44         save it or loose it".  Save errno.
45
46 2008-09-30  Tor Lillqvist  <tml@novell.com>
47
48         * Makefile.decl
49         * glib/tests/Makefile.am: Bypass gtester related stuff on Windows.
50
51 2008-09-30  Tor Lillqvist  <tml@novell.com>
52
53         * glib/gprintf.c
54         * glib/gnulib/vasnprintf.c: Don't define _GNU_SOURCE on Windows,
55         as _GNU_SOURCE has unintended side effects when compiling against
56         newest mingw headers.
57
58 2008-09-26  Dan Winship  <danw@gnome.org>
59
60         Bug 553447 – g_assert_no_error()
61
62         * glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
63         assert that a GError is not set, or else is set to a particular
64         error.
65
66         * glib/gtestutils.c (g_assertion_message_error): utility for
67         those macros
68
69         * glib/tests/keyfile.c:
70         * tests/asyncqueue-test.c:
71         * tests/bookmarkfile-test.c:
72         * tests/convert-test.c:
73         * tests/file-test.c: Use g_assert_error/g_assert_no_error
74
75 2008-09-26  Dan Winship  <danw@gnome.org>
76
77         * glib/gthreadpool.c (wakeup_thread_marker): make this a "const
78         gpointer" rather than a gconstpointer to avoid warnings later
79
80         * glib/pcre/pcre_ucp_searchfuncs.c:
81         * glib/pcre/pcre_valid_utf8.c: #include "config.h"
82
83         * glib/tests/printf.c (test_d): fool gcc into not warning about
84         some printf format strings that we know are dubious
85
86 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
87
88         Bug 553857 – gbacktrace.h requires signal.h
89
90         * glib/gbacktrace.h: Include signal.h for raise(). 
91         Pointed out by Sebastien Bacher
92
93 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
94
95         Bug 553724 – python interpretter path not patched in correctly
96
97         * glib/Makefile.am: Fix the sed magic to replace python.
98
99 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
100
101         * glib/gmain.c: Add some more docs.
102
103         * glib/giochannel.c: Move more docs inline, and improve them
104         on the way.
105
106 2008-09-25  Tor Lillqvist  <tml@novell.com>
107
108         Bug 553820 - gpoll.c: undeclared identifier
109
110         * glib/gmain.c
111         * glib/gpoll.c: Make the g_poll() function non-static also on
112         Windows. Prefix an underscore to the g_main_poll_debug variable
113         and make it non-static in gmain.c so that it can be used in
114         gpoll.c. Add back missing variable declaration.
115
116 2008-09-25  Tor Lillqvist  <tml@novell.com>
117
118         * glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
119         Just ignore the child_setup function, never call it. The is no
120         situation in which it could be useful on Windows. Do print a
121         warning, like before.
122
123         * glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
124         in documentation.
125
126 2008-09-24  Sven Herzberg  <sven@imendio.com>
127
128         Be a little more explcit in the docs. Includes Owen's requested
129         changes.
130
131         * glib/gmain.c: improved documentation for g_source_attach() and
132         g_source_destroy()
133
134 2008-09-23  Michael Natterer  <mitch@imendio.com>
135
136         * glib/glib.h: #include <glib/gpoll.h>
137
138         * glib/gpoll.h: #error out if gpoll.h is included directly.
139
140         * glib/gpoll.c: remove trailing whitespace.
141
142 2008-09-23  Dan Winship  <danw@gnome.org>
143
144         * glib/gpoll.[ch] (g_poll): Move this out of gmain.c and make it part
145         of the public API. (Part of Bug 505361 - gunixinputstream.c assumes
146         poll() available.)
147
148 2008-09-23  Tor Lillqvist  <tml@novell.com>
149
150         * glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
151         passing an incorrect third parameter to memmove(), had forgotten
152         to multiply by the size of the table entry. Just use a for loop
153         instead, clearer. Odd I didn't notice when testing this code.
154
155 2008-09-19  Hans Petter Jansson  <hpj@novell.com>
156
157         Rewrite most of GHashTable to use open addressing with quadratic
158         probing instead of chaining. This has the potential to reduce memory
159         fragmentation significantly, while being slightly faster due to
160         better locality and no need to call alloc/free functions for nodes.
161         Benchmarks suggest it also uses less memory overall.
162
163         * glib/ghash.c (prime_mod): Table of suitable primes for
164         initial-probe distribution.
165         (g_hash_table_set_shift): New function.
166         (g_hash_table_find_closest_shift): New function.
167         (g_hash_table_set_shift_from_size): New function.
168         (g_hash_table_lookup_node_for_insertion): New function.
169         (g_hash_table_lookup_node): Rewritten to return node index instead of
170         pointer, use quadratic probe on flat table, and not return insertion
171         data. The latter saves some computation for read-only lookups.
172         (g_hash_table_remove_node): Rewrite to take a pointer directly to the
173         node structure to remove, and clear that. Remove unlinking code.
174         (g_hash_table_remove_all_nodes): Rewrite to not clear nodes
175         individually, but en masse using memset () after potentially calling
176         notify functions.
177         (iter_remove_or_steal): Use new data structure and algorithm. Vastly
178         simplified - now just a call to g_hash_table_remove_node ().
179         (g_hash_table_resize): New resize code, re-indexing with new prime
180         and cleaning up tombstones.
181         (g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
182         than 1/4 load excluding tombstones, and no more than 15/16 load
183         including tombstones. These numbers are the results of a lot of
184         benchmarking with multiple complex applications, and should not be
185         changed lightly.
186         (g_hash_table_iter_next)
187         (g_hash_table_lookup)
188         (g_hash_table_lookup_extended)
189         (g_hash_table_insert_internal)
190         (g_hash_table_remove_internal)
191         (g_hash_table_foreach_remove_or_steal)
192         (g_hash_table_foreach)
193         (g_hash_table_find)
194         (g_hash_table_get_keys)
195         (g_hash_table_get_values): Use new data structure and algorithm,
196         fairly trivial changes.
197
198 2008-09-19  Tor Lillqvist  <tml@novell.com>
199
200         * glib-zip.in: Look for man pages in share/man.
201
202         * glib/gutils.c (_glib_get_dll_directory)
203         * glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
204         restrictive, look for the helper programs in the same folder where
205         the GLib DLL is, not necessarily in a "bin" subfolder of the top
206         GLib installation folder.
207
208 2008-09-18  Matthias Clasen <mclasen@redhat.com>
209
210         * configure.in: Bump version to 2.19.0
211
212         * ChangeLog.pre-2-18: rotate ChangeLog
213         
214         * === branch for 2.18 ===