const correctness fixes, found by Arjan van de Ven and gcc.
[platform/upstream/glib.git] / ChangeLog.pre-2-10
1 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
2
3         * glib/gbacktrace.c:
4         * glib/gdate.c:
5         * glib/gthread.c: const correctness fixes, found
6         by Arjan van de Ven and gcc.
7         
8 2005-11-16  Behdad Esfahbod  <behdad@gnome.org>
9
10         * docs/reference/glib/tmpl/unicode.sgml: Correct typo on mentioning
11         @G_UNICODE_BREAK_UNKNOWN that should be #G_UNICODE_BREAK_UNKNOWN.
12
13 2005-11-09  Behdad Esfahbod  <behdad@gnome.org>
14
15         * glib/guniprop.c: Use bit hacks instead when checking a general
16         category value against multiple values.
17
18         * glib/gutf8.c: Change ISO10646 to Unicode in docs.
19
20 2005-11-10  Simos Xenitellis  <simos@gnome.org>
21
22         * configure.in: Added tt (Tatar) to ALL_LINGUAS.
23
24 2005-11-05  Tor Lillqvist  <tml@novell.com>
25
26         * glib/giowin32.c (g_io_win32_set_flags): Don't call g_warning().
27         (#320688) Instead set error and return failure.
28
29 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
30
31         * glib/gmain.c (g_main_dispatch): Don't call cb_funcs->unref
32         while holding the context lock.  (#320886, Andy Wingo)
33
34 2005-11-07  Billy Biggs <vektor@dumbterm.net>
35
36         * tests/refcount/Makefile.am: Add a missing reference to libglib
37         in the LDADD for this test.
38
39 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
40
41         * glib/gmem.c (g_allocator_new): We need to set n_preallocs to a
42         nonzero value, otherwise GTK+ 2.8 breaks when compiled against
43         GLib 2.9.  (#320755, Luca Ferretti)
44
45 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
46
47         * glib/Makefile.am: Apply a patch from Behdad Esfahbod to 
48         use a faster lookup table for g_unichar_get_mirror_char().
49         * glib/gmirroringtable.h: The new table.
50         * glib/gunichartables.h: Remove bidi_mirroring_table.
51         * glib/gen-unicode-tables.pl: Don't generate the mirroring
52         table.
53         * glib/glib-mirroring-tab/*: Sources for the program
54         which generated gmirroringtable.h.
55
56         * glib/glist.c: Avoid some code duplication.
57
58         * glib/gscanner.h: Include gdataset.h.  (#320322)
59
60         * glib/gdebug.h: add new GDebugFlag for fatal_criticals
61         * glib/gmessages.c: (_g_debug_init): handle G_DEBUG=fatal_criticals,
62         to help find critical warnings in applications.  (#320017,
63         Vincent Untz)
64
65 2005-11-02  Tor Lillqvist  <tml@novell.com>
66
67         * glib/glib.symbols: Remove large amount of trailing whitespace
68         from one line. Remove #ifdef G_UNDEFINED from around
69         g_hash_table_new and g_hash_table_new_full symbols, what was the
70         purpose of that? Add the g_slice functions.
71
72 Tue Nov  1 16:24:20 2005  Tim Janik  <timj@imendio.com>
73
74         * glib/gmem.[hc]: prepared deprecation of GMemChunk and GAllocator.
75         added g_slice_*() API to allocate and cache small bits of memory.
76         an actuall allocator implementation for g_slice_*() is still pending.
77
78         * glib/gthread.[hc]: changes from a patch by Matthias Clasen.
79         changed GRealThread list to use in-structure *next; fields instead
80         of GSList, in order for thread iteration to not depenend on g_slice_*()
81         indirectly.
82         _g_thread_mem_private_get():
83         _g_thread_mem_private_set(): added accessors for private memory,
84         needed because the ordinary GPrivate implementation relies on GArray
85         and GSList and therefore indirectly on working g_slice_*() allocations.
86
87         * glib/gthread.[hc]:
88         g_thread_foreach(): new public API function to loop over all existing threads.
89
90         * glib/gdataset.c:
91         * glib/gstring.c:
92         * glib/gcache.c:
93         * glib/garray.c: 
94         * glib/gqueue.c:
95         * glib/gslist.c:
96         * glib/glist.c:
97         * glib/ghash.c:
98         * glib/gtree.c:
99         * glib/ghook.c:
100         * glib/gmain.c:
101         * glib/gnode.c:
102         removed GAllocator and free list usages and accompanying locks.
103         use g_slice_*() API to allocate and cache small bits of memory.
104
105         * glib/ghook.h: removed GMemChunk field from public API.
106
107         * glib/gslist.h:
108         * glib/glist.h: deprecate allocator API, provide _free1() for consistency.
109
110         * glib/gnode.h: deprecate allocator API.
111
112         * glib/gmain.c: reordered GPollRec fields so g_slice_free_chain() can
113         be used for poll rec lists.
114
115         * glib/grel.c: removed mem chunk usage, and allocated tuples via g_slice_*().
116         g_relation_destroy(): free all tuples from the all_tuples hash table,
117         this effectively maintains the life time track keeping of tuples.
118         g_relation_delete_tuple(): free tuples which are removed from the
119         all_tuples hash table. this fixes a temporary leak that was present
120         in the memchunk code until the destruction of the relation.
121
122 2005-10-29  Matthias Clasen  <mclasen@redhat.com>
123
124         * tests/convert-test.c: Add some tests for conversions between
125         UTF-8, UCS-4 and UTF-16.
126
127         * glib/gutf8.c (g_utf8_to_ucs4, g_utf8_to_utf16): Fix handling
128         of len == -1, noticed by Morten Welinder.
129
130 2005-10-27  Erdal Ronahi  <erdal.ronahi@gmail.com>
131
132         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
133
134 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
135
136         * glib/gutf8.c (g_ucs4_to_utf8): Don't set items_read twice
137         in the error case, and add some documentation.  (#319806, Morten
138         Welinder)
139
140 2005-10-19  Manish Singh  <yosh@gimp.org>
141
142         * configure.in: Use AC_CHECK_FUNCS for _NSGetEnviron, to get the
143         config.h symbol automatically. Fixes bug #313731.
144
145 2005-10-19  Tor Lillqvist  <tml@novell.com>
146
147         * glib/gwin32.c (g_win32_get_package_installation_directory):
148         Return a g_strdup()ed copy of the value stored in the hash table,
149         so that it can be g_free()d without leaving a dangling pointer in
150         the hash table. (#319232)
151
152 2005-10-06  Matthias Clasen  <mclasen@redhat.com>
153
154         * glib/gunicollate.c (g_utf8_collate_key_for_filename): Handle
155         all-zero sequences correctly.  (#317930, Sebastien Bacher)
156
157 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
158
159         * glib/gmarkup.c (g_markup_escape_text): Doc addition
160
161         * Makefile.am: Add Collation tests.
162
163         * tests/collate/*: Inputs and expected outputs for collation tests.
164
165         * tests/run-collate-tests.sh: Script to run collation tests.
166
167         * tests/unicode-collate.c (main): Rework slightly to make
168         it usable in unit tests. Also test g_utf8_collate_key_for_filename().
169
170 2005-10-01  Behdad Esfahbod  <behdad@gnome.org>
171
172         * docs/reference/glib/tmpl/unicode.sgml:
173         * glib/gen-unicode-tables.pl:
174         * glib/gunibreak.h:
175         * glib/gunichartables.h:
176         * glib/gunicode.h:
177         * tests/casefold.txt:
178         * tests/casemap.txt: Updated to Unicode 4.1.  There are five new
179         GUnicodeBreakType types.  That may break some applications, like
180         Pango <= 1.10.
181
182 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
183
184         * glib/gstrfuncs.c (g_ascii_strtoull): Add details to the 
185         docs.  (#314393, Matthew F. Barnes)
186
187         * glib/glib.symbols:
188         * glib/gprintf.h: Remove g_snprintf() and g_vsnprintf(), since
189         they are already declared in glib.h. This doesn't break documented
190         use of gprintf.h, but should probably be pointed out in the 
191         release notes for 2.10. (#314232, Behdad Esfahbod)
192
193 Tue Sep 20 13:16:04 2005  Tim Janik  <timj@imendio.com>
194
195         * glib/gpattern.c (g_pattern_ph_match): applied significant recursion
196         complexity optimization, based on a patch from Matthias Clasen.
197
198         * tests/patterntest.c: more tests, mostly from matthias.
199
200 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
201
202         * glib/gqueue.c (g_queue_insert_sorted): Correct the docs.
203         (#316703, Mark Drago)
204
205 Mon Sep 19 17:23:23 2005  Tim Janik  <timj@imendio.com>
206
207         * glib/gpattern.c: applied a patch from matthias which checks on the
208         upper bound of GPatternSpec length to optimize matches.
209         cosmetic fixups.
210
211         * tests/patterntest.c: added more match cases.
212
213 2005-09-16  Tor Lillqvist  <tml@novell.com>
214
215         * glib/gstrfuncs.c (g_ascii_strcasecmp, g_ascii_strncasecmp): Add
216         warning to doc comment that these functions should not be used on
217         encodings like CP932.
218
219 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
220
221         * tests/keyfile-test.c: Add a test for grup names of length 1.
222
223         * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
224         of length 1.  (#316309)
225         
226 2005-09-12  Matthias Clasen  <mclasen@redhat.com>
227
228         * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
229
230 2005-09-11  Sebastian Wilhelmi  <seppi@seppi.de>
231
232         * tests/refcount/Makefile.am (INCLUDES): Link the the refcount
233         tests to the system thread library $(G_THREAD_LIBS). Fixes #313744
234         and #314217.
235
236 2005-09-11  Kjartan Maraas  <kmaraas@gnome.org>
237
238         * glib/gmain.c: (g_child_watch_prepare), (g_child_watch_check),
239         (child_watch_helper_thread): Remove some dead code. Closes
240         bug #315278.
241
242 2005-09-07  Tor Lillqvist  <tml@novell.com>
243
244         * glib/Makefile.am: Create also a console version of the
245         gspawn-win32-helper program, gspawn-win32-helper-console.exe.
246         It's otherwise identical to gspawn-win32-helper.exe, except marked
247         as a console application (linked without the -mwindows option).
248         
249         * glib/gspawn-win32.c (do_spawn_directly, do_spawn_with_pipes):
250         Drop the dont_wait parameter. Its truth value correlated 100% with
251         the NULLness of the exit_status parameter anyway, so it's enough
252         to check whether exit_status is NULL. Invert the sense of the
253         dont_return_handle parameter and rename it to do_return_handle, to
254         make the code easier to read by avoiding double negations.
255
256         (g_spawn_sync_utf8, g_spawn_async_with_pipes_utf8): Modify calls
257         to do_spawn_with_pipes() accordingly.
258
259         (do_spawn_with_pipes): If we have a console, use the console
260         version of the helper program, otherwise use the GUI one. This
261         avoids extra console windows opening up in some situations. (In
262         case a console application uses the GUI gspawn-win32-helper.exe to
263         spawn another console application we would get a separate console
264         for the spawned console application).
265
266         * glib-zip.in: Distribute also gspawn-win32-helper-console.exe.
267
268 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
269
270         * glib/gmappedfile.c (g_mapped_file_new): Report an error
271         if the file is too large.  (#315275, Kjartan Maraas)
272
273         * glib/gkeyfile.c (g_key_file_load_from_fd): The return value
274         of read() is signed.  (#315273, Kjartan Maraas)
275         
276 2005-08-31  Tor Lillqvist  <tml@novell.com>
277
278         * glib/gutils.h: Wrapping atexit() is a bad idea on Windows, where
279         the EXE and each DLL have their own atexit function chains.
280
281         #define g_atexit as atexit instead. This means it has a
282         better chance of doing what the caller wants. For instance,
283         gtkhtml calls g_atexit() registering a function in gtkhtml
284         itself. This caused a crash when g_atexit() was implemented as a
285         function in the GLib DLL. The gtkhtml DLL was already unloaded by
286         the time the GLib DLL got unloaded.
287
288         * glib/gutils.c: #undef the #define mentioned above, to also get a
289         real g_atexit() into the DLL for backward compatibility. Document
290         the Windows behaviour of g_atexit(), and document the varying ways
291         atexit() can behave in the context of dynamically loaded modules
292         on Unix.
293
294 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
295
296         * glib/glib.symbols: 
297         * glib/gquark.h: 
298         * glib/gdataset.c: Add string interning functions.
299
300 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
301
302         * glib/giochannel.c: Unify some near-duplicate strings. (#314654,
303         Clytie Siddall)
304         
305 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
306
307         * configure.in: Bump version to 2.9.0
308
309 2005-08-25  Tor Lillqvist  <tml@novell.com>
310
311         Make also the g_spawn*() functions take parameters in the GLib
312         file name encoding, i.e. UTF-8, on Windows. Has no impact on Unix
313         API or ABI. Like the other GLib API that was earlier changed to
314         use UTF-8 on Windows, the names of the functions that take UTF-8
315         have _utf8 suffixes added by using preprocessor macros in the
316         header file. The old names are kept for functions with the old
317         behaviour, taking parameters in the system codepage, for DLL ABI
318         stability.
319         
320         * glib/gspawn.h: On Win32 add the suffix _utf8 to the names of the
321         g_spawn*() functions.
322         
323         * glib/gspawn-win32.c: Use wide-char API on NT-based
324         Windows. Convert parameters from UTF-8 to wide chars (NT) or
325         system codepage (Win9x) and call the C library _wspawn*() or
326         spawn*() functions respectvely. Add DLL ABI stability versions
327         that take parameters in the system codepage.
328
329         * glib/gspawn-win32-helper.c: On NT-based Windows use the
330         wide-char versions of argv and envp, and use wide-char API to
331         change directory and spawn the program to run. Remove the verbose
332         debugging output, it was too complex to modify for the wide-char
333         features. (Just add temporary debugging printouts if needed, no
334         need to have them permanently in the source.)
335
336         * glib/gspawn.c: Corresponding documentation updates.
337
338         * glib/glib.symbols: Corresponding changes: Mark the ABI stability
339         symbols as PRIVATE, add the new _utf8-suffixed ones.
340
341 2005-08-24  Stepan Kasal  <kasal@ucw.cz>
342
343         * glib/gtypes.h (G_MININT64): Cast the constant to gint64; it is
344         guint64 otherwise and that can produce warnings about comparison
345         between signed and unsigned.
346
347 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
348
349         * glib/gutils.c: Fix the crt_externs.h include.
350
351 2005-08-23  Stepan Kasal  <kasal@ucw.cz>
352
353         * NEWS: Fix spelling of my first name.
354
355 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
356
357         * Bump version
358
359         * === Released 2.8.1 ===
360
361         * NEWS: Updates
362
363 2005-08-20  Hans Breuer  <hans@breuer.org>
364
365         * glib/makefile.msc.in : link with ws2_32.lib
366
367 2005-08-18  Tor Lillqvist  <tml@novell.com>
368
369         * configure.in: Check for <sys/wait.h>
370
371         * glib/gbacktrace.c: Include <sys/wait.h> on if HAVE_SYS_WAIT_H.
372
373 2005-08-18  Ross Burton  <ross@burtonini.com>
374
375         * glib/gstring.c:
376         Optimise single-character insertions.
377         
378         * glib/gutf8.c:
379         Note copied code.
380         
381         * tests/string-test.c:
382         Add tests for new optimisation, and fix a leak.
383
384 2005-08-17  Matthias Clasen  <mclasen@redhat.com>
385
386         * configure.in: Check for crt_externs.h and _NSGetEnviron.
387
388         * glib/gutils.c: On Darwin, include crt-externs.h and
389         define environ using _NSGetEnviron().  (#313731)
390
391 2005-08-16  Stepan Kasal  <kasal@ucw.cz>
392
393         * glib/gutils.c (g_get_any_init): Move the body of the big if...
394         (g_get_any_init_do): ... to this new function.
395         (g_get_any_init): Declare as inline.
396         (g_get_any_init_locked): New inline function, does the locking.
397         Make use of these two throughout the code.
398
399 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
400
401         * glib/gbacktrace.c (g_on_error_stack_trace): Wait for
402         the child process and then simply return. This makes 
403         The "S" option work as documented in g_on_error_query().
404         (#313125, Matthew F. Barnes)
405
406         * glib/gunicode.h: Update the link to Unicode category
407         values.  (#313369, Behnam Esfahbod)
408
409         * glib/gqueue.c (g_queue_find_custom): Clarify docs
410         a little.  (#311727, Tristan van Berkom)
411
412         * glib/abicheck.sh, gobject/abicheck.sh: Make the 
413         check work on ia64 too, where some symbols ended up 
414         in yet another section.
415