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