39add94c2770e71e6c5c1b27b3683af1f7ab5cb2
[platform/upstream/glib.git] / ChangeLog.pre-2-10
1 2006-02-24  Matthias Clasen  <mclasen@redhat.com>
2
3         * README.in: Mention the slice allocator and GInitiallyUnowned.
4
5         * NEWS: Updates
6
7         * configure.in: Bump version to 2.10.0
8
9         * tests/utf8-pointer.c: Add tests for g_utf8_strlen().
10
11         * glib/gutf8.c: Fix boundary cases in g_utf8_strlen().
12         (#332435)
13
14 2006-02-23  Kjartan Maraas  <kmaraas@gnome.org>
15
16         * tests/completion-test.c: (main): Plug leaks reported by
17         valgrind.
18         * tests/convert-test.c: (test_iconv_state), (test_one_half):
19         Same.
20         * tests/patterntest.c: (test_compilation): Same
21         * tests/shell-test.c: (do_argv_test): Same.
22         * tests/unicode-caseconv.c: (main): Same.
23         * tests/uri-test.c: (run_to_uri_tests): Same.
24         Closes bug #332093.
25
26 2006-02-19  Martyn Russell  <martyn@imendio.com>
27         
28         * tests/asyncqueue-test.c: 
29         * tests/list-test.c: 
30         * tests/slist-test.c: Updated to test _sort, _sort_with_data,
31         _insert_sorted and _insert_sorted_with_data API. 
32
33 2006-02-18  Matthias Clasen  <mclasen@redhat.com>
34
35         * tests/gobject/Makefile.am: Add paramspec-test
36
37         * tests/gobject/paramspec-test.c: Some GParamSpec tests. 
38
39         * tests/gobject/gvalue-test.c: Add more tests.
40
41 2006-02-17  Kang Jeong-Hee  <keizie@gmail.com>
42
43         * glib/gutf8.c (g_utf8_find_prev_char): Correct documentation typo.
44
45 2006-02-15  Sebastian Wilhelmi  <seppi@seppi.de>
46
47         * glib/gthreadpool.c: Fix deadlock when signalling the thread
48         which freed a thread pool (#331110, Chris Wilson).
49
50 Tue Feb 14 17:00:43 2006  Tim Janik  <timj@imendio.com>
51
52         * glib/gslice.c: only define _XOPEN_SOURCE to 600 to get at 
53         posix_memalign() in case we actually are going to use it, because
54         we detected a compliant implementation (#328997).
55
56         * configure.in (enable_included_printf): don't include malloc.h when
57         testing for posix_memalign() funcitonality, since this may break the 
58         test on some systems (#328997).
59
60 2006-02-14  Matthias Clasen  <mclasen@redhat.com>
61
62         * glib/gstrfuncs.c: Improve docs.
63
64 2006-02-11  Matthias Clasen  <mclasen@redhat.com>
65
66         * configure.in: Bump version
67
68 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
69
70         * === Released 2.9.6 ===
71
72         * NEWS: Updates
73
74 2006-01-31  Behdad Esfahbod  <behdad@gnome.org>
75
76         * docs/reference/glib/tmpl/relations.sgml (g_relation_insert): Specify
77         the type of varargs arguments. (bug #317679)
78
79 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
80
81         * autogen.sh: Touch README and INSTALL here to pacify 
82         automake.  (#329124, Kjartan Maraas, Tim Janik)
83         
84 Tue Jan 31 16:45:03 2006  Tim Janik  <timj@imendio.com>
85
86         * glib/gdataset.c: carry out all dtalist pointer accesses atomically,
87         some missing cases where pointed out by Sebastian Wilhelmi.
88
89 Tue Jan 31 12:33:48 2006  Tim Janik  <timj@imendio.com>
90
91         * configure.in: generate build/win32/vs8/Makefile, to fix build breakage.
92
93 2006-01-30  David Schleef  <ds@schleef.org>
94
95         * glib/grand.c: Update URL
96
97 2006-01-29  Sven Herzberg  <herzi@gnome-de.org>
98
99         * docs/reference/gobject/tmpl/param_value_types.sgml: tell how to
100         create container classes which are as flexible as a GValue is
101
102 2006-01-27  Matthias Clasen  <mclasen@redhat.com>
103
104         * configure.in: Bump version
105
106         * === Released 2.9.5 ===
107
108         * glib/glib.symbols: Add g_mem_gc_friendly as an exported
109         variable.
110
111         * NEWS: Updates
112
113 2006-01-26  Matthias Clasen  <mclasen@redhat.com>
114
115         * glib/gmem.c (g_mem_init_nomessage): Fix C99isms.  (#328705, 
116         Kazuki Iwamoto)
117
118 Wed Jan 25 19:16:57 2006  Tim Janik  <timj@imendio.com>
119
120         * fixed buglets reported by Jens Granseuer in #328254.
121
122         * configure.in: free the memory allocated in posix_memalign() tests.
123
124         * glib/gslice.c: spelling fixes.
125
126 Wed Jan 25 16:39:18 2006  Tim Janik  <timj@imendio.com>
127
128         * glib/gslice.c: honour g_mem_gc_friendly settings when freeing
129         slices, make sure g_mem_gc_friendly is properly initialized.
130
131         * gmem.[hc]: ensure g_mem_gc_friendly is initialized from G_DEBUG upon
132         the first allocation. applied some branching optimizations.
133
134         * docs/macros.txt: reflected --enable-gc-friendly change and
135         described ENABLE_GC_FRIENDLY_DEFAULT as well as G_DEBUG=gc-friendly.
136
137         * configure.in: changed --enable-gc-friendly=yes to define
138         ENABLE_GC_FRIENDLY_DEFAULT.
139
140         * glib/garray.c: changed ENABLE_GC_FRIENDLY macro #ifdef-s to
141         if (G_UNLIKELY (g_mem_gc_friendly)).
142
143         * glib/gtree.c:
144         * glib/ghash.c: removed ENABLE_GC_FRIENDLY code which is now taken
145         care of by g_slice_free1().
146
147         * tests/slice-test.c: fixed leaks, reported by Kjartan Maraas.
148
149 Tue Jan 24 17:49:36 2006  Tim Janik  <timj@imendio.com>
150
151         * glib/gslice.c: only use posix_memalign() if it's known to work,
152         revert to memalign() otherwise.
153
154         * configure.in: check for broken posix_memalign() implementations
155         to fix #328254.
156
157 2006-01-24  Matthias Clasen  <mclasen@redhat.com>
158
159         * tests/unicode-encoding.c: Use UTF-16LE as target encoding
160         on all little-endian systems.  (#143380, Marc Moorcroft)
161
162 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
163
164         * configure.in: Change the shared libary extension for hpux-ia64
165         to so.  (#328253, The Written Word)
166
167 Mon Jan 23 17:30:33 2006  Tim Janik  <timj@imendio.com>
168
169         * glib/gutils.c (_g_getenv_nomalloc): wiped out all the wonderfull
170         G_OS_WIN32 code i wrote ;-[) after tml told me windows has getenv()
171         as well.
172
173 Mon Jan 23 16:46:20 2006  Tim Janik  <timj@imendio.com>
174
175         * glib/gslice.c (slice_config_init): initialize GSlice config from
176         G_SLICE environment variable. we support G_SLICE=always-malloc
177         currently, which forces all g_slice_*() allocations to use the system
178         malloc instead.
179
180         * glib/gutils.c: 
181         g_parse_debug_string(): added a note about not using g_malloc() here.
182         _g_getenv_nomalloc(): getenv() variant that doesn't use g_malloc or 
183         g_slice. contains only guesswork in the WIN32 branch.
184
185 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
186
187         * Bump version
188         
189         * === Released 2.9.4 ===
190
191         * NEWS: Updates
192
193 2006-01-17  Matthias Clasen  <mclasen@redhat.com>
194
195         * glib/gkeyfile.c (g_key_file_get_groups): Correct a g_new0()
196         call.  (#327421, Morten Welinder)
197
198 2006-01-17  Sebastian Wilhelmi  <seppi@seppi.de>
199
200         * glib/gthreadpool.c: To avoid deadlocks get rid of the settings
201         G_LOCK. Use the unused_thread_queue lock instead. Change
202         g_thread_pool_thread_proxy such that threads only wait on
203         non-exlusive pools for at most a 1/2 second. Do not reorder tasks
204         due to superfluous tasks. Global tasks wait at most for
205         max-idle-time milliseconds. Make sure, that no task is woken up
206         twice for the same event via a wakeup_serial. This fixes #324228.
207
208         * tests/threadpool-test.c: Adapt test accordingly. Do not pass
209         invalid NULL into the thread pools. This as well fixes #327290.
210
211 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
212
213         * configure.in: Bump version
214
215         * === Released 2.9.3 ===
216
217         * NEWS: Updates
218
219         * glib/gthread.h (g_static_mutex_get_mutex_impl_shortcut): 
220         Rework the strict aliasing fix to not break C++, pointed
221         out by Murray Cumming.
222         
223         * glib/gasyncqueue.c (g_async_queue_push_sorted_unlocked):
224         Signal waiting threads, problem noticed by Christian Kellner.
225
226 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
227
228         Fix bug 326747, Alberto Ruiz:
229         
230         * glib/gconvert.c (make_valid_utf8): Change this function to
231         replace unknown characters by the Unicode replacement character
232         instead of '?', and don't append "(invalid encoding)".
233         (g_filename_display_name, g_filename_display_basename): Document
234         how to determine if the filename was in an invalid encoding.
235
236 2006-01-14  Matthias Clasen  <mclasen@redhat.com>
237
238         * glib/gtree.c: Replace the simple recursive implementation
239         by a nonrecursive, threaded implementation by Maurizio 
240         Monge.  (#169285)
241
242 2006-01-12  Matthias Clasen  <mclasen@redhat.com>
243
244         * tests/asyncqueue-test.c (main): Fix the
245         assert to not always trigger.  (#326558, 
246         Daichi Kawahata)
247
248 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
249
250         * tests/convert-test.c: Don't test items_read and
251         items_written in error cases where it is not set.
252
253         * tests/asyncqueue-test.c: Set error to NULL.
254
255 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
256
257         * glib/gtree.c: Break some long lines.
258
259         * tests/tree-test.c: Add more tests.
260
261         * glib/gslice.c: Include config.h first, pointed out
262         by Bogdan Nicula.
263
264 2005-12-20  Sven Herzberg  <herzi@gnome-de.org>
265
266         * docs/reference/gobject/tmpl/gtype.sgml: explain that
267         G_TYPE_INSTANCE_GET_CLASS() does behave different during
268         initialization
269
270 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
271
272         * glib/gslice.c: Only define _XOPEN_SOURCE if we know
273         that we have posix_memalign().  (#323937, Bogdan Nicula)
274
275 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
276
277         * configure.in: Bump version
278
279         * === Released 2.9.2 ===
280
281 2006-01-05  Hans Breuer  <hans@breuer.org>
282
283         * glib/makefile.msc.in : added gslice.obj
284
285 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
286
287         * NEWS: Updates
288
289         * glib/gmain.c: Clarify the documentation of source ids
290         a bit.  (#325874, Dan Williams)
291
292         * configure.in: Fix another strict aliasing problem.
293
294         * glib/gthreadpool.c: Avoid use of varargs macro.  (#325864,
295         Kazuki IWAMOTO)
296
297 2006-01-04  Manish Singh  <yosh@gimp.org>
298
299         * glib/glib.symbols
300         * glib/gstdio.h: don't macroized g_access, g_chdir, and g_unlink
301         either, since they have the same issue as g_rmdir. (Related to
302         bug #325249)
303
304 Wed Jan  4 13:33:25 2006  Tim Janik  <timj@gtk.org>
305
306         * glib/gslice.c (magazine_cache_pop_magazine): don't reverse chunk 
307         order when creating magazines, so we hand out chunks with ascending
308         adresses.
309
310 2006-01-04  Abel Cheung  <maddog@linuxhall.org>
311
312         * configure.in: Added "ml" "zh_HK" to ALL_LINGUAS.
313
314 2006-01-03  Martyn Russell  <martyn@imendio.com>
315
316         * docs/reference/glib/glib-sections.txt:
317         * glib/glib.symbols:
318         * glib/gthreadpool.[ch]:
319         - Added new API g_thread_pool_get_idle_time() and
320         g_thread_pool_set_idle_time(). (#324228).
321         
322         * tests/threadpool-test.c: 
323         - Updated test case to do thread pool sorting, thread pool with
324         no sorting and a thread pool with idle thread timeouts.
325         
326 2006-01-03  Matthias Clasen  <mclasen@redhat.com>
327         
328         * glib/gmain.h: Add new functions here, too.
329
330         * glib/glib.symbols: Add new functions.
331
332 2005-12-20  Michael Meeks  <michael.meeks@novell.com>
333
334         * glib/gmain.c (g_main_context_is_owner): new method
335         to determine if the current thread is the owner of the
336         context.
337
338 2006-01-02  Matthias Clasen  <mclasen@redhat.com>
339
340         * glib/glib.symbols: 
341         * glib/gstdio.h: 
342         * glib/gstdio.c (g_rmdir): Don't provide g_rmdir() as a macro
343         expanding to rmdir, since rmdir is not declared in a portable
344         system header we can include in gstdio.h.  (#325249, Jani Monoses)
345
346 2006-01-01  Tor Lillqvist  <tml@novell.com>
347
348         * glib/gspawn-win32.c (g_spawn_sync_utf8): Set the GIOChannels for
349         stdout and stderr to unbuffered. Otherwise the giochannel layer
350         will try to read from them regardless whether the
351         g_io_channel_win32_poll() call here has indicated
352         readability or not. (#325310)
353
354 2005-12-29  Matthias Clasen  <mclasen@redhat.com>
355
356         * glib/gutils.c (glib_check_version): Fix a copy-and-paste error
357         in the docs.  (#325273, Declan Naughton)
358
359 2005-12-27  Manish Singh  <yosh@gimp.org>
360
361         * tests/run-collate-tests.sh: use LC_ALL instead of LC_COLLATE, to
362         make sure we really override things.
363
364 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
365         
366         Fix #316221, Michal Benes, Stanislav Brabec;
367
368         * configure.in: Fix a strict aliasing problem in 
369         g_static_mutex_get_mutex(). 
370         * glib/gthread.h: ...and in 
371         g_static_mutex_get_mutex_impl_shortcut().
372
373         * glib/gdatasetprivate.h: Add a cast to silence compiler
374         warnings.  (#321978, Andrew Paprocki)
375
376         Partial fix for bug #323937, Bogdan Nicula.
377
378         * configure.in: Check for malloc.h
379         * glib/gslice.c: Don't include malloc.h unconditionally.
380
381 2005-12-27  Manish Singh  <yosh@gimp.org>
382
383         * tests/run-collate-tests.sh: export LC_COLLATE so it takes.
384         (#324950, Dan Yefimov)
385
386 2005-12-26  Matthias Clasen  <mclasen@redhat.com>
387
388         * glib/gslice.c: On Win32, include process.h  (#325015, Kazuki
389         Iwamoto)
390
391 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
392
393         * AUTHORS: Update my email
394
395         * tests/slice-test.c: Fix C99isms.  (#324950, Dan Yefimov)
396
397 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
398         
399         * README.in: Add some notes on when 'make check' may fail.
400
401 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
402
403         * glib/glib.symbols: 
404         * glib/gthreadpool.h: 
405         * glib/gthreadpool.c (g_thread_pool_set_sort_function): New function
406         to sort tasks pushed into a threadpool.  (#324479, Martyn Russell)
407
408         * tests/threadpool-test.c: Test this.
409
410 Tue Dec 20 18:14:14 2005  Tim Janik  <timj@imendio.com>
411
412         * glib/gslice.[hc]: added mem_error() and mem_assert() to test and 
413         handle  errors without depending on gmessage.c which might not be
414         setup when the error occours.
415         removed G_SLICE_CONFIG_ALWAYS_FREE config option, fixed the code so
416         always freeing can be achieved by adjusting the working set time to
417         0 with G_SLICE_CONFIG_WORKING_SET_MSECS.
418         added G_SLICE_CONFIG_COLOR_INCREMENT to test different color increments
419         (mainly 0 and 1). reduced the minimum block size to 128 bytes, to
420         minimize wastage if small amounts of differently sized structrues are
421         allocated, this does come at a performance cost of roughly 5% though.
422         fixed up block alignment calculation, so it works for varying
423         block sizes. only use strerror() not g_strerror() since the latter
424         depends on working GQuark and GSlice.
425         mem_error(): implemented in terms of fprintf and vfprintf.
426
427         * tests/slice-color.c: new program to test cache colorization effects.
428
429         * tests/slice-test.c: trade G_SLICE_CONFIG_ALWAYS_FREE for 0 duration
430         G_SLICE_CONFIG_WORKING_SET_MSECS.
431
432 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
433
434         * glib/goption.c (parse_short_option): Set an error in all
435         failure cases.  (#324332, Tim-Philipp Müller) 
436
437 2005-12-17  Sebastian Wilhelmi  <seppi@seppi.de>
438
439         * glib/gatomic.c: Fix memory barrier position in g_atomic_int_get
440         and g_atomic_pointer_get. Add g_atomic_int_set and
441         g_atomic_pointer_set implementations for the !DEFINE_WITH_MUTEXES &&
442         G_ATOMIC_OP_MEMORY_BARRIER_NEEDED case, as well as defining them
443         as functions (additionally to the macros in the header) for the 
444         !G_ATOMIC_OP_MEMORY_BARRIER_NEEDED case.
445
446 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
447
448         *  glib/gmem.c (g_allocator_new): Don't return a pointer to
449         a const struct, since apps expect to be able to modify it. 
450         (#324179, J. Ali Harlow)
451
452 Tue Dec 13 10:13:32 2005  Tim Janik  <timj@imendio.com>
453
454         * glib/gatomic.h: added g_atomic_pointer_set() and g_atomic_int_set()
455         for systems where the initialization of atomic variables requires a
456         write memory barrier.
457
458 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
459
460         * configure.in: Bump version
461
462         * === Released 2.9.1 ===
463
464 2005-12-09  Alexander Larsson  <alexl@redhat.com>
465
466         * glib/glist.h: 
467         * glib/gslist.h:
468         Use G_GNUC_WARN_UNUSED_RESULT on list functions that return
469         the whole list.
470
471 2005-12-08  Matthias Clasen  <mclasen@redhat.com>
472
473         * NEWS: Updates
474
475 2005-12-07  Martyn Russell  <martyn@imendio.com>
476
477         * glib/gasyncqueue.c:
478         - Call g_queue_insert_sorted() instead of duplicating the code.
479         - Call g_queue_sort() instead of duplicating the code.
480         - Invert sort function results to make sure the same sort function
481         gives the same results across glist, gslist, gqueue and
482         gasyncqueue.
483
484         * tests/asyncqueue-test.c:
485         - Updated the sort function to reflect the example in the
486         documentation for gasyncqueue.c.
487
488 2005-12-07  Martyn Russell  <martyn@imendio.com>
489
490         * docs/reference/glib/glib-sections.txt:
491         * docs/reference/glib/tmpl/linked_lists_double.sgml:
492         * docs/reference/glib/tmpl/linked_lists_single.sgml:
493         * glib/glist.[ch]: 
494         * glib/gslist.[ch]: 
495         - Added g_list_insert_sorted_with_data () and
496         g_slist_insert_sorted_with_data ().
497         - Removed the extra check in g_list_sort() and g_slist_sort() for
498         GCompareDataFunc vs. GCompareFunc.
499         
500 2005-12-07  Tor Lillqvist  <tml@novell.com>
501
502         * glib-gettextize.in: Look up prefix at run-time on Win32,
503         assuming the standard directory structure with glib-gettextize in
504         $prefix/bin.
505
506 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
507
508         * glib/gmem.h: Exempt GTK+ from the mem chunk deprecation, since
509         we need GTK+ 2.8 to compile against GLib 2.10.
510
511 2005-12-05  Manish Singh  <yosh@gimp.org>
512
513         * tests/run-collate-test.sh: set LC_COLLATE, not LANG, to be sure
514         to override any user settings.
515
516 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
517
518         * configure.in: Revert an accidential commit
519
520 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
521
522         * glib/gutf8.c: Documentation updates.  (#323291, Morten Welinder)
523
524         * tests/Makefile.am (TESTS_ENVIRONMENT): 
525         * tests/gobject/Makefile.am (TESTS_ENVIRONMENT): Set
526         MALLOC_CHECK_ and MALLOC_PERTURB_
527
528         * tests/run-collate-tests.sh: Run the collation tests explicitly 
529         in en_US locale. (#320463)
530
531         * glib/gmem.h: Really deprecate GMemChunk.
532
533         * glib/gdate.c: 
534         * glib/gutils.c: 
535         * glib/gtree.c: 
536         * glib/gstring.c: 
537         * glib/giochannel.c: 
538         * glib/gstrfuncs.c: Add versioned deprecation docs. 
539
540 2005-12-05  Martyn Russell  <martyn@imendio.com>
541
542         * docs/reference/glib/glib-sections.txt:
543         * glib/gasyncqueue.[ch]:
544         - Added support for sorting async queues by with _push_sorted(),
545         _push_sorted_unlocked(), _sort() and _sort_unlocked() (#323047).
546         
547         * tests/Makefile.am:
548         * tests/asyncqueue-test.c:
549         - Added test case for gasyncqueue.c
550
551 Mon Dec  5 15:53:20 2005  Tim Janik  <timj@imendio.com>
552
553         * glib/gslice.c: implement chain walking for arbitrary ->next pointer
554         offsets in g_slice_free_chain_with_offset() based on a patch by behdad
555         in bug 323178. moved time consuming logic from g_slice_free() out of
556         the inner loop, so g_slice_free_chain_with_offset() provides a real
557         performance benefit over g_slice_free1() now.
558         
559         * glib/gslice.h: renamed g_slice_free_chain() to
560         g_slice_free_chain_with_offset(). implemented g_slice_free_chain() as
561         a type-safe macro as suggested in bug 323178.
562         simplified the macro implementation of g_slice_free() and implemented
563         it in a type safe manner for all compliers as suggested by Morten
564         Welinder <mortenw@gnome.org>.
565
566         * glib/gmain.c:
567         * glib/glist.c:
568         * glib/gslist.c:
569         * glib/glib.symbols: s/g_slice_free_chain/g_slice_free_chain_with_offset/
570
571 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
572
573         * glib/gasyncqueue.c: Add some docs.
574
575         * tests/libmoduletestplugin_a.c: Fix compiler warnings.
576
577         * glib/gatomic.c: In the ia64 implementation, use
578         __sync builtin without _si or _di suffix.  (#321229,
579         Stanislav Brabec, patch by Andreas Schwab)
580
581 2005-12-04  Behdad Esfahbod  <behdad@gnome.org>
582
583         * glib/gslice.h: Remove comma at the end of enum.
584
585 2005-12-04  Matthias Clasen  <mclasen@redhat.com>
586
587         Handle multiple user names with the same UID better.
588         (#319535, Laszlo Peter)
589         
590         * glib/gutils.c (g_get_any_init_do): When determining user
591         data, first look up $LOGNAME. If the UID doesn't match
592         getuid(), fall back to the current behaviour of looking
593         up the user data based on getuid().
594
595 2005-12-04  Matthias Clasen  <mclasen@redhat.com>
596
597         * glib/gmacros.h (G_GNUC_WARN_UNUSED_RESULT): Add a macro
598         to make gcc warn if a function result is ignored.  (#145466,
599         Arjan van de Ven, Alex Larsson)
600
601         * glib/gmem.h: Add the new attribute to g_realloc and 
602         g_try_realloc.
603
604 2005-12-03  Matthias Clasen  <mclasen@redhat.com>
605
606         * glib/glib.symbols: 
607         * glib/gcache.h: Deprecate g_cache_value_foreach. (#322956,
608         Nicolas Caniart)
609
610         * glib/gmappedfile.c: Make mapping of empty files
611         work.  (#321530)
612         
613         * glib/gfileutils.c: Don't fork a new process just to 
614         fix the permissions of the created temp file.  (#321318,
615         Alexis S. L. Carvalho)
616
617 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
618
619         * README.in: Add a note about Solaris threads.
620
621         * glib/gspawn.c:
622         * configure.in: Remove support for Solaris threads. 
623         (#136971, Sebastian Wilhelmi, patch by Andrew Paprocki)
624
625 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
626
627         * configure.in: Define G_GUINT64_CONSTANT in analogy to
628         G_GINT64_CONSTANT.  (#322568, Andrew Paprocki)
629
630 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
631
632         * glib/gslice.c: Win32 portability fixes and C99ism removal,
633         pointed out by Kazuki Iwamoto.  (#323052)
634         
635 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
636
637         * glib/gatomic.c (g_atomic_int_add): Add a missing volatile for
638         the IA64 implementation.
639
640 Fri Dec  2 16:18:09 2005  Tim Janik  <timj@imendio.com>
641
642         * glib/gslice.c: some naming and type size fixups.
643
644 Fri Dec  2 13:08:58 2005  Tim Janik  <timj@gtk.org>
645
646         * glib/gslice.h (g_slice_free): reworked GCC-specific type-safe macro
647         variant into something less verbose, but digestible for gcc-3.4.
648
649 Fri Dec  2 10:55:07 2005  Tim Janik  <timj@imendio.com>
650
651         * tests/slice-test.c: extended to perform the benchmarking on the old
652         memchunk code if 'O' is selected.
653
654         * tests/memchunks.c: new file which contains the old GLib mem chunks
655         implementation with prefix old_mem_chunk_.
656
657         * tests/Makefile.am: added memchunks.c
658
659 Fri Dec  2 00:16:59 2005  Tim Janik  <timj@imendio.com>
660
661         * glib/gslice.c: improved gettimeofday() timer resolution by maintaining
662         acceptable load distribution of the syscall.
663         (allocator_get_magazine_threshold): reduce minimum/single-thread magazine
664         sizes to approximately page_size/2.5 to avoid excessive startup allocations.
665
666 2005-12-01  Matthias Clasen  <mclasen@redhat.com>
667
668         * tests/gobject/ifacecheck.c (test_iface_base_init): Don't
669         double-free base interface members.
670
671         * tests/Makefile.am: Remove duplicate variable.
672
673 Thu Dec  1 17:32:46 2005  Tim Janik  <timj@imendio.com>
674
675         * glib/gslice.[hc]: new slice allocator implementation.
676
677         * tests/slice-test.c: added random slice allocation test.
678
679         * glib/gthread.[hc]: removed newly added private thread mem API.
680
681         * glib/gthreadinit.h:
682         * glib/gmessages.c:
683         * glib/gthread.c:
684         * glib/gmem.c: divided glib threading initialisation into three phases,
685         initialisation where private keys and messaging are not available (only
686         needed by gmem.c), initialisation without messaging but private keys
687         available (gslice.c, gmessage.c), and full fledged initialisers that
688         server the rest of glib. initialisation functions got renamed to reflect
689         the limitations of their corresponding phases.
690
691         * glib/gmem.c: removed memchunk code, defer allocations to 
692         g_slice_* instead.
693
694         * glib/gmem.[hc]: removed g_slice_* skeletons.
695
696         * glib/glib.symbols: added g_slice_* symbols.
697
698         * configure.in: check for availability of posix_memalign(3), memalign(3)
699         and valloc(3). 
700
701         * glib/Makefile.am: added gslice.[hc].
702
703 2005-12-01  Tor Lillqvist  <tml@novell.com>
704
705         * glib/gstdio.c (g_stat): In the Win32 implementation, strip
706         trailing slash(es) for non-root folders. stat() fails if non-root
707         folders are specified with trailing slashes. It's too much hassle
708         to demand that callers strip such slashes themselves, especially
709         as it is easy to get it wrong and strip the slash of a root
710         folder.
711         (g_rename): On NT-based Windows, use MoveFileEx() with
712         MOVEFILE_REPLACE_EXISTING to better match Unix behaviour.
713
714 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
715
716         Fix G_STMT_START / G_STMT_END on Solaris.  (#321972,
717         Andrew Paprocki)
718         
719         * configure.in: Check whether do { } while (0) works.
720
721         * glib/gmacros.h: Use do { } while (0) for G_STMT_START / 
722         G_STMT_END if it works.
723         
724 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
725
726         * glib/gthread.c (g_static_rw_lock_wait, g_static_rw_lock_signal): 
727         * glib/gnode.c (g_node_depth_traverse_level): 
728         * glib/gmem.c (g_allocator_new): 
729         * glib/ghash.c (g_hash_table_unref, g_hash_table_destroy) 
730         (g_hash_table_foreach_remove_or_steal): Silence compiler
731         warnings.
732
733 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
734
735         * glib/gunicollate.c (g_utf8_collate_key_for_filename): 
736         Don't read beyond len.  (#322520, Christian Persch)
737
738 Wed Nov 23 17:34:01 2005  Tim Janik  <timj@imendio.com>
739
740         * glib/gdataset.c: access datalist flags via atomic pointer access
741         functions, instead of acquiring the dataset lock. this is faster and
742         also matches the atomic pointer readouts in gdatalistprivate.h and
743         direct pointer modifications required by gobject.c.
744
745 Wed Nov 23 13:35:31 2005  Tim Janik  <timj@gtk.org>
746
747         * glib/gdataset.c: streamlined initialization code somewhat,
748         removed GData node cache.
749
750 2005-11-22  Matthias Clasen  <mclasen@redhat.com>
751
752         * glib/ghash.c (g_hash_table_ref): 
753         (g_hash_table_unref): Mark these as new API.
754
755         Avoid double locking in g_intern_string (#322133,
756         Benedikt Meurer)
757
758         * glib/gdataset.c (g_quark_from_string_internal): New 
759         internal function which factors out common parts of 
760         g_quark_from[_static]_string.
761         (g_quark_from_string, g_quark_from_static_string):
762         Use g_quark_from_string_internal.
763         (g_intern_string, g_intern_static_string): Use
764         g_quark_from_string_internal, and only take the
765         lock once.
766         (g_quark_new): Don't store the strings shifted by -1
767         in the g_quarks array.
768         (g_quark_to_string): Adapt to the previous change.
769
770 Tue Nov 22 14:04:26 2005  Tim Janik  <timj@imendio.com>
771
772         * glib/ghash.h: 
773         * glib/ghash.c: 
774         g_hash_table_new_full(): create hash tables with a ref count of 1.
775         g_hash_table_ref(): atomically ref_count+=1
776         g_hash_table_unref(): atomically ref_count-=1, destroys hash table
777         when refcount reaches 0.
778         g_hash_table_destroy(): just destroy keys and values, unref by 1.
779         g_hash_table_insert(): 
780         g_hash_table_replace(): assert ref_count>0.
781
782         * glib/gatomic.h: 
783         * glib/gatomic.c: added 'volatile' qualifier to all atomic pointer and
784         integer pointers.
785
786 2005-11-20  Behdad Esfahbod  <behdad@gnome.org>
787
788         * glib/guniprop.c (g_unichar_get_mirror_char): Remove unused
789         variables. (#321984, Andrew Paprocki)
790
791 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
792
793         * configure.in: Bump version
794
795 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
796
797         * === Released 2.9.0 ===
798
799         * glib/glib.symbols: Updates
800
801         * glib/gutf8.c (g_utf8_offset_to_pointer): Add some performance
802         hints to the docs. (Paolo Borelli)
803         
804         * NEWS: Updates
805
806         * glib/gthread.c (g_thread_foreach): Mark as new api.
807
808         * README.in: Updates.
809
810         * glib/glib.symbols: 
811         * glib/gdate.h: 
812         * glib/gdate.c (g_date_set_time_t): 
813         (g_date_set_time_val): Add functions to set a date from
814         a time_t and from a GTimeVal.
815         (g_date_set_time): Deprecate.  (#314067, Roger Leigh)
816         
817         * tests/Makefile.am:
818         * tests/utf8-pointer.c: Unit tests for g_utf8_pointer_to_offset
819         and g_utf8_offset_to_pointer.
820
821         * glib/gutf8.c (g_utf8_pointer_to_offset) 
822         (g_utf8_offset_to_pointer): Handle negative offsets, and use
823         "stutter stepping" for going backwards. (#320638, Larry
824         Ewing)
825
826         * glib/gbacktrace.c:
827         * glib/gdate.c:
828         * glib/gthread.c: const correctness fixes, found
829         by Arjan van de Ven and gcc.
830         
831 2005-11-16  Behdad Esfahbod  <behdad@gnome.org>
832
833         * docs/reference/glib/tmpl/unicode.sgml: Correct typo on mentioning
834         @G_UNICODE_BREAK_UNKNOWN that should be #G_UNICODE_BREAK_UNKNOWN.
835
836 2005-11-09  Behdad Esfahbod  <behdad@gnome.org>
837
838         * glib/guniprop.c: Use bit hacks instead when checking a general
839         category value against multiple values.
840
841         * glib/gutf8.c: Change ISO10646 to Unicode in docs.
842
843 2005-11-10  Simos Xenitellis  <simos@gnome.org>
844
845         * configure.in: Added tt (Tatar) to ALL_LINGUAS.
846
847 2005-11-05  Tor Lillqvist  <tml@novell.com>
848
849         * glib/giowin32.c (g_io_win32_set_flags): Don't call g_warning().
850         (#320688) Instead set error and return failure.
851
852 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
853
854         * glib/gmain.c (g_main_dispatch): Don't call cb_funcs->unref
855         while holding the context lock.  (#320886, Andy Wingo)
856
857 2005-11-07  Billy Biggs <vektor@dumbterm.net>
858
859         * tests/refcount/Makefile.am: Add a missing reference to libglib
860         in the LDADD for this test.
861
862 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
863
864         * glib/gmem.c (g_allocator_new): We need to set n_preallocs to a
865         nonzero value, otherwise GTK+ 2.8 breaks when compiled against
866         GLib 2.9.  (#320755, Luca Ferretti)
867
868 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
869
870         * glib/Makefile.am: Apply a patch from Behdad Esfahbod to 
871         use a faster lookup table for g_unichar_get_mirror_char().
872         * glib/gmirroringtable.h: The new table.
873         * glib/gunichartables.h: Remove bidi_mirroring_table.
874         * glib/gen-unicode-tables.pl: Don't generate the mirroring
875         table.
876         * glib/glib-mirroring-tab/*: Sources for the program
877         which generated gmirroringtable.h.
878
879         * glib/glist.c: Avoid some code duplication.
880
881         * glib/gscanner.h: Include gdataset.h.  (#320322)
882
883         * glib/gdebug.h: add new GDebugFlag for fatal_criticals
884         * glib/gmessages.c: (_g_debug_init): handle G_DEBUG=fatal_criticals,
885         to help find critical warnings in applications.  (#320017,
886         Vincent Untz)
887
888 2005-11-02  Tor Lillqvist  <tml@novell.com>
889
890         * glib/glib.symbols: Remove large amount of trailing whitespace
891         from one line. Remove #ifdef G_UNDEFINED from around
892         g_hash_table_new and g_hash_table_new_full symbols, what was the
893         purpose of that? Add the g_slice functions.
894
895 Tue Nov  1 16:24:20 2005  Tim Janik  <timj@imendio.com>
896
897         * glib/gmem.[hc]: prepared deprecation of GMemChunk and GAllocator.
898         added g_slice_*() API to allocate and cache small bits of memory.
899         an actuall allocator implementation for g_slice_*() is still pending.
900
901         * glib/gthread.[hc]: changes from a patch by Matthias Clasen.
902         changed GRealThread list to use in-structure *next; fields instead
903         of GSList, in order for thread iteration to not depenend on g_slice_*()
904         indirectly.
905         _g_thread_mem_private_get():
906         _g_thread_mem_private_set(): added accessors for private memory,
907         needed because the ordinary GPrivate implementation relies on GArray
908         and GSList and therefore indirectly on working g_slice_*() allocations.
909
910         * glib/gthread.[hc]:
911         g_thread_foreach(): new public API function to loop over all existing threads.
912
913         * glib/gdataset.c:
914         * glib/gstring.c:
915         * glib/gcache.c:
916         * glib/garray.c: 
917         * glib/gqueue.c:
918         * glib/gslist.c:
919         * glib/glist.c:
920         * glib/ghash.c:
921         * glib/gtree.c:
922         * glib/ghook.c:
923         * glib/gmain.c:
924         * glib/gnode.c:
925         removed GAllocator and free list usages and accompanying locks.
926         use g_slice_*() API to allocate and cache small bits of memory.
927
928         * glib/ghook.h: removed GMemChunk field from public API.
929
930         * glib/gslist.h:
931         * glib/glist.h: deprecate allocator API, provide _free1() for consistency.
932
933         * glib/gnode.h: deprecate allocator API.
934
935         * glib/gmain.c: reordered GPollRec fields so g_slice_free_chain() can
936         be used for poll rec lists.
937
938         * glib/grel.c: removed mem chunk usage, and allocated tuples via g_slice_*().
939         g_relation_destroy(): free all tuples from the all_tuples hash table,
940         this effectively maintains the life time track keeping of tuples.
941         g_relation_delete_tuple(): free tuples which are removed from the
942         all_tuples hash table. this fixes a temporary leak that was present
943         in the memchunk code until the destruction of the relation.
944
945 2005-10-29  Matthias Clasen  <mclasen@redhat.com>
946
947         * tests/convert-test.c: Add some tests for conversions between
948         UTF-8, UCS-4 and UTF-16.
949
950         * glib/gutf8.c (g_utf8_to_ucs4, g_utf8_to_utf16): Fix handling
951         of len == -1, noticed by Morten Welinder.
952
953 2005-10-27  Erdal Ronahi  <erdal.ronahi@gmail.com>
954
955         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
956
957 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
958
959         * glib/gutf8.c (g_ucs4_to_utf8): Don't set items_read twice
960         in the error case, and add some documentation.  (#319806, Morten
961         Welinder)
962
963 2005-10-19  Manish Singh  <yosh@gimp.org>
964
965         * configure.in: Use AC_CHECK_FUNCS for _NSGetEnviron, to get the
966         config.h symbol automatically. Fixes bug #313731.
967
968 2005-10-19  Tor Lillqvist  <tml@novell.com>
969
970         * glib/gwin32.c (g_win32_get_package_installation_directory):
971         Return a g_strdup()ed copy of the value stored in the hash table,
972         so that it can be g_free()d without leaving a dangling pointer in
973         the hash table. (#319232)
974
975 2005-10-06  Matthias Clasen  <mclasen@redhat.com>
976
977         * glib/gunicollate.c (g_utf8_collate_key_for_filename): Handle
978         all-zero sequences correctly.  (#317930, Sebastien Bacher)
979
980 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
981
982         * glib/gmarkup.c (g_markup_escape_text): Doc addition
983
984         * Makefile.am: Add Collation tests.
985
986         * tests/collate/*: Inputs and expected outputs for collation tests.
987
988         * tests/run-collate-tests.sh: Script to run collation tests.
989
990         * tests/unicode-collate.c (main): Rework slightly to make
991         it usable in unit tests. Also test g_utf8_collate_key_for_filename().
992
993 2005-10-01  Behdad Esfahbod  <behdad@gnome.org>
994
995         * docs/reference/glib/tmpl/unicode.sgml:
996         * glib/gen-unicode-tables.pl:
997         * glib/gunibreak.h:
998         * glib/gunichartables.h:
999         * glib/gunicode.h:
1000         * tests/casefold.txt:
1001         * tests/casemap.txt: Updated to Unicode 4.1.  There are five new
1002         GUnicodeBreakType types.  That may break some applications, like
1003         Pango <= 1.10.
1004
1005 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
1006
1007         * glib/gstrfuncs.c (g_ascii_strtoull): Add details to the 
1008         docs.  (#314393, Matthew F. Barnes)
1009
1010         * glib/glib.symbols:
1011         * glib/gprintf.h: Remove g_snprintf() and g_vsnprintf(), since
1012         they are already declared in glib.h. This doesn't break documented
1013         use of gprintf.h, but should probably be pointed out in the 
1014         release notes for 2.10. (#314232, Behdad Esfahbod)
1015
1016 Tue Sep 20 13:16:04 2005  Tim Janik  <timj@imendio.com>
1017
1018         * glib/gpattern.c (g_pattern_ph_match): applied significant recursion
1019         complexity optimization, based on a patch from Matthias Clasen.
1020
1021         * tests/patterntest.c: more tests, mostly from matthias.
1022
1023 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
1024
1025         * glib/gqueue.c (g_queue_insert_sorted): Correct the docs.
1026         (#316703, Mark Drago)
1027
1028 Mon Sep 19 17:23:23 2005  Tim Janik  <timj@imendio.com>
1029
1030         * glib/gpattern.c: applied a patch from matthias which checks on the
1031         upper bound of GPatternSpec length to optimize matches.
1032         cosmetic fixups.
1033
1034         * tests/patterntest.c: added more match cases.
1035
1036 2005-09-16  Tor Lillqvist  <tml@novell.com>
1037
1038         * glib/gstrfuncs.c (g_ascii_strcasecmp, g_ascii_strncasecmp): Add
1039         warning to doc comment that these functions should not be used on
1040         encodings like CP932.
1041
1042 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
1043
1044         * tests/keyfile-test.c: Add a test for grup names of length 1.
1045
1046         * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
1047         of length 1.  (#316309)
1048         
1049 2005-09-12  Matthias Clasen  <mclasen@redhat.com>
1050
1051         * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
1052
1053 2005-09-11  Sebastian Wilhelmi  <seppi@seppi.de>
1054
1055         * tests/refcount/Makefile.am (INCLUDES): Link the the refcount
1056         tests to the system thread library $(G_THREAD_LIBS). Fixes #313744
1057         and #314217.
1058
1059 2005-09-11  Kjartan Maraas  <kmaraas@gnome.org>
1060
1061         * glib/gmain.c: (g_child_watch_prepare), (g_child_watch_check),
1062         (child_watch_helper_thread): Remove some dead code. Closes
1063         bug #315278.
1064
1065 2005-09-07  Tor Lillqvist  <tml@novell.com>
1066
1067         * glib/Makefile.am: Create also a console version of the
1068         gspawn-win32-helper program, gspawn-win32-helper-console.exe.
1069         It's otherwise identical to gspawn-win32-helper.exe, except marked
1070         as a console application (linked without the -mwindows option).
1071         
1072         * glib/gspawn-win32.c (do_spawn_directly, do_spawn_with_pipes):
1073         Drop the dont_wait parameter. Its truth value correlated 100% with
1074         the NULLness of the exit_status parameter anyway, so it's enough
1075         to check whether exit_status is NULL. Invert the sense of the
1076         dont_return_handle parameter and rename it to do_return_handle, to
1077         make the code easier to read by avoiding double negations.
1078
1079         (g_spawn_sync_utf8, g_spawn_async_with_pipes_utf8): Modify calls
1080         to do_spawn_with_pipes() accordingly.
1081
1082         (do_spawn_with_pipes): If we have a console, use the console
1083         version of the helper program, otherwise use the GUI one. This
1084         avoids extra console windows opening up in some situations. (In
1085         case a console application uses the GUI gspawn-win32-helper.exe to
1086         spawn another console application we would get a separate console
1087         for the spawned console application).
1088
1089         * glib-zip.in: Distribute also gspawn-win32-helper-console.exe.
1090
1091 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
1092
1093         * glib/gmappedfile.c (g_mapped_file_new): Report an error
1094         if the file is too large.  (#315275, Kjartan Maraas)
1095
1096         * glib/gkeyfile.c (g_key_file_load_from_fd): The return value
1097         of read() is signed.  (#315273, Kjartan Maraas)
1098         
1099 2005-08-31  Tor Lillqvist  <tml@novell.com>
1100
1101         * glib/gutils.h: Wrapping atexit() is a bad idea on Windows, where
1102         the EXE and each DLL have their own atexit function chains.
1103
1104         #define g_atexit as atexit instead. This means it has a
1105         better chance of doing what the caller wants. For instance,
1106         gtkhtml calls g_atexit() registering a function in gtkhtml
1107         itself. This caused a crash when g_atexit() was implemented as a
1108         function in the GLib DLL. The gtkhtml DLL was already unloaded by
1109         the time the GLib DLL got unloaded.
1110
1111         * glib/gutils.c: #undef the #define mentioned above, to also get a
1112         real g_atexit() into the DLL for backward compatibility. Document
1113         the Windows behaviour of g_atexit(), and document the varying ways
1114         atexit() can behave in the context of dynamically loaded modules
1115         on Unix.
1116
1117 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
1118
1119         * glib/glib.symbols: 
1120         * glib/gquark.h: 
1121         * glib/gdataset.c: Add string interning functions.
1122
1123 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
1124
1125         * glib/giochannel.c: Unify some near-duplicate strings. (#314654,
1126         Clytie Siddall)
1127         
1128 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
1129
1130         * configure.in: Bump version to 2.9.0
1131
1132 2005-08-25  Tor Lillqvist  <tml@novell.com>
1133
1134         Make also the g_spawn*() functions take parameters in the GLib
1135         file name encoding, i.e. UTF-8, on Windows. Has no impact on Unix
1136         API or ABI. Like the other GLib API that was earlier changed to
1137         use UTF-8 on Windows, the names of the functions that take UTF-8
1138         have _utf8 suffixes added by using preprocessor macros in the
1139         header file. The old names are kept for functions with the old
1140         behaviour, taking parameters in the system codepage, for DLL ABI
1141         stability.
1142         
1143         * glib/gspawn.h: On Win32 add the suffix _utf8 to the names of the
1144         g_spawn*() functions.
1145         
1146         * glib/gspawn-win32.c: Use wide-char API on NT-based
1147         Windows. Convert parameters from UTF-8 to wide chars (NT) or
1148         system codepage (Win9x) and call the C library _wspawn*() or
1149         spawn*() functions respectvely. Add DLL ABI stability versions
1150         that take parameters in the system codepage.
1151
1152         * glib/gspawn-win32-helper.c: On NT-based Windows use the
1153         wide-char versions of argv and envp, and use wide-char API to
1154         change directory and spawn the program to run. Remove the verbose
1155         debugging output, it was too complex to modify for the wide-char
1156         features. (Just add temporary debugging printouts if needed, no
1157         need to have them permanently in the source.)
1158
1159         * glib/gspawn.c: Corresponding documentation updates.
1160
1161         * glib/glib.symbols: Corresponding changes: Mark the ABI stability
1162         symbols as PRIVATE, add the new _utf8-suffixed ones.
1163
1164 2005-08-24  Stepan Kasal  <kasal@ucw.cz>
1165
1166         * glib/gtypes.h (G_MININT64): Cast the constant to gint64; it is
1167         guint64 otherwise and that can produce warnings about comparison
1168         between signed and unsigned.
1169
1170 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
1171
1172         * glib/gutils.c: Fix the crt_externs.h include.
1173
1174 2005-08-23  Stepan Kasal  <kasal@ucw.cz>
1175
1176         * NEWS: Fix spelling of my first name.
1177
1178 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
1179
1180         * Bump version
1181
1182         * === Released 2.8.1 ===
1183
1184         * NEWS: Updates
1185
1186 2005-08-20  Hans Breuer  <hans@breuer.org>
1187
1188         * glib/makefile.msc.in : link with ws2_32.lib
1189
1190 2005-08-18  Tor Lillqvist  <tml@novell.com>
1191
1192         * configure.in: Check for <sys/wait.h>
1193
1194         * glib/gbacktrace.c: Include <sys/wait.h> on if HAVE_SYS_WAIT_H.
1195
1196 2005-08-18  Ross Burton  <ross@burtonini.com>
1197
1198         * glib/gstring.c:
1199         Optimise single-character insertions.
1200         
1201         * glib/gutf8.c:
1202         Note copied code.
1203         
1204         * tests/string-test.c:
1205         Add tests for new optimisation, and fix a leak.
1206
1207 2005-08-17  Matthias Clasen  <mclasen@redhat.com>
1208
1209         * configure.in: Check for crt_externs.h and _NSGetEnviron.
1210
1211         * glib/gutils.c: On Darwin, include crt-externs.h and
1212         define environ using _NSGetEnviron().  (#313731)
1213
1214 2005-08-16  Stepan Kasal  <kasal@ucw.cz>
1215
1216         * glib/gutils.c (g_get_any_init): Move the body of the big if...
1217         (g_get_any_init_do): ... to this new function.
1218         (g_get_any_init): Declare as inline.
1219         (g_get_any_init_locked): New inline function, does the locking.
1220         Make use of these two throughout the code.
1221
1222 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1223
1224         * glib/gbacktrace.c (g_on_error_stack_trace): Wait for
1225         the child process and then simply return. This makes 
1226         The "S" option work as documented in g_on_error_query().
1227         (#313125, Matthew F. Barnes)
1228
1229         * glib/gunicode.h: Update the link to Unicode category
1230         values.  (#313369, Behnam Esfahbod)
1231
1232         * glib/gqueue.c (g_queue_find_custom): Clarify docs
1233         a little.  (#311727, Tristan van Berkom)
1234
1235         * glib/abicheck.sh, gobject/abicheck.sh: Make the 
1236         check work on ia64 too, where some symbols ended up 
1237         in yet another section.
1238