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