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