25c684a0d12458ce2900640225b30d68145d1319
[platform/upstream/glib.git] / ChangeLog.pre-2-4
1 Sat Mar 13 23:30:53 2004  Owen Taylor  <otaylor@redhat.com>
2
3         * glib/gmacros.h (G_STMT_START): Add __extension__
4         to G_STMT_START to quite gcc -pedantic. (#131899,
5         Olivier Biot)
6
7 Sat Mar 13 23:18:45 2004  Owen Taylor  <otaylor@redhat.com>
8
9         * tests/env-test.c (main): Remove critical log handler;
10         we can't trigger g_return_if_fails() in our test suite
11         even silently, because the user could have compiled
12         with --disable-debug. #if 0 the tests for
13         g_setenv/g_unsetenv with a "foo=bar" variable name.
14         (#136709, reported by Frédéric L. W. Meunier)
15
16 Sat Mar 13 23:10:35 2004  Owen Taylor  <otaylor@redhat.com>
17
18         Some warning fixes for the Sun compiler (Reported by 
19         David L. Cooper II, #136401)
20
21         * glib/giochannel.c (g_io_channel_read): Return
22         G_IO_ERROR_NONE, not G_IO_STATUS_NORMAL, since hte
23         function returns a GIOError.
24
25         * glib/guniprop.c: Fix some guchar/gchar confusion
26         with special_case_table.
27
28 Fri Mar 12 15:30:58 2004  Manish Singh  <yosh@gimp.org>
29
30         * glib/gbacktrace.h: ia32's G_BREAKPOINT() implementation works on
31         amd64 too. Enable it.
32
33 Fri Mar 12 15:21:22 2004  Manish Singh  <yosh@gimp.org>
34
35         * glib/gatomic.c: Non-optimizing compile fails for two asm
36         statements on PowerPC. Use generic implementaton for those
37         cases. Spotted by Christof Petig <christof@petig-baender.de>,
38         fix by Sebastian Wilhelmi. Bug #137006 has a possible alternate
39         solution, but we'll be conservative for now.
40
41 Thu Mar 11 02:05:13 2004  Matthias Clasen  <maclas@gmx.de>
42
43         * glib/gmain.c (g_main_depth): Remove an extra semicolon.
44         Spotted by Kjartan Maraas.
45
46 2004-03-10  Tor Lillqvist  <tml@iki.fi>
47
48         * glib/gspawn-win32.c
49         * glib/gspawn-win32-helper.c: Implement
50         G_SPAWN_FILE_AND_ARGV_ZERO. (#136792, Bruce Hochstetler)
51
52         * tests/spawn-test.c
53         * tests/spawn-test-win32-gui.c: Test it.
54
55 Tue Mar  9 09:16:11 2004  Owen Taylor  <otaylor@redhat.com>
56
57         * === Released 2.3.6 ===
58
59         * configure.in: Version 2.3.6, interface age 1.
60
61         * NEWS: Updates
62
63 2004-03-09  Sebastian Wilhelmi  <seppi@seppi.de>
64
65         * tests/child-test.c: Do not run the g_child_watch_* test
66         multi-threaded, as that doesn't work on linux prior 2.6. Fixes
67         #136539.
68
69 2004-03-08 Alastair McKinstry <mckinstry@computer.org>
70
71         * configure.in: Added "ga" (Irish) to ALL_LINGUAS.
72
73 2004-03-07  Danilo Šegan  <dsegan@gmx.net>
74
75         * configure.in: Added "sr@ije" to ALL_LINGUAS.
76
77 2003-03-07  Hans Breuer  <hans@breuer.org>
78
79         * glib/gspawn-win32.c : (GPid)shortcut_spawn_retval which
80         doesn't improve the implementation at all, it just make it 
81         compile with msvc ...
82
83         * glib/makefile.msc.in : build gatomic.c (now really:)
84         
85 2004-03-06  Tor Lillqvist  <tml@iki.fi>
86
87         * README.win32: Update.
88
89         * configure.in
90         * Makefile.am
91         * */Makefile.am: Drop the hand-written makefile.mingw(.in)
92         files. They haven't been maintained in a long time. As several
93         people have managed to build GLib for Win32 using the
94         autoconfiscation mechanism, there is no real reason to even try to
95         maintain the hand-written mingw makefiles.
96
97 2004-03-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
98
99         * glib/gatomic.c: Fix infinite recursion for
100         G_MEMORY_BARRIER_NEEDED and DEFINE_WITH_MUTEXES by using a GMutex
101         instead of G_DEFINE_LOCK. The mutex is allocated by the new
102         function _g_atomic_thread_init. Fixes #136284.
103
104         * glib/gthreadinit.h, glib/gthread.c: Declare and call
105         _g_atomic_thread_init during thread system initialization.
106  
107 2004-03-05  Tor Lillqvist  <tml@iki.fi>
108
109         * glib/glib.def: Add g_main_depth. (#136221, Cedric Gustin)
110
111 2004-03-04  Guntupalli Karunakar  <karunakar@freedomink.org>
112
113         * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.
114
115 2004-03-04  Sebastian Wilhelmi  <seppi@seppi.de>
116
117         * glib/gmain.c: Use the atomic integer operations for GMainContext
118         and GMainLoop reference counting.
119
120         * glib/gmain.c: Hold the main_context_list lock, when iterating
121         the list. Only call g_main_context_wakeup for positive reference
122         count.
123
124 2004-03-03  Tor Lillqvist  <tml@iki.fi>
125
126         * glibconfig.h.win32.in: Update to match a configure-generated
127         glibconfig.h. Specifically: Remove G_{MIN,MAX,MAXU}INT64
128         definitions (now in gtypes.h). Remove g_once and
129         g_static_mutex_get_mutex_impl_shortcut definitions (now in
130         gthread.h).
131
132         * tests/child-test.c: Use a macro GPID_FORMAT for the format to
133         print GPid in (%p on Win32, %d on Unix). Maybe configure.in should
134         place that in glibconfig.h?
135
136         Print verbose error message if CreateProcess() fails.
137
138         Don't close the child handle until in the child watch callback.
139
140         Don't try to run /bin/true on Win32. Run ipconfig instead (just to
141         pick a program that should exist on all Window boxes).
142
143 2004-03-02  Sebastian Wilhelmi  <seppi@seppi.de>
144
145         * glib/gatomic.c: Fixed missing definition for ppc code. Fix by
146         Mark McLoughlin <mark@skynet.ie>.
147
148 Mon Mar  1 16:49:51 2004  Owen Taylor  <otaylor@redhat.com>
149
150         * === Released 2.3.5 ===
151
152         * configure.in: Version 2.3.5, interface ago 0.
153
154         * NEWS: Some further updates.
155
156 Mon Mar  1 15:49:09 2004  Owen Taylor  <otaylor@redhat.com>
157
158         * glib/gmain.c (check_for_child_exited): Don't
159         call waitpid() on a source that has already exited.
160
161         * glib/gmain.c (g_child_watch_check): Return TRUE
162         only if the child actually exited.
163
164 Mon Mar  1 15:39:57 2004  Owen Taylor  <otaylor@redhat.com>
165
166        Patch from J. Ali Harlow
167
168         * configure.in: Use void * not HANDLE for GPid on win32.
169
170         * glib/gspawn.[ch] glib/gspawn-win32.[ch] glib/glib.def: 
171         Add g_spawn_close_pid().
172         
173         * glib/gspawn.[ch]: Make g_spawn functions take
174         GPid * instead if int * (GPid == int on unix, will
175         produce compile warnings until fixed on Win32.)
176
177         * tests/child-test.c: Make the test a little more
178         inappropriately verbose.
179
180         * glib/gmain.c: Add some documentation warnings about
181         not closing @pid while the source is active.
182
183 Mon Mar  1 20:32:06 2004  Tim Janik  <timj@gtk.org>
184
185         * autogen.sh:
186         - exit with $? instead of 1 in case of failure
187         - exit with $? if ./configure failed
188           (that's so autogen.sh && make lines work)
189         - removed --enable-gtk-doc option
190         - added $AUTOGEN_CONFIGURE_ARGS
191
192 Mon Mar  1 09:17:32 2004  Owen Taylor  <otaylor@redhat.com>
193
194         * glib/gmain.c (g_main_depth): Clarify doc comment.
195
196 2004-03-01  Sebastian Wilhelmi  <seppi@seppi.de>
197
198         * glib/gatomic.c: Define g_atomic_(int|pointer)_get only for
199         G_ATOMIC_OP_MEMORY_BARRIER_NEEDED. Spotted by Hans Breuer.
200
201 Sun Feb 29 21:42:47 2004  Owen Taylor  <otaylor@redhat.com>
202
203         * glib/gmain.c: Fix leftover references to 
204         g_main_context_depth() in docs.
205
206 Sun Feb 29 21:34:34 2004  Owen Taylor  <otaylor@redhat.com>
207
208         * glib/gmain.[ch]: Add g_main_depth() (Request from
209         Tim Janik and Stefan Westerfeld)
210
211 Mon Mar  1 00:26:11 2004  Matthias Clasen  <maclas@gmx.de>
212
213         * NEWS: Update for 2.3.4
214
215 2003-02-29  Hans Breuer  <hans@breuer.org>
216
217         * glib/gatomic.c : added win32 api based implementation
218         for G_PLATFORM_WIN32, !__GNUC__
219
220         * glb/glib.def : change to g_atomi_* no _fallback
221
222 2004-02-29  Sebastian Wilhelmi  <seppi@seppi.de>
223
224         * configure.in, glib/gatomic.c, glib/gatomic.h: Moved the
225         assembler functions from gatomic.h to gatomic.c, which makes for
226         better maintainability. Also use gint instead of gint32 to be able
227         to use reference counting for ABI-fixed structures with
228         gint/guint.
229
230         * glib/gthread.h: Adapted accordingly.
231
232         * tests/atomic-test.c: Updated to test for G_MAXINT and G_MININT.
233
234 2003-02-28  Hans Breuer  <hans@breuer.org>
235
236         * glib/glib.def : updated externals, including those
237         from bug #135386
238
239         * glib/makefile.msc.in : build gatomic.c
240
241         * glibconfig.h.win32.in : removed duplicate definition
242         of G_MAXSIZE, typedef void* GPid instead of int
243
244         * tests/child-test.c  glib/gmain.c : 
245         applied patch from J. Ali Harlow <ali@juiblex.co.uk> to fix 
246         g_child_watch implementation on win32, bug #50296
247
248 Fri Feb 27 22:13:22 2004  Matthias Clasen  <maclas@gmx.de>
249
250         * glib/gqueue.c: Trivial doc changes.
251
252 Fri Feb 27 21:58:20 2004  Matthias Clasen  <maclas@gmx.de>
253
254         * glib/ghash.c (g_hash_table_find): Add "Since: 2.4"
255
256 2004-02-27  Sebastian Wilhelmi  <seppi@seppi.de>
257
258         * glib/gasyncqueue.c, glib/gasyncqueue.h: Use
259         g_atomic_int_(inc|dec_and_test) for reference
260         counting. g_async_queue_unref_and_unlock and
261         g_async_queue_ref_locked is deprecated, but still there to
262         preserve ABI.
263
264         * glib/gasyncqueue.c, glib/gasyncqueue.h: Reading access to
265         ref_count only with g_atomic_int_get().
266
267 Fri Feb 27 02:00:34 2004  Matthias Clasen  <maclas@gmx.de>
268
269         * acglib.m4: quote AC_DEFUN macro names so automake
270         1.8 won't whine at us.  (#134882)
271
272 Fri Feb 27 01:44:41 2004  Matthias Clasen <maclas@gmx.de>
273
274         * glib/gdate.c: Translate from locale era to AD in 
275         g_date_set_parse().  (#133400, Theppitak Karoonboonyanan)
276
277 Fri Feb 27 00:46:29 2004  Matthias Clasen  <maclas@gmx.de>
278
279         * glib/gstrfuncs.c (g_strerror): Don't modify errno.  (#116617, 
280         Balazs Scheidler)
281
282 2004-02-26  Sebastian Wilhelmi  <seppi@seppi.de>
283
284         * glib/gatomic.h: Fix the !G_THREADS_ENABLED case.
285
286         * tests/child-test.c (main): Only run, if threads are enabled.
287
288         * glib/gatomic.h: empty G_ATOMIC_MEMORY_BARRIER() definition for
289         !G_THREADS_ENABLED
290
291         * glib/gthread.h: Define g_once and
292         g_static_mutex_get_mutex_impl_shortcut in terms of
293         G_MEMORY_BARRIER, if defined and if we can inline.
294
295         * configure.in: Remove double checked locking feature check.
296
297         * configure.in, config.h.win32.in, glib/gthread.c: Removed the PID
298         niceness surrogate for thread priorities as requested by Tim. It
299         does more harm than good.
300
301         * glib/gatomic.c, glib/gatomic.h: New files to implement atomic
302         operations for different platforms. Fixes bug #63621.
303
304         * glib/glib.h: Include gatomic.h.
305
306         * configure.in: Add test for assembler routines for atomic operations.
307
308         * glib/Makefile.am: Add gatomic.c, gatomic.h.
309
310         * tests/Makefile.am, tests/atomic-test.c: Unit test for atomic
311         operations.
312
313 2003-02-26  Hans Breuer  <hans@breuer.org>
314
315         * glib/glib.def : added g_hash_table_find and a
316         bunch of g_queue_*
317
318         * glib/gmain.c : make it compile on win32, 
319         child_wake_up_pipe replaced by semaphore like it is done
320         for the other wake_up_pipe
321
322         * config.h.win32.in : added HAVE_INT64_AND_I64
323         * glibconfig.h.win32.in : G_MAXSIZE .. G_M??INT64,
324         and typedef for GPid
325
326         * test/env-test.c : don't let the local log function
327         collide in namespace with standard C
328
329 2004-02-25  Sebastian Wilhelmi  <seppi@seppi.de>
330
331         * configure.in, glib/gthread.c: For the PID thread priorities
332         surrogate use gettid instead of getpid. This also works with nptl
333         (on linux-2.6), as well as with linuxthreads (on linux-2.4).
334
335 2004-02-24  Sebastian Wilhelmi  <seppi@seppi.de>
336
337         * glib/grand.c: Add Since: 2.4, where due
338
339 Tue Feb 24 14:09:21 2004  Owen Taylor  <otaylor@redhat.com>
340
341         * === Released 2.3.3 ===
342
343         * configure.in: Version 2.3.3, interface age 0.
344
345 Mon Feb 23 22:24:00 2004  Matthias Clasen  <maclas@gmx.de>
346
347         * NEWS: Start of 2.3.3 section.
348
349 Sun Feb 22 02:32:14 2004  Matthias Clasen  <maclas@gmx.de>
350
351         * configure.in: Set the gmodule suffix to 'a' for aix and 
352         use the aix gmodule implementation.  (#85930, Laurent Vivier)
353
354 Sun Feb 22 00:47:04 2004  Matthias Clasen  <maclas@gmx.de>
355
356         * glib/gnode.c (g_node_copy_deep): New function to deep-copy a 
357         GNode and its children.  (#93464, James M. Cape)
358
359 Sat Feb 21 15:42:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
360
361         * glib/gqueue.c: Some documentation fixes.
362
363 Sat Feb 21 13:45:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
364
365         * glib/gqueue.[ch]: Extend GQueue API to match the GList
366         API. (#78414).
367
368         * tests/queue-test.c: Update test suite to cover the new API.
369
370 Fri Feb 20 03:02:05 2004  Tim Janik  <timj@gtk.org>
371
372         * glib/ghash.[hc]: applied patch from #131937 with slight
373         renames. provides g_hash_table_find().
374
375 Fri Feb 20 02:39:03 2004  Tim Janik  <timj@gtk.org>
376
377         * applied patch from David Schleef <ds@schleef.org> which implements
378         a G_MODULE_BIND_LOCAL flag to g_module_open() to disable global
379         symbol registration.
380
381 Thu Feb 19 18:40:01 2004  Tim Janik  <timj@gtk.org>
382
383         * glib/gstring.[hc]: for G_CAN_INLINE environments, inline
384         g_string_append_c() for efficiency. (vaguely based on #118707).
385
386 Wed Feb 18 23:57:42 2004  Matthias Clasen  <maclas@gmx.de>
387
388         * glib/gmain.c: Include signal.h for SIGCHLD.  (#134622, Damien
389         Carbery)
390
391 2004-02-18  Sebastian Wilhelmi  <seppi@seppi.de>
392
393         * glib/gasyncqueue.c: Lazy creation of GCond. Only
394         signal GCond, if threads are waiting.
395
396         * glib/gmain.c (g_main_context_new): Set context->wake_up_pipe
397         only for G_THREADS_ENABLED.
398
399 Sat Feb 14 11:05:26 2004  Manish Singh  <yosh@gimp.org>
400
401         * configure.in: Remove unnecessary STRIP_* definitions, and GNU
402         make check. Really fixes #134102.
403
404 Sat Feb 14 02:11:08 2004  Matthias Clasen  <maclas@gmx.de>
405
406         * configure.in: Make the check for GNU make work when MAKE is a 
407         full path.  (#134102, Julio M. Merino Vidal)
408
409 Sat Feb 14 02:08:03 2004  Matthias Clasen  <maclas@gmx.de>
410
411         * configure.in: Suppress xsltproc and xmlcatalog checks
412         if enable_man=no.  (#134091, Julio M. Merino Vidal)
413
414 Sat Feb 14 01:21:34 2004  Matthias Clasen  <maclas@gmx.de>
415
416         * glib/gmain.h: 
417         * glib/gmain.c (g_child_watch_source_new): 
418         * glib/gmain.c (g_child_watch_add): 
419         * glib/gmain.c (g_child_watch_add_full): Wrap waitpid() as a
420         GSource. This is a partial implementation of the "Unix signal 
421         source".  (#50296, Jonathan R. Blandford)
422
423         * configure.in: Add the necessary configury to typedef GPid
424         appropriately.
425
426         * tests/Makefile.am:
427         * tests/child-test.c: Test child_watch sources.
428
429 Sat Feb  7 15:02:01 2004  Manish Singh  <yosh@gimp.org>
430
431         * tests/type-test.c: Fix broken test for gsize formats.
432
433 2004-02-05  Robert Sedak  <robert.sedak@sk.htnet.hr>
434
435         * configure.in: Added "hr" (Croatian) to ALL_LINGUAS.
436
437 Wed Feb  4 17:58:51 2004  Manish Singh  <yosh@gimp.org>
438
439         * glib/gcompletion.h: Add prototype for g_completion_complete_utf8().
440
441         * tests/completion-test.c: #include <string.h>
442
443 2004-02-05  Tor Lillqvist  <tml@iki.fi>
444
445         * glib/glib.def: Add g_completion_complete_utf8.
446
447 Thu Feb  5 01:19:12 2004  Matthias Clasen  <maclas@gmx.de>
448
449         * tests/file-test.c (test_mkstemp): Weaken an g_assert() to a 
450         g_warning(), since apparently nothing in Posix forces mkstemp()
451         to reject templates without any X's.  (#133397)
452
453 Thu Feb  5 00:56:28 2004  Matthias Clasen  <maclas@gmx.de>
454
455         * glib/gcompletion.c (g_completion_complete_utf8): New function which
456         works like g_completion_complete(), but strips a trailing incomplete
457         UTF-8 character from the prefix.  (#133313, Theppitak Karoonboonyanan)
458
459         * tests/completion-test.c (main): Some GCompletion tests.
460
461         * tests/Makefile.am: Add completion-test.
462
463 2004-02-01  Tor Lillqvist  <tml@iki.fi>
464
465         * glib/glib.def: Add g_strsplit_set.
466
467 Sat Jan 31 03:13:56 2004  Matthias Clasen  <maclas@gmx.de>
468
469         * glib/garray.c (g_byte_array_remove_range): Don't return FALSE
470         from a pointer function.  (#131472, Morten Welinder)
471
472 2004-01-30  Noah Levitt  <nlevitt@columbia.edu>
473
474         * glib/gunicomp.h:
475         * glib/gunidecomp.c:
476         * glib/gen-unicode-tables.pl: Size compose_table correctly. (#123421,
477         Simon Josefsson)
478
479         * glib/gen-unicode-tables.pl: Get rid of some new warnings from perl
480         5.8.1.
481
482 Tue Jan 27 18:45:47 2004  Manish Singh  <yosh@gimp.org>
483
484         * m4macros/glib-2.0.m4
485         * m4macros/glib-gettext.m4: quote AC_DEFUN macro names so automake
486         1.8 won't whine at us.
487
488 Wed Jan 28 01:39:21 2004  Matthias Clasen  <maclas@gmx.de>
489
490         * glib/gstrfuncs.h: 
491         * glib/gstrfuncs.c (g_strsplit_set): New function, a cross 
492         between g_strsplit() and strtok().  (#88329, Soeren Sandmann)
493
494         * tests/strfunc-test.c (main): Add g_strsplit_set() tests.
495         
496 Fri Jan 23 22:49:52 2004  Matthias Clasen  <maclas@gmx.de>
497
498         * glib/gutils.c (g_get_any_init): Sigh, protect against
499         pw->pw_gecos being "" as well.  (#132317, Kaj-Michael Lang)
500         
501 2004-01-23  Tor Lillqvist  <tml@iki.fi>
502
503         * glib/glib.def: Add new functions.
504
505         * glib/grand.c: Don't include <unistd.h> unless
506         HAVE_UNISTD_H. Include <process.h> on G_OS_WIN32.
507         (g_rand_new): Use getppid() only on G_OS_UNIX.
508
509 Thu Jan 22 15:16:11 2004  Owen Taylor  <otaylor@redhat.com>
510
511         * === Released 2.3.2 ===
512
513 Thu Jan 22 13:55:44 2004  Owen Taylor  <otaylor@redhat.com>
514
515         * glib/gtimer.c: Add g_timer_continue().
516         (#98536, Tim-Philipp Müller)
517
518         * configure.in: Version 2.3.2, interface age 0.
519
520         * NEWS: tweak, finish.
521
522 Thu Jan 22 20:50:55 2004  Matthias Clasen  <maclas@gmx.de>
523
524         * glib/gutils.c (g_get_any_init): Protect against
525         pw->pw_gecos being NULL.
526
527 Thu Jan 22 00:41:34 2004  Matthias Clasen  <maclas@gmx.de>
528
529         * glib/gutils.c (g_get_any_init): Don't treat the Win32
530         user name like a gecos field, and when extracting a real
531         name from a gecos field, replace '&' by the capitalized
532         user name (a traditional passwd feature).  
533         (#118973, reported by Soeren Boll Overgaard)
534
535 Tue Jan 20 22:31:22 2004  Matthias Clasen  <maclas@gmx.de>
536
537         * NEWS: Start of 2.3.2 section.
538
539 Fri Jan 16 21:45:56 2004  Matthias Clasen  <maclas@gmx.de>
540
541         * glib/gstring.c (g_string_ascii_up): Forgot to fix this one.
542
543 Thu Jan 15 22:35:04 2004  Matthias Clasen  <maclas@gmx.de>
544
545         * glib/gstring.c (g_string_up): 
546         * glib/gstring.c (g_string_down): 
547         * glib/gstring.c (g_string_ascii_down): Move initialization of
548         variables after g_return_val_if_fail.  (#131564, Olivier Poncet)
549
550 Sun Jan 11 16:13:20 2004  Manish Singh  <yosh@gimp.org>
551
552         * configure.in: Add G_MAXSIZE, define in terms of G_MAXUfoo.
553
554         * tests/type-test.c: Add test for G_MAXSIZE.
555
556         * glibconfig.h.win32.in: Cleanup, add some missing bits.
557
558 Sun Jan 11 16:05:35 2004  Manish Singh  <yosh@gimp.org>
559
560         * glib/giounix.c: #define _POSIX_SOURCE for SSIZE_MAX. Fixes #128853.
561
562 Sat Jan 10 00:11:12 2004  Manish Singh  <yosh@gimp.org>
563
564         * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness
565         fixes.
566
567         * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the
568         above take gulongs now. My docs suck, someone should revisit it.
569
570 Fri Dec 19 11:49:21 2003  George Lebl <jirka@5z.com>
571
572         * glib/grand.c
573           glib/grand.h (g_rand_new) (g_rand_new_with_seed)
574           (g_rand_new_with_seed_array) (g_rand_set_seed_array):  Add
575           the init_by_array functionality from the reference implementation
576           of the mersenne twister (mt19937ar.c) and change the naming
577           to fit with the rest of the grand API.  New functions are
578           g_rand_new_with_seed_array, g_rand_set_seed_array.  This is only
579           reliable/tested for the 2.2 version of the seeding as that's what
580           the reference implementation uses.  Also modify g_rand_new to
581           get 4 longs from /dev/urandom since that will always be available
582           anyway and we get more entropy and if /dev/urandom is unavailable
583           use also 4 longs for seeding using secs, usecs, getpid and getppid.
584           For version 2.0 use only a simple seed again but be more careful
585           about seeding with secs/usecs in this case.
586
587         * glib/grand.c
588           glib/grand.h (g_rand_copy):  Add g_rand_copy function to copy the
589           current state of the random number generator.
590
591         * glib/grand.c (g_rand_new):  Add testing for EINTR when reading
592           from /dev/urandom
593
594         * tests/rand-test.c: add testing of the array seeding stuff against
595           the reference implementation, plus add statistical sanity check
596           to see that the values outputted are truly kind of random.  And
597           check that g_rand_copy truly copies the state by checking a few
598           terms.
599
600 Tue Jan  6 15:38:30 2004  Owen Taylor  <otaylor@redhat.com>
601  
602         * glib/gutils.h: Check defined (__OPTIMIZE__) not
603         __OPTIMIZE__. (Zack Rusin)
604  
605 2003-12-30  Murray Cumming  <murrayc@usa.net>
606   
607         * gobject/glib-mkenums.in: Added a lowercase_name option, to be used
608         next to the enum declaration, where the flag option is already used,
609         when it is not possible to guess where to put the underscores in the
610         _get_type() function name, for instance for GNOMEVFSURIHide.
611
612 Fri Dec 26 02:03:58 2003  Matthias Clasen  <maclas@gmx.de>
613
614         * glib/garray.[hc] (g_ptr_array_foreach): New function to
615         call a function for each element of a GPtrArray.  (#114790)
616
617         * tests/array-test.c (main): Add a test for g_ptr_array_foreach().
618
619 Sun Dec 21 22:57:58 2003  Matthias Clasen  <maclas@gmx.de>
620
621         * m4macros/glib-gettext.m4: Quote macro names to support 
622         reading the file multiple times.  (#125537)
623
624 Sun Dec 21 22:42:42 2003  Matthias Clasen  <maclas@gmx.de>
625
626         * glib/gmem.c (g_mem_chunk_destroy): Fix the locking of the
627         mem_chunks list.  (#127096, Balazs Scheidler)
628
629 2003-12-14  Hans Breuer  <hans@breuer.org>
630
631         * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE)
632         return something useful on win32, too. 
633
634 2003-12-13  Hans Breuer  <hans@breuer.org>
635
636         * glib/gconvert.c : get_filename_charset() needs to
637         return false for filenames not encoded in utf-8, 
638         which is always true on win32
639
640         * glibconfig.h.win32.in : (u)int64 modifier isn't the
641         gcc 'll' but always the msvcrt one 'I64'
642
643         * glib/glib.def : updated
644
645 Thu Dec 11 10:31:21 2003  Manish Singh  <yosh@gimp.org>
646
647         * glib/gmacros.h: change #elif with no expression to #else in
648         G_STRFUNC definition. Thanks to Damien Carbery, fixes #129101.
649
650 Mon Dec  8 12:02:40 2003  Owen Taylor  <otaylor@redhat.com>
651
652         * === Released 2.3.1 ===
653
654         * NEWS: Further updates for 2.3.1.
655
656 Fri Dec  5 12:09:13 2003  Manish Singh  <yosh@gimp.org>
657
658         * glib/gunidecomp.c (_g_utf8_normalize_wc): fix gint/gsize confusion.
659
660 2003-12-04  Noah Levitt  <nlevitt@columbia.edu>
661
662         * glib/gunidecomp.c: Add hangul composition and decomposition to
663         unicode normalization. (#100456)
664
665         * tests/unicode-normalize.c: Test hangul.
666
667 Tue Dec  2 02:29:41 2003  Matthias Clasen  <maclas@gmx.de>
668
669         Fix for #103710, Mark Jones:
670         
671         * glib/gtypes.h (G_MAXINT64): Define G_{MIN,MAX,MAXU}INT{8,16,32,64}.
672         * configure.in: Don't put G_{MIN,MAX,MAXU}INT64 in glibconfig.h.
673
674 Thu Nov 27 17:04:08 2003  Tim Janik  <timj@gtk.org>
675
676         * glib/gstrfuncs.c (g_strconcat): handle NULL arguments
677         gracefully.
678
679         * glib/gmacros.h: defined G_STRFUNC, which (pretty) prints the
680         current function (since G_STRLOC and G_GNUC_*FUNCTION became
681         unusable with gcc-3.0).
682
683 Wed Nov 26 16:45:16 2003  Roozbeh Pournader  <roozbeh@sharif.edu>
684
685         * glib/gstrfuncs.c: Fixed a bad pointer comparison in
686         g_ascii_strtod that came up in fa_IR locale (#126640, Behdad
687         Esfahbod).
688
689         * tests/strtod-test.c: Fixed the tests to catch the above.
690
691 Sat Nov 22 14:16:51.15 2003  Andrew Lanoix  <alanoix@umich.edu>
692
693         * glib/giowin32.c: Bind inter-thread comminication 
694                 sockets to INADDR_LOOPBACK instead of INADDR_ANY.
695
696 Thu Nov 20 15:09:40 2003  Manish Singh  <yosh@gimp.org>
697
698         * configure.in: Added G_GSIZE_FORMAT and friends
699
700         * tests/printf-test.c
701         * tests/testglib.c
702         * tests/type-test.c: Add tests for the above.
703
704 Mon Nov 17 17:28:10 2003  Manish Singh  <yosh@gimp.org>
705
706         * tests/thread-test.c (test_g_thread_once): Use GUINT_TO_POINTER
707         for g_thread_create data.
708
709 Sat Nov 15 23:00:57 2003  Matthias Clasen  <maclas@gmx.de>
710
711         * glib/guniprop.c (g_utf8_casefold): Add a NULL check
712         to be consistent with the other g_utf8_ functions.  (#121618,
713         Tim-Philipp Müller)
714
715 2003-11-15  Tor Lillqvist  <tml@iki.fi>
716
717         * tests/makefile.msc.in: Fix for MSVC build: Skip strtod-test, use
718         correct glib libraries, with 2.0 in the names. (#126906, John
719         Ehresman)
720
721 Sat Nov 15 00:46:14 2003  Matthias Clasen  <maclas@gmx.de>
722
723         * configure.in: Don't blindly set glib_cv_long_long_format to
724         "ll" when using the included printf. As long as the native 
725         printf supports 64bit printing, use the native format.  
726         (#119525, Tor Lillqvist)
727
728 Fri Nov 14 00:28:46 2003  Matthias Clasen  <maclas@gmx.de>
729
730         * glib/gi18n.h:
731         * glib/gi18n-lib.h: Also define bind_textdomain_codeset() in
732         the #ifndef ENABLE_NLS case.
733
734 Wed Nov 12 15:06:27 2003  Owen Taylor  <otaylor@redhat.com>
735
736         * configure.in: Version 2.3.1, interface age 0.
737
738         * NEWS: Update for 2.3.1.
739
740 2003-11-07  Mark McLoughlin  <mark@skynet.ie>
741
742         * glib/gconvert.c: (get_filename_charset): re-work to
743         retain a copy of the cached charset rather than the
744         actual return value from g_get_charset (which may
745         change). Also, re-initialize the cache if it does
746         change. See bug #126454.
747
748 Thu Nov  6 00:04:46 2003  Matthias Clasen  <maclas@gmx.de>
749
750         * glib/gconvert.c (get_filename_charset): Replacement for
751         have_broken_filenames() which consults the environment variable
752         G_FILENAME_ENCODINGS in addition to G_BROKEN_FILENAMES.
753         * glib/gconvert.c (g_filename_from_utf8): 
754         * glib/gconvert.c (g_filename_to_utf8): 
755         * glib/gconvert.c (_g_convert_thread_init): Use
756         get_filename_charset() instead of have_broken_filenames().
757
758 Wed Nov  5 22:05:19 2003  Matthias Clasen  <maclas@gmx.de>
759
760         * glib/gi18n-lib.h: 
761         * glib/gi18n.h: New headers defining common gettext-support
762         macros.
763
764         * glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
765         and gi18n-lib.h.
766
767         * glib/gstrfuncs.h: 
768         * glib/gstrfuncs.c (g_strip_context): Auxiliary function for
769         the implementation of Q_().
770
771 2003-11-05  Morten Welinder  <terra@gnome.org>
772
773         * glib/garray.c (g_ptr_array_remove_range): Make it compile.
774         (#119337, self.)
775
776         * glib/gstring.c (g_string_insert_len): Handle the case where the
777         to-be-inserted string is a substring of the target string.
778         (g_string_assign): Handle "s = s;".
779         (#114260, self.)
780
781 Sun Nov  2 01:47:31 2003  Matthias Clasen  <maclas@gmx.de>
782
783         Fix 64bit printing for MSVC builds (#119292, Hans Breuer):
784         
785         * configure.in (HAVE_INT64_AND_I64): Define for MSVC to 
786         include support for printing __int64 with format %I64 in 
787         the gnulib printf wrappers. 
788         * glib/gnulib/printf-args.h (enum arg_type): Add TYPE_INT64 
789         and TYPE_UINT64.
790         * glib/gnulib/printf-args.h (struct argument): Add a_int64 and 
791         a_uint64 members.
792         * glib/gnulib/printf-args.c (printf_fetchargs): Support
793         TYPE_INT64 and TYPE_UINT64.
794         * glib/gnulib/printf-parse.c (printf_parse): Parse I64 format
795         modifier and map formats to TYPE_INT64.
796         * glib/gnulib/vasnprintf.c (vasnprintf): Print TYPE_INT64 with
797         format modifier I64.
798         * glib/gnulib/README: Document the __int64 support.
799         
800 Sat Nov  1 08:45:38 2003  Owen Taylor  <otaylor@redhat.com>
801
802         * glib/gmain.c (g_main_context_iterate): Set the
803         return value from the result of g_main_context_check()
804         (after we poll) rather than g_main_context_prepare.
805         (#121675, Padraig O'Briain)
806
807 Fri Oct 31 00:13:53 2003  Matthias Clasen  <maclas@gmx.de>
808
809         * configure.in: Remove the semicolon from the definition of
810         g_once(), so that GPOINTER_TO_INT (g_once (...)) works.
811
812 Tue Oct 28 23:38:30 2003  Matthias Clasen  <maclas@gmx.de>
813
814         * tests/printf-test.c: Change the %e tests to not check for
815         actual string equality, but rather equality under g_ascii_strtod(),
816         since the number of leading digits in the exponent seems to 
817         be not exactly prescribed by SUS.
818
819 Fri Oct 24 17:09:04 2003  Owen Taylor  <otaylor@redhat.com>
820
821         * === Released 2.3.0 ===
822
823         * NEWS: Small update.
824
825 2003-10-24  Tor Lillqvist  <tml@iki.fi>
826
827         * configure.in: Force shared library (DLL) only on Windows.
828         (I don't think that is controversial?) Remove unnecessary
829         AC_LIBTOOL_WIN32_DLL. Don't use -D_REENTRANT on
830         Win32, it is not used by mingw or MSVC headers.
831
832         * config.h.win32.in
833         * glibconfig.h.win32.in: Match what configure produces.
834         
835         * glib/gconvert.c
836         * glib/gutils.c: Mark a couple of functions and variables that
837         aren't public as static.
838
839         * glib/gnulib/g-gnulib.h: Undef HAVE_SNPRINTF before (re)defining
840         it potentially differently, to silence compiler.
841
842         * glib/glib.def: Add some missing entries.
843         
844         * tests/gobject/Makefile.am (LDADD): Reorder, put libgobject after
845         libtestgobject.
846
847         * tests/gobject/ifaceproperties.c (main): NULL-terminate arg list
848         to g_object_set() and _get().
849
850 Thu Oct 23 12:38:24 2003  Owen Taylor  <otaylor@redhat.com>
851
852         * tests/gobject/Makefile.am (dist-hook): Remove 
853         and extra backslash.
854
855         * tests/gobject/Makefile.am (EXTRA_DIST): Add 
856         testmarshal.list.
857
858         * glib/Makefile.am (libglib_2_0_la_SOURCES): Add
859         missing gunicode-private.h.
860
861         * tests/testglib.c (main): Fix a warning.
862
863         * tests/gobject/ifaceinherit.c: Remove check that
864         wasn't supposed to work (adding an interface already
865         added to the derived class to the base class), 
866         fix a bug.
867
868 Wed Oct 22 23:41:03 2003  Matthias Clasen  <maclas@gmx.de>
869
870         * NEWS: Update for 2.3.0.
871
872 Tue Oct 14 17:44:38 2003  Owen Taylor  <otaylor@redhat.com>
873
874         * tests/gobject/ifaceproperties.c: Test for interface
875         properties and GParamSpecOverride.
876
877 Wed Oct  8 23:40:26 2003  Matthias Clasen  <maclas@gmx.de>
878
879         * glib/gmarkup.c (g_markup_printf_escaped): 
880         (g_markup_vprintf_escaped): Document as 2.4 additions.
881         (unescape_text): Implement newline and whitespace normalization
882         according to the XML specification.  (#123919)
883         (g_markup_escape_text): Document whitespace (non)handling.
884
885 2003-10-05  Matthias Clasen  <maclas@gmx.de>
886
887         * configure.in: Make the various printf feature test macros
888         reflect the system printf, even when using the included printf.
889         In particular, don't force HAVE_C99_SNPRINTF, since g-gnulib.h 
890         needs that test result.  (#122973)
891
892         * glib/gprintf.c (g_vasprintf): Don't rely on HAVE_VASPRINTF,
893         directly check for _g_vasprintf.
894
895         * glib/gprintfint.h (_g_vasprintf): Only define _g_vasprintf()
896         if vasprintf() is available.
897
898         * glib/gnulib/printf.c (_g_gnulib_vfprintf): Don't write
899         trailing nul to the file. (#122973)
900
901         * acinclude.m4 (AC_FUNC_VSNPRINTF_C99): Make the test 
902         detect non-C99-compliance of AIX 5.1 and Solaris 
903         vsnprintf().  (#122496)
904
905 Thu Oct  2 01:15:46 2003  Owen Taylor  <otaylor@redhat.com>
906
907         * tests/gobject/ifacecheck.c: Test case for
908         g_type_add_interface_check().
909
910         * tests/gobject/ifaceinit.c: Add #undef G_DISABLE_ASSERT.
911
912 Thu Oct  2 01:11:39 2003  Owen Taylor  <otaylor@redhat.com>
913
914         * tests/gobject/ifaceinherit.c: Remove some tests that
915         were testing things that weren't supposed to work; add
916         a test for adding an interface first to the child class,
917         then to the parent class.
918
919 Thu Oct  2 00:02:55 2003  Owen Taylor  <otaylor@redhat.com>
920
921         * tests/gobject/Makefile.am test/gobject/ifaceinherit.c:
922         Tests of interface inheritance and overriding.
923
924 2003-09-30  Tor Lillqvist  <tml@iki.fi>
925
926         * glib/gspawn-win32.c (do_spawn): Call protect_argv() in
927         do_spawn() instead of in do_spawn_with_pipes() so that we can use
928         the original argv[0] as the program file name parameter to
929         spawnv() in the shortcut (doing without helper process)
930         code. Fixes problem if GIMP 1.3 was installed in a path with
931         spaces in the name.
932
933 Tue Sep 30 15:31:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
934
935         * glib/guniprop.c (has_more_above): make the argument const to
936         get rid of warning
937
938         * glib/garray.c (g_byte_array_remove_range): insert cast to get
939         rid of warning
940
941 2003-09-29  Tor Lillqvist  <tml@iki.fi>
942
943         * tests/testglib.c (main): Use hardcoded name for DLL, as there is
944         no reliable way to determine it at compile or run time anyway. 
945
946 2003-09-29  Matthias Clasen  <maclas@gmx.de>
947
948         * glib/guniprop.c (g_unichar_get_mirror_char): Add "Since: 2.4" 
949         to docs.
950
951 Thu Sep 25 15:43:08 2003  Owen Taylor  <otaylor@redhat.com>
952
953         * tests/gobject/testmodule.[ch] test/gobject/Makefile.am:
954         Dummy dynamic type module for testing type plugin code
955         and dynamic types.
956
957         * test/gobject/defaultiface.c: Test of 
958         g_type_default_interface_ref() and friends.
959
960 2003-09-28  Gediminas Paulauskas  <menesis@delfi.lt>
961
962     * configure.in: Added lt to ALL_LINGUAS.
963
964 2003-09-25  Tor Lillqvist  <tml@iki.fi>
965
966         * glib/glib.def: Remove g_bsearch_array_* entries that don't exist
967         any longer. (ABI change?)
968
969 Thu Sep 25 15:01:37 2003  Owen Taylor  <otaylor@redhat.com>
970
971         * tests/Makefile.am (SUBDIRS): Add gobject/.
972
973 Fri Sep 12 16:26:21 2003  Owen Taylor  <otaylor@redhat.com>
974
975         * tests/gobject/ configure.in: New directory, framework 
976         for automated GObject tests.
977
978         * tests/gobject/override.c: Move testoverride.c
979         here, automate.
980
981         * tests/gobject/ifaceinit.c: Move testifaceinit.c here.
982
983         * tests/gobject/accumulator.c: Test signal accumulators,
984         including g_signal_accumulator_true_handled.
985
986 2003-09-12  Noah Levitt  <nlevitt@columbia.edu>
987
988         * glib/gen-unicode-tables.pl: Take a directory where to look for the
989         unicode files on the command line instead of 7 individual files.
990
991 2003-09-12  Noah Levitt  <nlevitt@columbia.edu>
992
993         * glib/gen-unicode-tables.pl:
994         * glib/gunichartables.h:
995         * glib/gunicode.h:
996         * glib/guniprop.c: Add g_unichar_get_mirror_char. (#114749)
997
998 Thu Sep 11 20:11:05 2003  Owen Taylor  <otaylor@redhat.com>
999
1000         * glib/gmarkup.c: Add g_markup_printf_escaped(), 
1001         g_markup_vprintf_escaped().
1002
1003         * tests/markup-escape-test.c (main): Test for
1004         g_markup_escape_text(), g_markup_printf_escaped().
1005
1006 2003-09-10  Noah Levitt  <nlevitt@columbia.edu>
1007
1008         * glib/gunicodeprivate.h:
1009         * glib/gunicollate.c:
1010         * glib/gunidecomp.c:
1011         * glib/guniprop.c:
1012         * tests/casemap.txt:
1013         * tests/gen-casemap-txt.pl: Unicode 4.0 special casing. (#114681)
1014
1015         * glib/gunicodeprivate.h: Use a private header instead of extern
1016         function declarations (_g_utf8_normalize_wc,
1017         _g_unichar_combining_class).
1018
1019 Mon Sep  8 00:31:10 2003  Stefan Westerfeld  <stefan@space.twc.de>
1020
1021         * glib/gbsearcharray.h: inserted casts for C++.
1022
1023 2003-08-28  Matthias Clasen  <maclas@gmx.de>
1024
1025         * tests/patterntest.c (verbose): Fix a C99ism.  (#120821, Thomas 
1026         Klausner)
1027
1028 2003-08-25  Tor Lillqvist  <tml@iki.fi>
1029
1030         * glib/giowin32.c (read_thread): Avoid UNLOCKing the critical
1031         section twice, which might cause a hang. (#120653)
1032
1033         * glib/giowin32.c (g_io_channel_unix_new): Warn if fd is both a
1034         valid file descriptor and socket.
1035
1036 Mon Aug 25 12:34:36 2003  Owen Taylor  <otaylor@redhat.com>
1037
1038         * glib/gmessages.c: Escape control characters in g_logv() output.
1039         (#108287, Christian Biere)
1040
1041 Mon Aug 25 12:17:20 2003  Owen Taylor  <otaylor@redhat.com>
1042
1043         * glib/gmain.c (g_main_context_unref_and_unlock): 
1044         When DISABLE_MEM_POOLS is set, loop through and free
1045         the poll records explicitely, since g_mem_chunk_destroy()
1046         won't do it. (#118121, Morten Welinder)
1047  
1048 2003-08-22  Samúel Jón Gunnarsson  <sammi@techattack.nu>
1049
1050         * is.po: Added "is" to ALL_LINGUAS.
1051         
1052 2003-08-19  Tor Lillqvist  <tml@iki.fi>
1053
1054         * glib/gmessages.c (g_logv): [Win32] Make the fatal error message
1055         box easier to notice with MB_SETFOREGROUND. Also use MB_ICONERROR
1056         to get a nice stop-sign icon.
1057
1058 Tue Aug 19 09:42:06 2003  Owen Taylor  <otaylor@redhat.com>
1059  
1060         * m4macros/glib-gettext.m4: Add $INTLLIBS to $LIBS
1061         temporarily, not -lintl. (Problem with fix for 
1062         #119171, pointed out by James Henstridge)
1063  
1064 Tue Aug 19 03:55:29 2003  Tim Janik  <timj@gtk.org>
1065
1066         * glib/gbsearcharray.h: license change, no restrictions are made
1067         in the new license at all, the implmentation is simply provided
1068         "as is" to allow copy-pasting the code into any third-party app.
1069         naturally, the implementation is self-contained within the header
1070         file to allow this.
1071         default to non-shrinking behaviour, allow users to request shrinking
1072         via G_BSEARCH_ARRAY_AUTO_SHRINK.
1073         creation, deletion functions are now named g_bsearch_array_create()
1074         and g_bsearch_array_free(). 
1075         fixed const in prototypes, removed cruft.
1076         (g_bsearch_array_insert): take only three arguments, do nothing if the
1077         node to insert is already there.
1078         (g_bsearch_array_replace): insert or replace if the node is already
1079         there.
1080         (g_bsearch_array_remove): remove nodes by index, the index of a node
1081         can be found via g_bsearch_array_get_index().
1082         removed other g_bsearch_array_remove*() variants.
1083         (g_bsearch_array_lookup): minor optimizations.
1084         (g_bsearch_array_lookup_sibling): return nodes on mismatches.
1085
1086         * glib/gbsearcharray.c: removed.
1087
1088 2003-08-16  Tor Lillqvist  <tml@iki.fi>
1089
1090         Fix #117925 (Dov Grobgeld):
1091
1092         * glib/gutils.c (g_find_program_in_path, g_basename,
1093         g_path_get_basename, g_path_is_absolute, g_path_skip_root,
1094         g_path_get_dirname, g_get_any_init): On Win32, look also for
1095         slashes ('/') as pathname separators.
1096
1097         * glib/gfileutils.c (g_file_open_tmp): Ditto. If the template
1098         contains a pathname separator, include the actual one in the error
1099         message, instead of always the canonical one.
1100
1101         (g_build_filename): Separate implementation on Win32 that looks
1102         for either slash or backslash. Document Unix/Windows differences.
1103
1104         * tests/testglib.c
1105         * tests/strfunc-test.c: Test above functionality on Win32.
1106
1107 2003-08-15  Tor Lillqvist  <tml@iki.fi>
1108
1109         * glib/gmain.c (g_poll): [Win32] Don't exceed handle array
1110         bounds. Warn if there would be too many handles to wait
1111         for. (WaitForMultipleObjects() has a relatively low limit of 64
1112         handles. The Win32 IO channel code should be fixed not to need to
1113         wait for one handle per file or socket being watched. Later.)
1114
1115 2003-08-13  Tor Lillqvist  <tml@iki.fi>
1116
1117         * glib/Makefile.am
1118         * gmodule/Makefile.am
1119         * gobject/Makefile.am
1120         * gthread/Makefile.am: Use srcdir also in references to the .def
1121         files. (#118885, Jeff Bonggren)
1122
1123 2003-08-12  Tor Lillqvist  <tml@iki.fi>
1124
1125         * glib/gconvert.c (g_locale_from_utf8): Drop the Win32-specific
1126         implementation. It used WideCharToMultiByte(), which is broken as
1127         it stores unconvertable characters as fallback characters
1128         (question marks) in the destination string without being able to
1129         tell how much of the conversion succeeded. Using g_convert() like
1130         on Unix is better and simpler. (#117872)
1131
1132         (g_locale_to_utf8): No need for the Win32-specific implementation
1133         here, either.
1134
1135         (have_broken_filenames): Define as TRUE on Win32.
1136
1137         (g_filename_to_utf8, g_filename_from_utf8): Drop Win32 ifdefs. As
1138         have_broken_filenames() now is defined TRUE on Win32, works as
1139         before.
1140         
1141 2003-08-11  Matthias Clasen  <maclas@gmx.de>
1142
1143         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
1144         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
1145         xmlcatalog in PATH.  (#119115) 
1146
1147 2003-08-10  Tor Lillqvist  <tml@iki.fi>
1148
1149         * glib/gutils.c (g_getenv): Don't use a cache of variable name to
1150         value mappings on Win32, as that breaks g_setenv() and
1151         g_unsetenv(). Only call ExpandEnvironmentStrings() if necessary,
1152         and in that case return a quarkified string. It is still
1153         questionable how necessary expanding embedded environment variable
1154         references is. Possibly the whole Win32-specific g_getenv()
1155         implementation could be removed. (#119520)
1156
1157 2003-08-08  Tor Lillqvist  <tml@iki.fi>
1158
1159         * glib/glib.def: Add g_once_impl.
1160
1161         * glib/gutils.c (g_setenv): Fix syntax error in the !HAVE_SETENV
1162         case.
1163
1164 2003-08-08  Matthias Clasen  <maclas@gmx.de>
1165
1166         * tests/env-test.c (main): Remove a test for getenv() behaviour
1167         which isn't specified by SUS and doesn't work on Solaris.
1168
1169 2003-08-07  Matthias Clasen  <maclas@gmx.de>
1170
1171         * tests/env-test.c: Add tests for '=' in names and values.
1172
1173         * glib/gutils.c (g_setenv, g_unsetenv): Check that the variable
1174         name doesn't contain '='. Add a declaration for environ.  (#119338)
1175
1176         * acinclude.m4: Tighten the snprintf() test to check behaviour on
1177         zero-size buffers.  (#106091) 
1178
1179         * tests/patterntest.c: Specify test strings in UTF-8, remove all
1180         charset conversion. Replace the NOISY define by a cmdline arg
1181         --noisy.   (#115757) 
1182
1183 Thu Aug  7 15:01:09 2003  Owen Taylor  <otaylor@redhat.com>
1184
1185         * m4macros/glib-gettext.m4: Set $LIBS to include
1186         -lintl when checking for dcgettext and 
1187         _nl_msg_cat_cntr. (Tim Mooney, #119171)
1188
1189 Thu Aug  7 14:15:44 2003  Owen Taylor  <otaylor@redhat.com>
1190
1191         * glib/gmain.c (g_idle_source_new): Make the default priority
1192         for idle sources G_PRIORITY_DEFAULT_IDLE as anybody would
1193         expect and document that. (#114461, reported by Andy Wingo)
1194
1195 2003-08-06  Noah Levitt  <nlevitt@columbia.edu>
1196
1197         * tests/casemap.txt:
1198         * tests/gen-casemap-txt.pl: Add test for special case not at inital
1199         position in the string, the bug just fixed. (#118957)
1200
1201 2003-08-05  Noah Levitt  <nlevitt@columbia.edu>
1202
1203         * glib/guniprop.c: Get rid of "len" parameter to output_special_case
1204         and output_marks, and make them work more like g_unichar_to_utf8,
1205         fixing a bug in the process. (#118957)
1206
1207 2003-08-05  Hans Breuer  <hans@breuer.org>
1208
1209         * glib/gnulib/makefile.msc : (new file) for msvc build
1210
1211         * glib/gnulib/vasnprintf.c : use glib/galloc.h
1212
1213         * glib/gnulib/printf.h : #include <stdio.h> for FILE*
1214
1215         * glib/makefile.msc.in : replace trio with gnulib
1216
1217         * glib/glib.def : updated externals
1218
1219         * glib/guniprop.c : fix for guniprop.c(582) : error C2082: 
1220         redefinition of formal parameter 'len'
1221
1222 2003-08-04  Noah Levitt  <nlevitt@columbia.edu>
1223
1224         * tests/unicode-normalize.c: We do handle > BMP now, so test it.
1225
1226 2003-07-31  Noah Levitt  <nlevitt@columbia.edu>
1227
1228         * tests/file-test.c: s/g_read_link/g_file_read_link/ (#118727)
1229
1230 2003-07-31  Noah Levitt  <nlevitt@columbia.edu>
1231
1232         * tests/unicode-encoding.c: Return nonzero exit status if the test
1233         fails. (#118729) 
1234
1235 2003-07-31  Noah Levitt  <nlevitt@columbia.edu>
1236
1237         * tests/utf8.txt: Change instances of U+10ffff to U+10fffd, since that
1238         is the last valid unicode character. Add check that U+10ffff is
1239         NOTUNICODE. (#118730)
1240
1241 2003-07-30  Noah Levitt  <nlevitt@columbia.edu>
1242
1243         * glib/gen-unicode-tables.pl:
1244         * glib/gunibreak.c:
1245         * glib/gunibreak.h:
1246         * glib/gunichartables.h:
1247         * glib/gunicode.h:
1248         * glib/gunicomp.h:
1249         * glib/gunidecomp.c:
1250         * glib/gunidecomp.h:
1251         * glib/guniprop.c:
1252         * tests/casefold.txt:
1253         * tests/casemap.txt:
1254         * tests/gen-casefold-txt.pl:
1255         * tests/gen-casemap-txt.pl: Update Unicode data to 4.0. (#107974)
1256
1257 2003-07-31  Tor Lillqvist  <tml@iki.fi>
1258
1259         * glib/gspawn-win32.c: When possible, manage without the helper
1260         process. (Part of the enhancements outlined in #98737.) Speeds up
1261         GIMP 1.3's first-time-run plug-in query phase a lot.
1262
1263         Plug a file descriptor (and thus Win32 handle) leak: close the
1264         read end of the child error report pipe after use.
1265
1266 2003-07-30  Matthias Clasen  <maclas@gmx.de>
1267
1268         * glib/gutils.c (g_unsetenv): Use same argument name as in header,
1269         to pacify gtk-doc. 
1270         (g_getenv): Move docs inline, add comment about lifespan of return
1271         value. 
1272
1273         * glib-2.0.pc.in (Libs): Remove forgotten @TRIO_LIBS@.  (#118616,
1274         Noah Levitt) 
1275
1276         * glib/gfileutils.[hc]: Rename g_read_link() to g_file_read_link()
1277         to better match the remaining file utilities in the g_file_
1278         namespace and to better separate it from readlink(). This is
1279         hopefully no problem as the function is just 2 days old.
1280
1281 2003-07-29  Matthias Clasen  <maclas@gmx.de>
1282
1283         * glib/gqsort.[hc] (g_qsort_with_data): 
1284         * glib/gconvert.[hc] (g_filename_to_uri, g_filename_from_uri): 
1285         * glib/gfileutils.[hc] (g_mkstemp, g_file_open_tmp): Use gchar,
1286         gint, gsize instead of char, int, size_t in the interface for
1287         consistency.  (#118567) 
1288
1289         Replace trio printf() by gnulib vasnprintf():  (#101874)
1290         
1291         * configure.in: Define HAVE_LONG_LONG_FORMAT if system printf
1292         understands %llu; rename enable_trio to enable_included_printf;
1293         add misc. tests needed for gnulib vasnprintf(); define
1294         G_GINT{16,32,64}_MODIFIER in glibconfig.h.
1295
1296         * acinclude.m4: Misc tests needed for gnulib vasnprintf():
1297         AC_FUNC_SNPRINTF_C99, bh_C_SIGNED, jm_AC_TYPE_LONG_LONG, 
1298         gt_TYPE_LONGDOUBLE, gt_TYPE_WCHAR_T, gt_TYPE_WINT_T,
1299         gt_AC_TYPE_INTMAX_T, jm_AC_HEADER_STDINT_H,  
1300         jm_AC_HEADER_INTTYPES_H. 
1301
1302         * glib/Makefile.am: Replace TRIO_SUBDIR by PRINTF_SUBDIR and
1303         trio_libtrio_la by printf_la.  
1304
1305         * glib/gprintfint.h: Include gnulib/printf.h and use _g_gnulib_
1306         functions instead of _g_trio_ functions. 
1307
1308         * glib/trio/*: Removed
1309
1310         * glib/gnulib/*: vasnprintf() implementation from gnulib, patched
1311         to live in the _g_gnulib namespace, use g_malloc instead of
1312         malloc, and support long long printing even if system printf
1313         doesn't. For more details, see glib/gnulib/README.
1314         
1315         * tests/printf-test.c: Add tests for 64 bit printing.
1316
1317 2003-07-28  Matthias Clasen  <maclas@gmx.de>
1318
1319         * glib/gfileutils.h: 
1320         * glib/gfileutils.c: New function g_read_link(). (#72545)
1321
1322         * configure.in: Check for setenv, unsetenv, readlink and symlink.
1323
1324         * tests/file-test.c (test_readlink): Test for g_read_link() (only
1325         on systems supporting symbolic links).
1326
1327         * tests/env-test.c: New test for g_{get,set,unset}env().
1328
1329         * tests/Makefile.am (test_programs): Add env-test.
1330
1331         * glib/gutils.h: 
1332         * glib/gutils.c: New functions g_setenv() and g_unsetenv().  (#100763)
1333
1334 2003-07-26  Matthias Clasen  <maclas@gmx.de>
1335
1336         * tests/printf-test.c: New test, tests printf behaviour. This was
1337         already mentioned in Makefile.am by accident.
1338
1339         * tests/file-test.c: New test, currently contains mkstemp tests
1340         copied from testglib.c. 
1341
1342         * tests/Makefile.am (test_programs): Add file-test.
1343
1344         * glib/gprintf.c: Fix all g_return_val_if_fail () checks to return
1345         -1 on error to match the behaviour of the stdio printf() family.
1346
1347         * glib/garray.h: 
1348         * glib/garray.c (g_{,byte,pointer}_remove_range): New functions to
1349         remove a range of elements from an array.  (#94879, Nalin Dahyabhai)
1350
1351         * glib/gmessages.c (g_logv): Remove the 1024 char limit in the
1352         common (non-recursive) case.
1353
1354 2003-07-25  Matthias Clasen  <maclas@gmx.de>
1355
1356         * glib/gwin32.c: 
1357         * glib/gutf8.c: 
1358         * glib/gunicollate.c: 
1359         * glib/gtree.c: 
1360         * glib/gspawn.c: 
1361         * glib/gmain.c: 
1362         * glib/giochannel.c: 
1363         * glib/gfileutils.c: 
1364         * glib/gerror.c: 
1365         * glib/gconvert.c: 
1366         * glib/gasyncqueue.c: 
1367         * glib/gmem.c: Remove some explicit Docbook markup which is no
1368         longer necessary since gtk-doc does the right thing.
1369
1370         * glib/gutf8.c (g_utf8_get_char_validated): Work around gtk-doc stupidity.
1371
1372 2003-07-20  Hans Breuer  <hans@breuer.org>
1373
1374         * glib/trio/makefile.msc : (new file) for msvc build
1375
1376         * glib/glib.def : removed some duplicated entries
1377
1378         * glib/gscanner.c : add same workaround for MSVC(5.0)
1379         which does not allow to cast an uint64 to float.
1380         Same as in gvaluetransform.c
1381         Also move #include <io.h> behind inclusion of "glib.h"
1382         which defines the needed G_OS_WIN32
1383
1384         * glib/makefile.msc.in : added gprintf.obj, trio\trio.lib
1385         as well as shell32.lib
1386
1387         * tests/spawn-test.c : include <io.h> on win32
1388
1389 2003-07-12  Matthias Clasen  <maclas@gmx.de>
1390
1391         * glib/gprintf.c: Doc additions.
1392
1393 2003-07-10  Joel Brich <joel.brich@laposte.net>
1394
1395         * configure.in: Added "eo" to ALL_LINGUAS.
1396
1397 Wed Jul  9 16:27:26 2003  Manish Singh  <yosh@gimp.org>
1398
1399         * glib/gmain.c (g_main_context_unref_and_unlock): check if
1400         context->poll_chunk is set before trying to destroy it. For example,
1401         this can happen if no sources are added to a context before it is
1402         freed.
1403
1404 2003-07-09  Morten Welinder  <terra@gnome.org>
1405
1406         * glib/gprintf.c (g_vasprintf): Avoid var declaration after
1407         statement.
1408
1409 2003-07-09  Matthias Clasen  <maclas@gmx.de>
1410
1411         Support for one-time initialization functions.  (#69668, Sebastian
1412         Wilhelmi) 
1413
1414         * configure.in: Check whether double checked locking is safe,
1415         define g_once() in glibconfig.h accordingly.
1416         * glib/gthread.h: Add GOnce, GOnceStatus, G_ONCE_INIT and g_once_impl.
1417         * glib/gthread.c (g_once_impl): Fallback implementation using a
1418         mutex if double checked locking is unsafe.
1419         * tests/thread-test.c: Add tests for g_once().
1420
1421 2003-07-02  Matthias Clasen  <maclas@gmx.de>
1422
1423         * glib/gstrfuncs.c (g_strfreev): Move docs inline, document behavior 
1424         for NULL. (#116439, Steve Chaplin)
1425
1426 2003-06-25  Abigail Brady  <morwen@evilmagic.org>
1427  
1428         * glib/gconvert.c (g_convert_with_fallback): Use C99 style \uxxxx
1429         and \Uxxxxyyyy escapes instead for fallback instead of perl-style
1430         \X{xxxx} ones, fixing bug #114284.
1431
1432 2003-06-25  Tor Lillqvist  <tml@iki.fi>
1433
1434         * glib/giowin32.c (g_io_channel_unix_new): Pass real &optval and
1435         &optlen to getsockopt() instead of NULL. Don't remember why I
1436         thought that NULL could be used (as we don't actually use the
1437         returned value for anything), the Platform SDK documentation
1438         doesn't imply so.
1439
1440 2003-06-19  Matthias Clasen  <maclas@gmx.de>
1441
1442         * glib/gutils.c (g_path_get_basename): Move the documentation
1443         inline and add details.  (#108505)
1444
1445 2003-06-18  Matthias Clasen  <maclas@gmx.de>
1446
1447         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
1448         macros to check for XML catalog contents and path, borrowed from
1449         gtk-doc. 
1450
1451         * configure.in: New option --enable-man to enable regeneration of
1452         man pages from Docbook, if the necessary tools are found.
1453
1454 2003-06-17  Matthias Clasen  <maclas@gmx.de>
1455
1456         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
1457         macros to check for XML catalog contents and path, borrowed from
1458         gtk-doc. 
1459         
1460         * configure.in: New option --enable-man to enable regeneration of
1461         man pages from Docbook, if the necessary tools are found.
1462
1463 2003-06-15  Tor Lillqvist  <tml@iki.fi>
1464
1465         * glib-zip.in (DLLDIR): Test where the DLLs actually are.
1466
1467         * README.win32: Point to FSF's binary Win32 distributions of
1468         libiconv and gettext-runtime.
1469
1470 2003-06-11  Tor Lillqvist  <tml@iki.fi>
1471
1472         * glib-zip.in (DEVZIP): libtool 1.5 installs DLLs in the bin
1473         subdirectory, so get them from there.
1474
1475         * glib/gwin32.c (g_win32_getlocale): Use "sr@Latn" and "sr" in the
1476         same way as the po files for Serbian in Latin and Cyrillic script.
1477
1478 2003-06-11  Sebastian Wilhelmi  <seppi@seppi.de>
1479
1480         * configure.in: Remove false &. Spotted by Albert Chin
1481         <gtk-devel-list@thewrittenword.com>.
1482
1483 2003-06-08  Tor Lillqvist  <tml@iki.fi>
1484
1485         * glib/giowin32.c: Fix indentation and spacing. Use
1486         INADDR_LOOPBACK instead of inet_addr("127.0.0.1") and
1487         gethostbyaddr().
1488
1489 Sat Jun  6 16:18:10 2003  Andrew Lanoix  <alanoix@umich.edu>
1490
1491         * glib/giowin32.c: Resolved thread deadlocks in socket 
1492         ichannel code to support Add-Cancel-Add watch functionality 
1493         on windows. Also cleaned up socket error handling to not 
1494         segfault and do the right thing.
1495         
1496 Fri Jun  6 10:24:23 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
1497
1498         * m4macros/glib-gettext.m4: Test for Solaris native gettext 
1499         in libc, seeing if it supports GNU catalog format (#85217).
1500         
1501 Thu Jun  5 23:40:31 2003  Owen Taylor  <otaylor@redhat.com>
1502
1503         * glib/gmain.c: When dispatching a source that is
1504         !CAN_RECURSE, temporarily remove any file descriptors
1505         that that source has registered from the main loop, to keep
1506         recursive main loops from busy-waiting if input
1507         becomes available on one of those file descriptors.
1508         (#112222, Christian Krause)
1509
1510         * glib/gmain.c (g_source_set_priority): Properly
1511         remove the source from the context's source list
1512         and reinsert it sorted, rather than simply setting
1513         source->next/prev to NULL! (#114274)
1514
1515 2003-06-06  Matthias Clasen  <maclas@gmx.de>
1516
1517         * glib/gstring.c (g_string_append_printf_internal): Use
1518         g_vasprintf() and g_string_append_len(), thus enabling embedded
1519         nuls in the result of g_string_printf().  (#92492, Owen Taylor)
1520
1521         * tests/string-test.c: Add a test for embedded nuls in the
1522         result of g_string_printf().
1523
1524         * glib/gprintf.[ch]: Synchronize argument names with headers and docs.
1525         (g_vasprintf): An implementation of vasprintf(), code was lifted
1526         from g_strdup_vprintf().  (#112365)
1527
1528         * glib/gstrfuncs.c (g_strdup_vprintf): Just use g_vasprintf().
1529
1530 2003-06-05  Tor Lillqvist  <tml@iki.fi>
1531
1532         * glib/giochannel.h
1533         * glib/gmain.h: Remove bogus (Win32-only) declaration of
1534         g_main_poll_win32_msg_add(). No such function exists.
1535
1536         * glib/gmain.c (g_poll) [Win32]: Use g_win32_error_message() for
1537         better warning messages.
1538
1539 2003-06-04  Noah Levitt  <nlevitt@columbia.edu>
1540
1541         * glib/gunidecomp.h (combine): Fix typo (#114375). Also, make the
1542         function static.
1543
1544 2003-06-03  Sebastian Wilhelmi  <seppi@seppi.de>
1545
1546         * configure.in: Test for pthread_setschedparam. If not existant,
1547         disable priorities. (#104718)
1548
1549 Mon Jun  2 14:18:21 2003  Owen Taylor  <otaylor@redhat.com>
1550
1551         Patch from Jeffrey Stedfast <fejj@ximian.com> (#104825)
1552  
1553         * glib/gspawn.c (read_data): Don't read() into '&buf', while this
1554         is technically okay - it is clearer as just 'buf'.
1555         (write_all): New helper function that handles write() interrupts.
1556         (write_err_and_exit): Use write_all() instead of write().
1557         (fork_exec_with_pipes): Same here.
1558         
1559 Sun Jun  1 09:42:36 2003  Owen Taylor  <otaylor@redhat.com>
1560
1561         * glib/giochannel.c (g_io_error_get_from_g_error): Put 
1562         the g_return_val_if_fail() in the right place.
1563
1564 Fri May 31 1:17:45 2003  Ray Strode  <halfline@hawaii.rr.com>
1565
1566         * glib/giochannel.c (g_io_channel_error_from_errno):
1567         Fix typo: should be G_IO_ERROR_UNKNOWN not
1568         G_ERROR_ERROR_UNKNOWN
1569
1570 Fri May 30 19:23:47 2003  Owen Taylor  <otaylor@redhat.com>
1571
1572         * glib/gstrfuncs.c (g_ascii_strncasecmp)
1573         * glib/gstrfuncs.c (g_ascii_strcasecmp): Use TOLOWER()
1574         macro instead of g_ascii_tolower() (#107138)
1575
1576 Fri May 30 19:09:25 2003  Owen Taylor  <otaylor@redhat.com>
1577
1578         * m4macros/glib-gettext.m4: Backport better handling
1579         of ALL_LINGUAS from gettext.m4. (#103808, Andras Salamon)
1580
1581 Fri May 30 18:46:05 2003  Owen Taylor  <otaylor@redhat.com>
1582
1583         * m4macros/glib-gettext.m4: expand $exec_prefix as
1584         well as $prefix. (#107290, reported by Morten Welinder,
1585         patch from Raja Harinath)
1586
1587 Fri May 30 17:24:23 2003  Owen Taylor  <otaylor@redhat.com>
1588
1589         * glib-gettextize.in: Quote $srcdir to handle $srcdir
1590         with spaces (#107850, Evan Martin)
1591
1592 Fri May 30 16:48:26 2003  Owen Taylor  <otaylor@redhat.com>
1593  
1594         * glib/giochannel.c (g_io_channel_error_from_errno):
1595         Silently return G_IO_CHANNEL_ERROR_FAILED for EINTR,
1596         since close() can return EINTR. (#11842, Balazs Scheidler)
1597  
1598 Fri May 30 15:51:43 2003  Owen Taylor  <otaylor@redhat.com>
1599
1600         * glib/giochannel.c (g_io_error_get_from_g_error): 
1601         Do a g_return_val_if_fail() on err == NULL to be a
1602         bit more robuts on buggy IO channel implementations.
1603         (#113396, Dan Winship)
1604
1605 Tue May 27 19:56:35 2003  Owen Taylor  <otaylor@redhat.com>
1606
1607         * glib/gmacros.h: __PRETTY_FUNCTION__ was made a non-token
1608         before gcc-3.0.0 for C++. (Fix from Martin Kretzschmar,
1609         #113797)
1610
1611 2003-05-28  Matthias Clasen  <maclas@gmx.de>
1612
1613         * tests/patterntest.c: Remain silent when sucessful. 
1614
1615         * tests/Makefile.am: Add patterntest to make check.  (113143)
1616
1617 2003-05-27  Matthias Clasen  <maclas@gmx.de>
1618
1619         * glib/gstrfuncs.c (g_strdup): Use memcpy instead of
1620         strcpy. (#106988, Christian Biere)
1621
1622 2003-05-27  Matthias Clasen  <maclas@gmx.de>
1623
1624         * glib/gstrfuncs.c (g_strdup): Use memcpy instead of
1625         strcpy. (#106988, Christian Biere)
1626
1627 2003-05-23  Noah Levitt  <nlevitt@columbia.edu>
1628
1629         * glib/gutf8.c: Fix typo in UNICODE_VALID (related to #107427).
1630
1631 2003-05-23  Noah Levitt  <nlevitt@columbia.edu>
1632
1633         * glib/guniprop.c: Remove stale comment.
1634
1635 2003-05-22  Noah Levitt  <nlevitt@columbia.edu>
1636
1637         * glib/guniprop.c: Update g_unichar_iswide to Unicode 4.0 (#113404).
1638
1639 2003-05-21  Noah Levitt  <nlevitt@columbia.edu>
1640
1641         * glib/guniprop.c: Fix obscure typo in case conversion routine
1642         (#113469).
1643
1644 Tue May 20 14:14:55 2003  Manish Singh  <yosh@gimp.org>
1645
1646         * configure.in: wrap 64-bit MIN/MAX limit constants in
1647         G_GINT64_CONSTANT. Fixes bug #108699.
1648
1649 2003-05-19  Noah Levitt  <nlevitt@columbia.edu>
1650
1651         * glib/gunibreak.c: Fix cut-and-pasto: g_unichar_break_type should
1652         return G_UNICODE_BREAK_UNKNOWN if the character is greater than
1653         G_UNICODE_LAST_CHAR.
1654
1655 2003-05-19  Noah Levitt  <nlevitt@columbia.edu>
1656
1657         * glib/glist.c: Remove unused function g_list_sort2 (bug #113203).
1658
1659 2003-05-19  Noah Levitt  <nlevitt@columbia.edu>
1660
1661         * glib/gunidecomp.c: Fix off-by-one error in
1662         g_unicode_canonical_ordering (bug #113260).
1663
1664 2003-05-19 Arafat Medini <lumina@silverpen.de>
1665
1666         * ar.po: Added ar to ALL_LINGUAS
1667
1668 2003-05-17  Telsa Gwynne  <hobbit@aloss.ukuu.org.uk>
1669
1670         * configure.in: Added cy to ALL_LINGUAS
1671
1672 2003-05-05  Matthias Clasen  <maclas@gmx.de>
1673
1674         * glib/gstrfuncs.c (g_ascii_dtostr): 
1675         (g_ascii_formatd): 
1676         (g_ascii_strtod): Some doc fixes.  (#111805)
1677
1678 2003-05-05  Christian Rose  <menthos@menthos.com>
1679
1680         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
1681
1682 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
1683
1684         * autogen.sh (have_libtool): Accept libtool-1.5. (#111483)
1685
1686 2003-04-09  Matthias Clasen  <maclas@gmx.de>
1687
1688         * INSTALL: 
1689         * INSTALL.in: Remove list of configuration flags, since these 
1690         are already documented in docs/reference/glib/building.sgml.
1691
1692 2003-04-08  Matthias Clasen  <maclas@gmx.de>
1693
1694         * INSTALL: Move Cross-compliation information to reference manual.
1695
1696 Mon Apr  7 13:40:28 2003  Owen Taylor  <otaylor@redhat.com>
1697
1698         * glib/gmain.c (g_main_loop_run): When waiting for
1699         the main loop to be freed up, wait on either
1700         !loop->is_running or got_ownership, not both.
1701         (Caused gtk_dialog_run() not to work in other
1702         threads, reported by Jean-Yves Lefort)
1703
1704 2003-04-07  Matthias Clasen  <maclas@gmx.de>
1705
1706         * glib/gutf8.c (g_utf8_strlen): Warn if p == NULL && max != 0.
1707         (#110087) 
1708
1709 2003-04-01  Tor Lillqvist  <tml@iki.fi>
1710
1711         * glib/glib.def: Add g_string_chunk_insert_len.
1712
1713 2003-04-01  Matthias Clasen  <maclas@gmx.de>
1714
1715         * glib/gstring.[hc] (g_string_chunk_insert_len): New function, to
1716         insert possible non-nul-terminated byte sequences into a string
1717         chunk.  (#96279)
1718         (g_string_chunk_insert): Implement in terms of
1719         g_string_chunk_insert_len() now.
1720
1721 2003-03-30  Matthias Clasen  <maclas@gmx.de>
1722
1723         * glib/gstring.c (g_string_new): Optimize the common cases 
1724         (init == NULL or init == "") a bit.
1725         * glib/gmarkup.c, glib/gmessages.c, glib/gscanner.c,
1726         glib/gshell.c, glib/gspawn-win32-helper.c, glib/gspawn-win32.c,
1727         glib/gspawn.c, gobject/gvaluetransform.c: replace uses of 
1728         g_string_new ("") by g_string_new (NULL).  (#106973, Morten Welinder)
1729
1730         * glib/gutf8.c (UNICODE_VALID): Update to Unicode 3.1 and optimize
1731         a bit.  (#107427, Noah Lewitt)
1732
1733         * glib/libcharset/config.charset: Add cp1251 support for Solaris.
1734         (#104738, Hidetoshi Tajima)
1735
1736         * glib/gconvert.c (UnsafeCharacterSet): Get rid of
1737         UNSAFE_DOS_PATH.
1738         (acceptable): Align with RFC2396.  (#59653)
1739
1740         * tests/uri-test.c: Adjust to the changes above.
1741
1742 2003-03-26  Christian Rose  <menthos@menthos.com>
1743
1744         * configure.in: Added "yi" to ALL_LINGUAS.
1745
1746 2003-03-19  Matthias Clasen  <maclas@gmx.de>
1747
1748         * glib/giochannel.c (g_io_channel_read_to_end): Fix docs.
1749
1750 2003-03-19  Anders Carlsson  <andersca@codefactory.se>
1751
1752         * configure.in: Bump version to 2.3.0
1753
1754 2003-03-14  Sebastian Wilhelmi  <seppi@seppi.de>
1755
1756         * glib/gthread.c: Do not define function g_thread_init_glib, if
1757         not G_THREADS_ENABLED. It's not called bu g_thread_init() then,
1758         but calls other, in that case undefined functions.
1759
1760 2003-03-06  Matthias Clasen  <maclas@gmx.de>
1761
1762         * glib/gmain.c (g_main_context_find_source_by_id): 
1763         (g_main_context_find_source_by_funcs_user_data): Fix FALSE/NULL
1764         confusion.  (#107646, Morten Welinder)
1765
1766 2003-03-01  James Henstridge  <james@daa.com.au>
1767
1768         * autogen.sh: require automake 1.7.  Add calls to libtoolize and
1769         gtkdocize.  Clean up some of the error messages.
1770
1771         * configure.in: move version declaration to the top of the file
1772         (before AC_INIT), using M4 macros.
1773         GLIB_AC_DIVERT_BEFORE_HELP() calls no longer necessary, due to use
1774         of M4 macro expansion in help messages instead.
1775         Convert AC_ARG_WITH/AC_ARG_ENABLE calls to use AC_HELP_STRING to
1776         format help strings.  Use quadrigraphs to get square brackets to
1777         show correctly.
1778         Replace gtk-doc checks with a call to GTK_DOC_CHECK() macro.
1779         Use AC_CONFIG_COMMANDS([glibconfig.h], ...) to output
1780         glibconfig.h, so that "./config.status glibconfig.h" works.
1781         Add an extra AC_CONFIG_FILES call listing other files we want
1782         generated by config.status protected by an "if false" block.  This
1783         way automake generates the rules needed to rebuild the files for
1784         us.
1785         Add quotes in various places.
1786
1787         * docs/reference/*/Makefile.am: convert to use the common
1788         gtk-doc.make file.  This localises the complexity to a single
1789         makefile fragment maintained with gtk-doc itself.
1790
1791         * */Makefile.am: remove unneeded rules to build win32 files with
1792         config.status.  Automake now does this for us.
1793         Replace instances of @FOO@ with $(FOO) where appropriate -- this
1794         allows automake to do a better job checking the makefile.
1795         Add some files to DISTCLEANFILES where appropriate
1796
1797         * Makefile.am: use the DISTCHECK_CONFIGURE_FLAGS variable to
1798         ensure that --enable-gtk-doc is passed to configure during a
1799         distcheck.  Remove the custom distcheck, since the standard one
1800         will now do.
1801
1802         * gobject/Makefile.am: switch to BUILT_SOURCES, since that now
1803         works.
1804
1805 2003-02-26  Matthias Clasen  <maclas@gmx.de>
1806
1807         * glib/gstrfuncs.c (g_strdup_vprintf): Use g_strndup, not
1808         g_strdup, since we know the length in advance.
1809
1810         * glib/gunidecomp.c (g_unicode_canonical_decomposition): Use
1811         g_malloc instead of directly using malloc.
1812
1813 2003-02-25  Tor Lillqvist  <tml@iki.fi>
1814
1815         * glib/glib.def: Add a couple of missing entries, thanks to Cedric
1816         Gustin. Thread initialization function changes according to
1817         Sebastian Wilhelmi's changes below (2003-02-14).
1818
1819 2003-02-24  Matthias Clasen  <maclas@gmx.de>
1820
1821         * glib/gdir.c (g_dir_read_name): Clarify documentation.
1822
1823 2003-02-18  Sebastian Wilhelmi  <seppi@seppi.de>
1824
1825         * configure.in: Make glib_thread_test not unnecessarily convert
1826         between int and void*. (#106278). Let main return int.
1827
1828         * configure.in: Add an argument to specify the default thread
1829         attribute to glib_thread_test. Disappeared somewhere between 2.0
1830         and 2.2.
1831
1832 2003-02-14  Sebastian Wilhelmi  <seppi@seppi.de>
1833
1834         Fixes for #101264 and #99372:
1835
1836         * glib/gconvert.h, glib/gmain.c, glib/gmem.c, glib/gmessages.c,
1837         glib/grand.c: Include gthreadinit.h and rename the thread
1838         initialization functions a bit and let them start with _, so that
1839         later we can stop exporting them.
1840         
1841         * glib/gmem.c, glib/gmessages.c: Move the g_private_new() calls to
1842         new functions. They have to be called after setting
1843         g_threads_got_initialized to TRUE (see #101264).
1844
1845         * glib/gthread.c: Include gthreadinit.h. Renamed g_mutex_init() to
1846         g_thread_init_glib(). Call the thread initialization functions
1847         (which are not allowed to call g_private_new), then set
1848         g_threads_got_initialized to TRUE, then call the other thread
1849         initialization functions (which must not call anything but
1850         g_private_new()).
1851         
1852         * glib/gthreadinit.h: New private header to cleanly declare all
1853         thread initialization functions.
1854
1855         * gthread/gthread-impl.c: Include gthreadinit.h. In
1856         g_thread_init() just call g_thread_init_glib(), which in turn calls the
1857         other functions (see #99372).
1858         
1859         * glib/Makefile.am: Added gthreadinit.h.
1860
1861 2003-02-12  Sebastian Wilhelmi  <seppi@seppi.de>
1862
1863         * configure.in: Make GLib recognize Tru64Unix thread system. (#103020)
1864
1865 2003-02-11  Tor Lillqvist  <tml@iki.fi>
1866
1867         * Makefile.am (EXTRA_DIST): Include ChangeLog.pre-2-2.
1868
1869         * glib-zip.in: Include also the gtk-doc/html documentation in the
1870         developer package.
1871
1872         * README.win32: Updates.
1873
1874 2003-02-11  Sebastian Wilhelmi  <seppi@seppi.de>
1875
1876         * AUTHORS: Changed my e-mail address.
1877         * glib/grand.c: Removed my e-mail address.
1878
1879 2003-02-10  Mohammad DAMT  <mdamt@bisnisweb.com>
1880
1881         * po/id.po: Added Indonesian translation
1882         * configure.in: Added "id" to ALL_LINGUAS
1883
1884 2003-02-06  Matthias Clasen  <maclas@gmx.de>
1885
1886         * glib/gmessages.h: 
1887         * glib/gmem.h: 
1888         * glib/ghash.h: 
1889         * glib/gasyncqueue.h: 
1890         * glib/garray.h: 
1891         * glib/ghook.h: 
1892         * glib/gtypes.h: Fix a bunch of typos in header comments.
1893         (#102422, Morten Welinder)
1894
1895 2003-02-04  Tor Lillqvist  <tml@iki.fi>
1896
1897         * glib/giowin32.c (g_io_channel_unix_new): Fix typo: Should be
1898         SOCKET_ERROR, not SO_ERROR. Noticed by Daniel Kaufmann.
1899         
1900         Merge from stable branch: 
1901
1902         Fix for bug #104014, reported by Alex Shaduri:
1903         
1904         * glib/gspawn-win32.c (protect_argv): New function. Add
1905         double-quotes around argv elements that need it, and escape
1906         embedded double-quotes with backslash.
1907         (do_spawn_with_pipes) Call protect_argv().
1908
1909         * glib/gspawn-win32-helper.c (WinMain): Call protect_argv().
1910
1911         * glib/gspawn.c (g_spawn_async_with_pipes): Document argument
1912         vector vs. command line details on Win32.
1913         (g_spawn_command_line_sync): Improve documentation about
1914         backslashes in the command line on Windows.
1915
1916 Thu Jan 30 16:45:13 2003  Owen Taylor  <otaylor@redhat.com>
1917
1918         * Makefile.am: Remove references to glib.spec.
1919         (#102231)
1920
1921         * configure.in: Don't generate glib.spec.
1922
1923 Tue Jan 28 16:08:56 2003  Owen Taylor  <otaylor@redhat.com>
1924
1925         * m4macros/glib-gettext.m4: If msgfmt isn't found,
1926         unset gt_cv_have_gettext. (#102552, Tim Mooney)
1927
1928 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
1929
1930         * autogen.sh (have_automake): Fix version in complaint
1931         message about automake. (#104366, Rich Burridge)
1932
1933 2003-01-22  Pablo Saratxaga  <pablo@mandrakesoft.com>
1934
1935         * configure.in: Added Bengali (bn) to ALL_LINGUAS
1936
1937 2003-01-21  Christian Rose  <menthos@menthos.com>
1938
1939         * configure.in: Added "mn" to ALL_LINGUAS.
1940
1941 2003-01-20  Pablo Saratxaga  <pablo@mandrakesoft.com>
1942
1943         * configure.in: Added Farsi (fa), Italian (it), Latvian (lv),
1944         Macedonian (mk) to ALL_LINGUAS
1945
1946 2003-01-16  Daniel Yacob <locales@geez.org>
1947
1948         * configure.in: added am to ALL_LINGUAS
1949         
1950 2003-01-12  Tor Lillqvist  <tml@iki.fi>
1951
1952         * glib/glib.def: Add some missing entries. Thanks to Kenichi SUTO.
1953
1954 2003-01-05  Tor Lillqvist  <tml@iki.fi>
1955
1956         * README.win32: Updates.
1957
1958         * configure.in: Don't use -lm in TRIO_LIBS on Windows, with no
1959         libm. (Mingw has a dummy libm.a, but the .pc file should be
1960         useable by MSVC users, too.)
1961
1962 2003-01-25  Ron Steinke  <rsteinke@w-link.net>
1963
1964         (Ancient, binary compatible fixes found sitting in my tree)
1965
1966         * Added early checks for count == 0 and buf == NULL in g_io_channel_read()
1967
1968         * Better error message for EFAULT in  g_io_channel_error_from_errno()
1969
1970 2003-01-04  Tor Lillqvist  <tml@iki.fi>
1971
1972         * Makefile.am (BUILT_EXTRA_DIST): Don't distribute glib-zip.
1973
1974         * {glib,gmodule,gobject,gthread}/Makefile.am:
1975         [Win32] Install also the .def files, to help users generate
1976         import libraries for other compilers. Uninstall, too.
1977
1978         * glib-zip.in: Include .def files from above.
1979
1980         * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Don't claim
1981         broken pipes are unreadable. (Well, they are, but read() handles
1982         it, and treats it like EOF.)
1983
1984 Thu Jan  2 16:19:15 2003  Manish Singh  <yosh@gimp.org>
1985
1986         * configure.in: use AC_COMPILE_IFELSE instead of AC_TRY_COMPILE for
1987         tests for inline keywords. Fixes #101976.
1988
1989 2003-01-02  Tor Lillqvist  <tml@iki.fi>
1990
1991         * glib/gwin32.h: Correct the comment telling what headers have
1992         the declarations of some POSIXish functions.
1993
1994         * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Fix braino:
1995         The checks for readability/writeability were backwards.
1996
1997 2003-01-01  Tor Lillqvist  <tml@iki.fi>
1998
1999         * glib/gmessages.c (ensure_stderr_valid): New function, parallel
2000         to ensure_stdout_valid(). #defined as empty on Unix. Move the
2001         alloc_console_called static flag inside these two functions.
2002         (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and
2003         stderr streams for validity, instead of what GetStdHandle() returns.
2004         (mklevel_prefix): Do use either stderr or stdout on Windows,
2005         too. Otherwise g_warning() messages (that are just warnings, by
2006         definition) will get mixed with proper stdout output. Noticed in
2007         GIMP's gimpconfig-dump.
2008         (strdup_convert, mklevel_prefix, g_printerr): Call
2009         ensure_stderr_valid() before trying to use stderr.
2010         (g_logv): [Win32] Convert message to current codepage before
2011         display with MessageBox().
2012
2013 2002-12-28  Tõivo Leedjärv  <toivo@linux.ee>
2014
2015         * configure.in: Added et to ALL_LINGUAS.
2016