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