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