Fix handling of user data when locating sources. (#60414, Katsuhiro Okuno)
[platform/upstream/glib.git] / ChangeLog.pre-2-6
1 Wed Sep 19 16:35:22 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * glib/gmain.c (g_main_context_find_source_by[_funcs]_user_data): 
4         Fix handling of user data when locating sources. 
5         (#60414, Katsuhiro Okuno)
6
7 Wed Sep 19 14:17:31 2001  Owen Taylor  <otaylor@redhat.com>
8
9         Patch from Matthias Clasen (#59806)
10
11         * configure.in: Check for vasprintf().
12
13         * glib/gmem.[ch]: Add g_mem_vtable_is_set() to be used
14         for efficiency hacks to avoid extra copies when not
15         needed.
16
17         * glib/gstrfuncs.c: Use vasprintf() to implement
18         g_strdup_printf() when available.
19
20         * glib/gmessages.c (g_logv): Avoid using 
21         printf_string_upper_bound() when we have have vsnprintf.
22
23         * glib/gmessages.c (printf_string_upper_bound): Don't
24         segfault when warning about positional parameters.
25
26 Wzed Sep 19 14:05:27 2001  Owen Taylor  <otaylor@redhat.com>
27
28         * glib/{gcache.c,gmem.c,grel.c,gstring.c,gtimer.c,gtree}:
29         Patch from Darin Adler to remove GReal* structures in
30         favor of simple opaque typedefs in cases where there
31         were no non-private members. (#59693)
32
33 Wed Sep 19 13:03:38 2001  Owen Taylor  <otaylor@redhat.com>
34
35         * glib/giochannel.c (g_io_channel_read/write_chars): Handle NUL
36         bytes_written, bytes_read. (Suggested by Joshua N Pritikin, #59550)
37
38 Wed Sep 19 12:49:11 2001  Owen Taylor  <otaylor@redhat.com>
39
40         * glib/gutils.c (g_get_any_init): Handle failure of
41         sysconf and pick a fixed size buffer. (Happens on Cygwin
42         #60242)
43
44 Wed Sep 19 11:23:41 2001  Owen Taylor  <otaylor@redhat.com>
45
46         * configure.in: Error out if gettext support is not found. (#59386)
47
48 2001-09-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
49
50         * glib/gthread.h (GThreadFunctions): Add thread_equal function to
51         allow for platform defined function to compare two threads.
52
53         * glib/gthread.c: Use g_thread_functions_for_glib_use.thread_equal
54         when non-NULL instead of ==.
55         
56 Wed Sep 19 10:44:25 2001  Tim Janik  <timj@gtk.org>
57
58         * Released 1.3.8.
59
60 Tue Sep 18 22:57:33 2001  Tim Janik  <timj@gtk.org>
61
62         * configure.in (GLIB_MICRO_VERSION): up version number to 1.3.8,
63         interface age 0, binary age 0.
64
65         * NEWS: updates.
66
67 Tue Sep 18 18:23:02 2001  Owen Taylor  <otaylor@redhat.com>
68
69         Fixes for compilation on Solaris (#59026, Frank Belew)
70
71         * glib/gqsort.c (g_qsort_with_data): Use g_alloca().
72
73         * glib/giochannel.c (g_io_channel_read_to_end): Fix use
74         of ternary on left-hand-side.
75
76         * configure.in: Handle the ac_cv_working_alloca_h variable
77         set by autoconf-2.5x.
78
79 Tue Sep 11 18:50:44 2001  Owen Taylor  <otaylor@redhat.com>
80
81         * m4macros/glib-gettext.m4 acinclude.m4: Remove commented
82         out sections for clarity.
83
84 Tue Sep 18 18:19:33 2001  Tim Janik  <timj@gtk.org>
85
86         * tests/testglib.c: add simple test for g_path_get_basename().
87
88         * glib/gfileutils.c (g_file_open_tmp): 
89         * glib/gstrfuncs.c (g_strerror): scratch erroneous usages
90         of "illegal".
91
92 2001-09-18  Tor Lillqvist  <tml@iki.fi>
93
94         * glib/gmain.c
95         * glib/giowin32.c: Mark the _funcs tables for export.
96
97         * glib/glib.def: Add here, too.
98
99         * glib/gwin32.c (get_package_directory_from_module): No reason to
100         check for the module being in a bin or lib directory only when
101         module_name is non-NULL.
102
103         * glib/gwin32.c (g_win32_get_package_installation_directory):
104         Check first in HKEY_CURRENT_USER, then in HKEY_LOCAL_MACHINE.
105
106 2001-09-17  Darin Adler  <darin@bentspoon.com>
107
108         * tests/strfunc-test.c: (main): Change so that it works
109         on platforms where isalpha is a macro only, without the
110         corresponding function that the C standard requires.
111         Also eliminate the multiple lists of ctype functions.
112
113         * tests/.cvsignore: Ignore the new test.
114
115 2001-09-17  Tor Lillqvist  <tml@iki.fi>
116
117         * configure.in: Add variable for LT_CURRENT minus LT_AGE (the
118         suffix used by libtool on Win32 for DLLs). Set variables for the
119         compiled resource files on Windows. Handle the native Win32
120         threads gmodule.
121
122         * glib/Makefile.am
123         * gmodule/Makefile.am
124         * gobject/Makefile.am: (Win32) Add hacks to link in the object
125         file produced from the resource file. Use the lt-compile-resource
126         script from the build module. The non-hack way would be to teach
127         libtool, autoconf and automake about .rc files (which are a kind
128         of source code, after all, that gets compiled to object
129         files). But then there would be problems with those who don't have
130         bleeding edge auto* and libtool.
131
132         * glib/glib.def
133         * gobject/gobject.def: Updates.
134
135         * glib/glib.rc.in
136         * gmodule/gmodule.rc.in
137         * gobject/gobject.rc.in
138         * gthread/gthread.rc.in: Update InternalName and OriginalFilename to
139         match libtool's naming convention for DLLs.
140
141         * glib/gutils.c: Ditto when constructing the DLL name in the
142         definition for GLIB_LOCALE_DIR.
143
144         * glib/makefile.mingw.in
145         * gmodule/makefile.mingw.in
146         * gobject/makefile.mingw.in
147         * gthread/makefile.mingw.in: Update import library names.
148         
149 Fri Sep 14 20:34:27 2001  Matthias Clasen  <matthiasc@poet.de>
150
151         * glib/gconvert.c (g_filename_from_uri): Replace `is contains'
152         by `contains' in two error messages. (#60395)
153
154 2001-09-10  Ron Steinke  <rsteinke@w-link.net>
155
156         * glib/giochannel.h glib/giochannel.c: Added a length argument
157         to g_io_channel_[set,get]_line_term(), allowing embeded nulls
158         and binary safe line termination strings
159
160         * glib/giochannel.c: Got rid of a compile warning in
161         g_io_channel_write_chars()
162
163 Mon Sep 10 17:13:36 2001  Tim Janik  <timj@gtk.org>
164
165         * glib/gmessages.h: got rid of g_set_error_handler(),
166         g_set_warning_handler(), g_set_message_handler().
167
168 Mon Sep 10 11:42:58 2001  Owen Taylor  <otaylor@redhat.com>
169
170         * glib/gutf8.c glib/gstring.c glib/gfileutils.c glib/gmain.c: 
171         Doc fixes.
172
173 Sat Sep  8 17:14:51 2001  Owen Taylor  <otaylor@redhat.com>
174
175         * glib/gfileutils.[ch]: Add g_build_path(), 
176         g_build_filename(), to create separated paths, 
177         suppressing duplicate separators, from varargs
178         lists.
179
180         * tests/strfunc-test.c: Add tests for g_build_path(),
181         g_build_filename().
182
183 Sat Sep  8 14:11:53 2001  Owen Taylor  <otaylor@redhat.com>
184
185         * glib/Makefile.am (libglib_1_3_la_SOURCES): Add
186         gbsearcharray.[ch].
187
188         * glib/glib-object.h: Remove include of gbsearcharray. 
189
190 Mon Sep  3 23:29:51 2001  Owen Taylor  <otaylor@redhat.com>
191
192         * Version 1.3.7
193
194         * Makefile.am (EXTRA_DIST): Distribute po/po2tbl.sed.in
195
196         * Makefile.am: Remove references to glib.rc[.in]
197
198         * NEWS: Various additions.
199
200 2001-09-04  Tor Lillqvist  <tml@iki.fi>
201
202         * README.win32: Update. Don't mention pthreads.
203
204         * build-dll: Remove, moved to the build module.
205
206         * glibconfig.h.win32.in: Don't mention pthreds here, either.
207
208         * glib/gstrfuncs.c: Mark the correct variable for export from DLL.
209
210         * glib/giowin32.c (g_io_win32_msg_create_watch): Owen forgot to
211         rename the win32_watch_funcs variable here, too.
212
213         * */makefile.mingw.in: Don't use version number in import library
214         name. Use whole version number in DLL name. Use build-dll from the
215         build module.
216
217 Tue Sep  4 01:50:24 2001  Tim Janik  <timj@gtk.org>
218
219         * NEWS: updates for 1.3.7 release.
220
221 Mon Aug 27 14:56:12 2001  Owen Taylor  <otaylor@redhat.com>
222
223         * glib/gmain.h: Add closure_marshal/closure_callback
224         fields to GSourceFuncs for use by g_source_set_closure().
225
226         * glib/gmain.c glib/giounix.c glib/giowin32.c 
227           glib/gmain.h: Export the SourceFuncs vtables so GObject
228         can use them to figure out closure callbacks/marshallers
229         for the default source types.
230
231 Sun Sep  2 13:05:53 2001  Owen Taylor  <otaylor@redhat.com>
232
233         * glib/gstrfuncs.c (g_strchomp): Replace some uses
234         of isspace() with g_ascii_isspace().
235
236         * glib/gutf8.c glib/gunicode.h glib/gstrfuncs.[ch]: Add
237         extra indirections to g_utf8_skip and g_ascii_table to
238         avoid great whopping copy relocs.
239
240 Sun Sep  2 11:10:42 2001  Owen Taylor  <otaylor@redhat.com>
241
242         * glib/gen-unicode-tables.pl glib/gunicomp.h
243         glib/gunichartables.h glib/giounix.c: Fix some variables that 
244         should have been static.
245
246 2001-08-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
247
248         * glib/gthread.h, glib/gthread.c: Add 'want_to_read' to
249         GStaticRWLock to avoid calling g_cond_broadcast, when no one is
250         waiting.
251
252         * glib/gmain.c (g_main_context_add_poll_unlocked): Don't free
253         cached_poll_array, when adding new poll's. This is taken care for
254         in g_main_context_iterate.
255
256 2001-08-30  Tor Lillqvist  <tml@iki.fi>
257
258         After being away for about five months, I'm back working on
259         this...  For now, still using same build setup for Win32. Probably
260         will change to not including version numbers in the import library
261         names, though. (But the DLL names would still include them,
262         possibly even also the micro version number.) That would be more
263         Unix-like. Also, will have to check out newest mingw tool versions
264         to see if the build-dll script now can be retired.
265         
266         * makefile.mingw
267         * makefile.msc: New files, no need to generate from .in as
268         they don't contain references to automake variables.
269         
270         * makefile.mingw.in
271         * makefile.msc.in: Removed.
272         
273         * glib.rc.in: Remove
274         * glib/glib.rc.in: Moved here.
275         
276         * Makefile.am
277         * glib/Makefile.am: Corresponding changes.
278
279         * glib/glib.def: Fix typo, add new entries.
280
281         * glib/gspawn-win32-helper.c: More debugging. Doesn't work
282         currently (or then it never has on Win2k, which I now use?)
283
284         * glib/gstrfuncs.c
285         * glib/gstrfuncs.h: Mark g_ascii_table for export/import on Win32.
286
287         * */makefile.mingw.in: Reflect new location of glib library.
288         
289 2001-08-30  Michael Natterer  <mitch@gimp.org>
290
291         * glib/giochannel.h: (struct GIOChannel): "gboolean foo : 1"
292         results in TRUE being -1 once assigned, use "guint foo : 1"
293         instead.
294
295 2001-08-27  Darin Adler  <darin@bentspoon.com>
296
297         * glib/gconvert.h:
298         * glib/gconvert.c: (g_filename_from_uri):
299         Updated name of error from G_CONVERT_ERROR_NOT_LOCAL_FILE to
300         G_CONVERT_ERROR_NOT_ABSOLUTE_FILE_URI.
301         
302         * tests/.cvsignore:
303         * tests/uri-test.c:
304         Added a lot more test for the new URI functions, including a
305         number that seem to indicate some minor bugs.
306
307 2001-08-26  Alex Larsson  <alexl@redhat.com>
308
309         * glib/gconvert.[ch] (g_filename_from_uri,
310         g_filename_to_uri): New functions to convert
311         between local pahtnames and file: uris.
312
313         * tests/Makefile.am:
314         * tests/uri-test.c:
315         Tests for the new functions.
316
317 2001-08-25  Alexander Larsson  <alla@lysator.liu.se>
318
319         * glib/gstrfuncs.[ch]:
320         * docs/reference/glib/glib-overrides.txt:
321         * docs/reference/glib/glib-sections.txt:
322         * docs/reference/glib/tmpl/string_utils.sgml:
323         Implement and document g_ascii_isxxx.
324
325         * tests/strfunc-test.c:
326         Add tests for g_ascii_isxxx
327         
328         * glib/guniprop.c (g_unichar_ispunct):
329         include symbols, not just punctuation.
330         (g_unichar_isspace): Vertical tab is not
331         considered whitespace.
332         
333         * tests/shell-test.c:
334         Output errors on stderr
335
336 2001-08-24  Alexander Larsson  <alla@lysator.liu.se>
337
338         * glib/gconvert.[ch] (g_convert_with_iconv):
339         New function, doing the same as g_convert but taking
340         a GIConv argument. The old g_convert is just
341         a call to this with a newly opened GIConv.
342
343 2001-08-24  Darin Adler  <darin@bentspoon.com>
344
345         * tests/shell-test.c: (check_string_result): Fix bad indenting.
346         I figured I should fix this since I just pointed Alex here to
347         look at this as an example.
348
349 2001-08-24  Ron Steinke  <rsteinke@w-link.net>
350
351         * glib/giochannel.c: Matthias Clasen's fix for
352         the buffer corruption bug by setting outbuf _after_
353         the call to g_string_set_size()
354
355         * glib/giochannel.c: kept the buffers from perpetually
356         growing by subtracting 1 from allocated_len in the calculation
357         of available space to account for the null at the end of the
358         buffer
359
360         * glib/giochannel.c: fixed g_io_channel_write_chars()
361         to not write more than space_in_buf bytes for the UTF-8 case
362
363 Fri Aug 24 11:15:46 2001  Owen Taylor  <otaylor@redhat.com>
364
365         * glib/gstrfuncs.c docs/Changes-2.0.txt: Patch from Darin
366         Adler to restore Glib-1.2 handling of empty strings,
367         and to fix off-by-one with @max_tokens. (#57663).
368         Doc improvements.
369
370         * tests/strfunc-test.c: Change tests to correspond to
371         new behavior of g_strsplit().
372
373 Thu Aug 23 11:09:58 2001  Owen Taylor  <otaylor@redhat.com>
374
375         * glib/ghash.c (g_hash_table_foreach_remove_or_steal): 
376         Patch from Josh Pritikin to fix reversed key and value destroy 
377         functions. (#59433)
378
379         * glib/giochannel.h (struct _GIOChannel): Mark structure
380         /*< private >*/
381
382 Thu Aug 23 16:14:17 2001  Tim Janik  <timj@gtk.org>
383
384         * glib/gmacros.h (G_GNUC_NO_INSTRUMENT): new macro.
385
386 2001-08-21  Abel Cheung  <maddog@linux.org.hk>
387
388         * configure.in: Added "zh_TW" to ALL_LINGUAS.
389
390 2001-08-20  Sven Neumann  <sven@gimp.org>
391
392         * Makefile.am: added po to SUBDIRS
393
394 Sun Aug 19 21:32:39 2001  Owen Taylor  <otaylor@redhat.com>
395
396         * glib/ghash.c: Eliminate use of floating point when 
397         determining if the hash table needs to be resized,
398         and also factor out the test from g_hash_table_resize()
399         to save function calls for the common case.
400         (#59124)
401
402         * glib/gmain.c (g_main_context_query): Document the
403         return value.
404
405 2001-08-19  Darin Adler  <darin@bentspoon.com>
406
407         * glib/gshell.c: (g_shell_quote): Added missing \ character.
408
409         * tests/shell-test.c: (check_string_result), (test_shell_unquote),
410         (main): Added tests for g_shell_quote and g_shell_unquote.
411
412 2001-08-19  Fatih Demir <kabalak@gtranslator.org>
413
414         * configure.in: Added "ta" to the languages list.
415
416 2001-08-19  Havoc Pennington  <hp@pobox.com>
417
418         * glib/gshell.c (g_shell_unquote): add comment about shell quoting
419         rules to the docs.
420
421 2001-08-16  Ron Steinke  <rsteinke@w-link.net>
422
423         * glib/giounix.c: fixed an error in setting close_on_unref
424         in g_io_channel_new_file ()
425
426 2001-08-16  Ron Steinke  <rsteinke@w-link.net>
427
428         * glib/giochannel.c glib/glib.def glib/giochannel.h: Added
429         new functions g_io_channel_[set,get]_close_on_unref ()
430
431         * glib/giochannel.c: glib/giochannel.h: Documentation fixes
432
433         * glib/giochannel.c: Fixed g_io_channel_write_chars ()
434         so that bytes_written is always set to an appropriate
435         value when it returns
436
437         * glib/giounix.c: changed g_io_channel_get_flags () to
438         set the is_readable and is_writeable flags cached
439         by the channel
440
441 Wed Aug 15 11:09:56 2001  Tim Janik  <timj@gtk.org>
442
443         * Makefile.am: let the generated .pc files depend on config.status,
444         so they get correctly remade.
445
446 Sun Aug 12 21:05:13 2001  Tim Janik  <timj@gtk.org>
447
448         * glib/gmessages.h: fix g_return_if_fail, g_assert and friends to
449         have a body for G_DISABLE_CHECKS and G_DISABLE_ASSERT.
450         fixes #58873.
451
452 2001-08-12  Ron Steinke  <rsteinke@w-link.net>
453
454         * glib/giochannel.c: safer handling of errno, fixed
455         a bug in an assert
456
457 Sun Aug 12 10:09:00 2001  Owen Taylor  <otaylor@redhat.com>
458
459         * tests/iochannel-test.c (main): Find test case for
460         srcdir != builddir, miscellaneous cleanups.
461
462         * tests/Makefile.am (EXTRA_DIST): Distribute casefold.txt,
463         casemap.txt iochannel-test-infile.
464
465         * glib-2.0-uninstalled.pc.in: Fix for move of glib files
466         into subdir. (Pointed out by Steve Baker)
467
468 Sat Aug  4 01:04:08 2001  Tim Janik  <timj@gtk.org>
469
470         * glib/gscanner.c (g_scanner_unexp_token): fix INT and FLOAT warnings
471         for invalid token values.
472
473 2001-08-10  Ron Steinke  <rsteinke@w-link.net>
474
475         * glib/giochannel.c: Fixed a "sense of comparison" bug,
476         added an assert to check when g_io_channels_read_chars ()
477         is looping endlessly due to encoded_read_buf being corrupted.
478
479 2001-08-06  Sven Neumann  <sven@gimp.org>
480
481         * glib/gutils.[ch]: added new function g_nullify_pointer().
482         
483 2001-08-05  Ron Steinke  <rsteinke@w-link.net>
484
485         * glib/giochannel.c glib/giochannel.c glib/glib.def
486         docs/reference/glib/glib-sections.txt: Added new functions
487         g_io_channel_[read,write]_unichar ()
488
489         * glib/giochannel.h: Finally remembered to remove the
490         old error message G_IO_CHANNEL_ERROR_PCHAR_FLUSH
491
492         * glib/giochannel.c: Some fixes to g_io_channel_fill_buffer ()
493         and g_io_channel_write_chars ()
494
495 2001-08-05  Ron Steinke  <rsteinke@w-link.net>
496
497         * glib/giochannel.c: Replaced the local use_buf variable with a macro
498         in most places. This allows us to check some things without worrying
499         whether we have allocated the read buffers yet, and allows us to allocate
500         the buffers later in some cases.
501
502         * glib/giochannel.c: Introduced a MAX_CHAR_SIZE macro, which is
503         supposed to be greater than or equal to the length in bytes
504         of the longest character in any encoding. This is necessary
505         to get the minimum buffer size for successful writing.
506
507         * glib/giochannel.c: Fixed g_io_channel_set_encoding () so
508         that it just prints a warning if partial_write_buf isn't
509         empty instead of failing.
510
511         * glib/giochannel.c: Fixed several functions so they can accept
512         NULL parameters for pointers to return values.
513
514         * glib/giochannel.c: Altered the error handling for
515         g_io_channel_read_chars () to only return an error if
516         it doesn't have any buffered data.
517
518         * glib/giochannel.c: Rewrote g_io_channel_write_chars ()
519         to fix the error handling and remove duplicate sections
520         of code.
521
522         * glib/giounix.c: Fixed g_io_channel_new_file () to
523         call fstat () to set the is_seekable flag, in case someone
524         uses it on a FIFO.
525
526 Sun Aug  5 08:25:30 2001  Owen Taylor  <otaylor@redhat.com>
527
528         * glib/gmacros.h: Include stddef.h so that we use
529         the system's definition of NULL. (#54730)
530
531 2001-08-04  Alexander Larsson   <alexl@redhat.com>
532         
533         * win32-fixup.pl: 
534         Hacky script to fix up your .msc.in files on windows. 
535         Dunno if this is a good solution yet.
536         
537         * build/win32/module.defs:
538         Back down libiconv version to 1.3, since that is what tor distributes.
539         
540         * glib/glib.def:
541         Update
542
543         * gobject/makefile.msc.in:
544         build gobject-query.exe and gmarshal.strings, add libiconv dependency to linklines.
545
546         * gobject/marshal-genstrings.pl:
547         New file. perl script to generate gmarshal.strings.
548         
549 2001-08-03  Ron Steinke  <rsteinke@w-link.net>
550
551         * glib/giochannel.c: Fixed g_io_channel_seek_position()
552         so that G_SEEK_CUR can be used with UTF-8 encoding
553
554         * glib/giochannel.c: Changed test to decide whether
555         use_buf is encoded_read_buf or read_buf from
556         "if (channel->do_encode)" to "if (channel->encoding)" to
557         fix bug 58472
558
559         * tests/iochannel-test.c: Fixed so it doesn't output
560         double newlines
561
562         * glib/giochannel.c: Fixed g_io_channel_fill_buffer()
563         so that encoded_read_buf is created for UTF-8 encoding
564
565 2001-08-03  Darin Adler  <darin@bentspoon.com>
566
567         * tests/strfunc-test.c: (strv_check), (main):
568         Improve strfunc test to test the split function in a way that
569         demonstrates its idiosyncrasies.
570         * tests/.cvsignore:
571
572 2001-08-03  Sven Neumann  <sven@gimp.org>
573
574         * configure.in: beautified configure help output.
575         
576         * glib/gtree.c: changed help for g_tree_insert(); it was misleading.
577
578 Fri Aug  3 10:20:10 2001  Owen Taylor  <otaylor@redhat.com>
579
580         * glib/guniprop.c (g_unichar_xdigit_value): Fix computation
581         (Fix from Cesar Rincon)
582
583 2001-08-01  Christopher James Lahey  <clahey@ximian.com>
584
585         * glib/gutf8.c (g_utf8_find_prev_char): Made g_utf8_find_prev_char
586         able to return the first character of a string.
587
588 2001-07-31  Ron Steinke  <rsteinke@w-link.net>
589
590         * glib/giochannel.h: Committed this file, which is where
591         the changes in my previous changelog entry happened,
592         not giochannel.c
593
594 2001-07-31  Sven Neumann  <sven@gimp.org>
595
596         * glib/gmem.c: declare gboolean vtable_set static.
597
598 2001-07-30  Ron Steinke  <rsteinke@w-link.net>
599
600         * glib/giochannel.c docs/reference/glib/glib-sections.txt
601         tests/iochannel-test.c: removed G_IO_CHANNEL_*_LINE_TERM macros
602
603         * glib/giochannel.c put /*<public>*/ and /*<private>*/ tags in
604         the GIOChannel structure
605
606
607 2001-07-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
608
609         * configure.in: #undef inline before testing whether it works to
610         avoid false positives. Patch from Garry R. Osgood
611         <grosgood@rcn.com>. Fixes bug #58272.
612
613         * gmodule/gmodule.c (parse_libtool_archive): build the library
614         name ourselfs ... so we can load the library specified and not
615         mangle any name not beggining in 'lib'. Patch from Michael Meeks
616         <michael@ximian.com>. Fixes bug #58226.
617
618 2001-07-29  Ron Steinke  <rsteinke@w-link.net>
619
620         * glib/giochannel.c: Matthias Classen's patch to give
621         g_io_channel_flush() the correct sense when testing
622         whether the buffer is empty
623         * glib/giounix.c: Matthias Classen's patch to set
624         the mode of a file created with g_io_channel_new_file()
625
626 Sun Jul 29 16:08:17 2001  Tim Janik  <timj@gtk.org>
627
628         * glib/gscanner.[hc]: removed deprecated g_scanner_stat_mode().
629
630         * glib/gscanner.c (g_scanner_msg_handler): by default, print scanner
631         errors and warnings to stderr.
632
633 2001-07-27  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
634
635         * glib/gtypes.h: Use G_GNUC_EXTENSION instead of
636         __extension__. Patch from Pavel Roskin <proski@gnu.org>.
637
638 2001-07-26  Darin Adler  <darin@bentspoon.com>
639
640         * configure.in:
641         * m4macros/glib-2.0.m4:
642         Update location of pkgconfig from sourceforge.net to new
643         location at freedeskop.org.
644
645 2001-07-26  Michael Natterer  <mitch@convergence.de>
646
647         * gobject/glib-genmarshal.c: added a "release_check" to the
648         OutArgument structure, which, if present, gets integrated in the
649         marshaller code and protects us from stuff like
650         g_object_unref(NULL) on marshaller return values.
651
652 2001-07-23  Padraig O'Briain  <Padraig.Obriain@sun.com>
653
654         * gobject/gobjectnotifyqueue.c: fix unconditional check of
655         first GParamSpec in g_object_notify_queue_thaw(); prevent
656         property notification being lost
657
658 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
659
660         * glib/giochannel.c: fixed g_io_channel_seek_position() so that
661         G_SEEK_CUR works for UTF-8 channel encoding, and unallocated
662         converters are not flushed after the seek; fixed
663         g_io_channel_get_buffer_condition() so that G_IO_IN is only
664         set if the read buffer contains at least one full character
665
666 2001-07-23  Sven Neumann  <sven@gimp.org>
667
668         * Makefile.am: removed glib.def from EXTRA_DIST ...
669         * glib/Makefile.am: ... and added it here.
670
671 2001-07-22  Hans Breuer  <hans@breuer.org>
672
673         * glib/giochannel.c (g_io_channel_get_buffer_condition) : make
674         the code actually have an effect (Use |= to set bits). Not
675         absolutely sure if is the right one.
676
677         * glib/giowin32.c (g_io_win32_<check|prepare>) : don't modify
678         watch->condition but restored the previous behaviour.
679         Now gio-test as well as The Gimp work again ...
680         
681 2001-07-21  Hans Breuer  <hans@breuer.org>
682
683         * glib/giowin32.c (g_io_channel_new_file) : set the
684         corresponding p(ermission)mode of the file when creating,
685         otherwise a wronly file couldn't be overwritten (at least
686         not on Win9x).
687
688 2001-07-21  Hans Breuer  <hans@breuer.org>
689
690         * glib/giowin32.c : intial implementation of new API functions.
691         Not sure if it behaves as intended ...
692
693         * glib.def : removed, glib/glib.def is the file used since moved
694         * glib/glib.def : updated
695
696         * tests/makefile.msc : added iochannel-test
697
698 Fri Jul 20 19:19:10 (UTC) 2001  Ron Steinke  <rsteinke@w-link.net>
699
700         * glib/giochannel.c: API changes, fixes to
701         error handling, some internal restructuring
702         * glib/giochannel.h: API changes, documentation for
703         elements in GIOChannel structure
704         * glib/giounix.c: Matched API changes, implemented
705         backend to set is_readable, is_writeable, is_seekable
706         flags, added a test to catch large values of count
707         for which the behavior of write() is undefined
708         * glib/giowin32.c: Changed to match new prototypes for
709         io_close() and io_seek(), removed references to
710         G_IO_STATUS_INTR, set is_seekable flag in channel
711         creation functions
712         * glib.def: Renamed g_channel_error_quark() and
713         g_channel_error_from_errno() to g_io_channel_error_quark() and
714         g_io_channel_error_from_errno(); added new functions
715         g_io_channel_get_buffered() and g_io_channel_set_buffered()
716         * docs/reference/glib/glib-sections.txt: Modified iochannel
717         section to reflect new functions and API changes
718         * tests/iochannel-test.c: Fixed to work with API changes
719         * tests/iochannel-test-infile: New file; input file
720         for iochannel-test
721         * tests/unicode-collate.c tests/unicode-normalize.c:
722         Changed G_IO_FILE_MODE_READ to "r" to match API change
723
724 Fri Jul 20 19:16:24 (UTC) 2001  Ron Steinke  <rsteinke@w-link.net>
725
726         * gobject/glib-genmarshal.c: modified to create header files
727         using G_[BEGIN,END]_DECLS instead of #ifdef __cplusplus ...
728
729 Fri Jul 20 14:11:29 2001  Owen Taylor  <otaylor@redhat.com>
730
731         * glib/gutf8.c glib/gunidecomp.c: s/size_t/gsize/ to match
732         prototypes.
733
734 Thu Jul 19 16:05:21 2001  Owen Taylor  <otaylor@redhat.com>
735
736         * glib/gcompletion.c (g_completion_complete): Fix memory
737         leak and dubious list manipulation. (Found by 
738         Ron Koerner, #53408)
739
740         * glib/gfileutils.c (get_contents_stdio): Call fclose()
741         on FILE * on error. (#57057)
742
743 2001-07-20  Hans Breuer  <hans@breuer.org>
744
745         * glib/glib/giowin32.c : make it compile again
746
747         * glib/glib.def : updated exports
748
749         * glib/makefile.msc.in :
750         * glib/makefile.mingw.in : 
751         * tests/makefile.msc.in : reflect glib move
752
753         * tests/mainloop-test.c : #include <io.h> for _pipe()
754
755         * tests/gio-test.c : casts for strict compiler settings
756
757         * makefile.msc.in : new master makefile reflecting the glib
758         move. The '.in' isn't really needed anymore, because there
759         is no version number in it
760
761 2001-07-19  Darin Adler  <darin@bentspoon.com>
762
763         * glib/gstrfuncs.c: (g_ascii_strdown), (g_ascii_strup): Add
764         missing const.
765         (g_strsplit): Add g_return_val_if_fail for case of empty
766         delimiter, which can result in an infinite loop otherwise.
767         * glib/gstrfuncs.h: Add missing const.
768         * tests/.cvsignore: Ignore a generated file.
769         
770         * tests/array-test.c:
771         * tests/dirname-test.c:
772         * tests/hash-test.c:
773         * tests/list-test.c:
774         * tests/node-test.c:
775         * tests/relation-test.c:
776         * tests/shell-test.c:
777         * tests/slist-test.c:
778         * tests/spawn-test.c:
779         * tests/strfunc-test.c:
780         * tests/string-test.c:
781         * tests/testglib.c:
782         * tests/tree-test.c:
783         * tests/type-test.c:
784         Add an #undef G_DISABLE_ASSERT so all tests will assert even if
785         asserts are disabled inside glib itself.
786
787 Fri Jul 13 19:20:06 2001  Owen Taylor  <otaylor@redhat.com>
788
789         * glib/gstring.c (g_string_insert/append/prepend_unichar):
790         Add functions to insert a unichar as UTF-8, since this
791         is reasonably common.
792
793         * glib/gutf8.c glib/gunicode.h (g_utf8_get_char_validated):
794         New function exposing iterating through possibly invalid/incomplete
795         UTF-8 to unicode to the outside world.
796
797         * glib/gutf8.c (g_utf8_get_char_extended): Fix max_len argument
798         to be gssize, not gsize.
799
800 2001-07-17  Kjartan Maraas  <kmaraas@gnome.org>
801
802         * configure.in: Added "nn" to ALL_LINGUAS.
803         
804 2001-07-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
805
806         * glib/gmain.c: Add some assertions. Simplify and fix
807         g_main_context_release(). Fix some locking bugs in
808         g_main_loop_run().
809
810 2001-07-12  Mark Murnane  <Mark.Murnane@sun.com>
811
812         * glib/gmessages.c: Changed prototype of printf_string_upper_bound
813         to return gsize.  Now matches the actual function body.
814
815         * glib/gstrfuncs.c (g_strrstr_len): Changed type of parameter #2 
816         from gint to gssize.  Now matches the prototype in gstrfuncs.h.
817         
818 2001-07-11  Darin Adler  <darin@bentspoon.com>
819
820         * .cvsignore: Add some generated files.
821
822         * glib/gmain.c: (g_main_context_iterate): Comment out cruft
823         after #endif to avoid gcc warning.
824         * gmodule/gmodule.c: (g_module_set_error_unduped): Remove
825         const from type to avoid gcc warning.
826         * gobject/gsignal.c: (g_signal_emitv): ifdef variable used
827         only if G_ENABLE_DEBUG to avoid gcc warning.
828         * gobject/gtype.c: (type_iface_vtable_init_Wm),
829         (type_iface_vtable_finalize_Wm): ifdef call needed only
830         if !G_DISABLE_ASSERT to avoid gcc warning.
831         * tests/testglib.c: (main): ifdef call needed only if
832         !G_DISABLE_ASSERT to avoid gcc warning. Maybe later we
833         should make the test to #undef G_DISABLE_ASSERT.
834         * tests/unicode-collate.c: Add include of <string.h> to
835         avoid gcc warning.
836
837 Wed Jul 11 11:13:50 2001  Owen Taylor  <otaylor@redhat.com>
838
839         * glib/Makefile.am (libglib_1_3_la_SOURCES): Add gunicomp.h
840         (Reported by Sven Neumann).
841
842         * glib/guniprop.c (g_utf8_str/updown) glib/gunicollate.c
843         (g_utf8_collate_key): Fix shadowing problems reported by
844         many (D. Adler, S. Neumann, M. Murmane, L. Peter)
845
846 Fri Jul  6 00:02:41 2001  Tim Janik  <timj@gtk.org>
847
848         * glib/gmessages.c (printf_string_upper_bound): fix negative exponent
849         handling (numbers<0).
850         
851         * glib/gutils.h (g_bit_storage): take a gulong as argument.
852         same for g_bit_nth_lsf() and g_bit_nth_msf() as mask.
853
854 2001-07-08  Martin Baulig  <baulig@suse.de>
855
856         * tests/unicode-normalize.c, tests/unicode-collate.c:
857         Reflect latest g_io_channel_new_file() API changes, use
858         G_IO_FILE_MODE_READ instead of "r".
859
860 Fri Jul  6 22:34:32 2001  Owen Taylor  <otaylor@redhat.com>
861
862         * glib/gunicode.h glib/gunidecomp.c glib/guniprop.c 
863           glib/gunicollate.c: Add length arguments to
864         g_utf8_{strup,strdown,casefold,collate_key}.
865
866         * glib/gdate.c: Fix for above.
867
868 2001-07-06  Pablo Saratxaga <pablo@mandrakesoft.com>
869
870         * configure.in: added Basque (eu) to ALL_LINGUAS
871
872 Mon Jul  2 19:48:52  2001 Andrew Lanoix <alanoix@umich.edu>
873
874         *giowin32.c: g_source_remove()ing an socket iochannel closes
875         the socket when it should not. Patch by Peter Zelezny 
876         <zed@linux.com>
877
878         *giowin32.c: Fix a few typos
879         
880 Mon Jul  2 16:03:21 2001  Owen Taylor  <otaylor@redhat.com>
881
882         * glib/giochannel.c (g_io_channel_get_buffer_condition): Fix.
883
884         * glib/giunix.c: Fix prepare/check/dispatch for watches.
885
886         * tests/unicode-normalize.c: #include <string.h>
887
888 Sat Jun 30 23:14:32 2001  Tim Janik  <timj@gtk.org>
889
890         * glib/glist.[hc]: added g_list_insert_before().
891
892         * glib/gslist.c (g_slist_insert_before): provide an implementation,
893         prototype was already present...
894
895 Sun Jul  1 20:16:25 2001  Owen Taylor  <otaylor@redhat.com>
896
897         * glib/guniprop.c (g_unichar_totitle): Use G_N_ELEMENTS
898         rather than a custom macro.
899
900         * glib/gen-unicode-tables.pl: Adapt to changes in table
901         formats for Unicode 3.1
902
903         * glib/gunicode.h glib/guniprop.c glib/gunichartables.h
904           glib/gen-unicode-tables.pl: Add case conversion functions
905         g_utf8_casefold, g_utf8_strup, g_utf8_strdown.
906
907         * tests/unicode-caseconv.c tests/gen-casefold-txt.pl
908           tests/gen-casemap-txt.pl tests/casefold.txt 
909           tests/casemap.txt: Test cases for case conversion.
910
911         * glib/gunicode.h glib/gunidecomp.[ch] glib/gunicomp.h
912           glib/gen-unicode-tables.pl: Add function to do Unicode
913         normalization g_utf8_normalize().
914
915         * tests/unicode-normalize.c: Test program for case conversion.
916
917         * glib/gunicode.h glib/gunicollate.c: Add collation functions
918         g_utf8_collate, g_utf8_collate_key.
919
920         * test/unicode-collate.c: Test program for collation.
921
922         * glib/gdate.c (g_date_fill_parse_tokens): Fix uninitialized
923         variable.
924
925         * glib/gdate.c (g_date_strftime) docs/Changes-2.0.txt:
926         Make work with UTF-8 even if the locale isn't UTF-8 based.
927         Still somewhat of broken, if the format string contains 
928         characters not representable in the current locale, will warn
929         and not work.
930         
931         * glib/gdate.c: Use UTF-8 normalization and casefolding.
932
933 Sat Jun 30 16:03:16 2001  Owen Taylor  <otaylor@redhat.com>
934
935         * glib/giowin32.c glib/giounix.c glib/gmain.[ch]:
936         Rename GSourceFuncs::destroy to GSourceFuncs::finalize.
937         (#56858)
938
939 Sat Jun 30 15:49:10 2001  Owen Taylor  <otaylor@redhat.com>
940
941         * glib/gmain.[ch]: (Mostly patch from Sebastian Wilhemi)
942         Make some changes to the way that GMainContext works:
943
944          - a GMainContext is no longer associated with a single
945            thread, but any thread can acquire ownership 
946            of thread and iterate.
947
948          - There is a facility g_main_context_wait() for
949            non-owner-threads to wait either for ownership
950            or for a condition to be broadcast.
951
952          - For efficiency, GMainLoop just piggybacks of
953            of the loops mutex / condition instead of
954            having a separate mutex/condition for each
955            GMainLoop.
956
957         * glib/gthread.[ch]: Remove hacks to store the thread's
958         GMainContext in the GThread structures, since we
959         no longer have the GMainContext <=> GThread correspondence.
960         
961         * glib/gmain.[ch]: Make g_main_context_wakeup() public
962         so someone could completely duplicate GMainLoop 
963         with the public API.
964
965         * tests/mainloop-test: Fix up to the new API. Decidedly
966         doesn't work at the moment, but that may be the IO
967         channel changes, or preexisting locking problems.
968
969 Sat Jun 30 13:18:28 2001  Owen Taylor  <otaylor@redhat.com>
970
971         * glib/gstrfuncs.c glib/gstring.h: Try compiling
972         before committing, why don't you? Simple fixes
973         for my stupid typos. 
974
975 Sat Jun 30 12:49:26 2001  Owen Taylor  <otaylor@redhat.com>
976
977         Patch from Darin Adler (#54166)
978         
979         * glib/gstrfuncs.[ch]: Add ascii-only, locale-insensitive
980         g_ascii_to[lower/upper], g_ascii_str[down/up],
981         g_ascii_is[upper/lower] and deprecate the locale-affected
982         versions which break for UTF-8, etc. Make
983         g_ascii_strup/strdown duplicating,
984         not in-place for consistency with UTF-8 functions.
985
986         * glib/gstring.[ch]: Add ascii-only, locale-insensitive
987         g_string_ascii_[down/up], and deprecate the locale-affected
988         versions which break for UTF-8, etc.
989
990         * glib/gutils.c glib/gwin32.c test/testglib.c: Use
991         the g_ascii_* functions where appropriate.
992
993 Fri Jun 29 13:36:39 2001  Owen Taylor  <otaylor@redhat.com>
994
995         * glib/gstring.[ch] (g_string_set_size): Add function to 
996         allow setting the length of a string greater than the 
997         current length (for buffering usage)
998
999         * glib/gstring.[ch]: Expose string->allocated_len, since
1000         that is useful when using GString simply as a buffer. 
1001         (Renamed from string->alloc)
1002
1003         * glib/giochannel.[ch] glib/giounix.c glib/giowin32.c:
1004         Major patch from Hidetoshi Tajima and Ron Steinke
1005         reworking GIOChannel to have:
1006
1007          - Buffering
1008          - Sane and useful error reporting
1009          - Streaming encoding conversion with iconv
1010          - Convenience functions to read by lines or 
1011            an entire file.
1012
1013         Also fix remaining 64 bit cleanliness issues.
1014
1015         * tests/iochannel-test.c tests/Makefile.am: Test case
1016         for IO channel streaming conversion. Still needs 
1017         some fixing up.
1018
1019 Thu Jun 28 16:57:44 2001  Tim Janik  <timj@gtk.org>
1020
1021         * configure.in (GLIB_MICRO_VERSION): up version number to 1.3.7,
1022         interface age 0, binary age 0.
1023
1024 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1025
1026         * glib/gmarkup.c: Fix a typo.
1027         
1028 2001-06-27  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1029
1030         * Makefile.am, configure.in: Removed glib-config-2.0, as we have
1031         pkg-config now.
1032
1033         * glib/Makefile.am: Added -I$(top_srcdir) for builddir != srcdir.
1034
1035         * Makefile.am: Removed gen-unicode-tables.pl from EXTRA_DIST.
1036
1037 Tue Jun 26 11:43:46 2001  Owen Taylor  <otaylor@redhat.com>
1038
1039         * configure.in Makefile.am *.[ch] glib/*.[ch] glib/Makefile.am:
1040         Move glib library into a subdirectory, make all GLib include
1041         files include as <glib/glist.h>
1042
1043         * tests/testglib.c tests/testgdate.c tests/testgdateparser.c
1044           tests/timeloop.c tests/timeloop-basic.c: Move all tests into
1045         the tests/ subdirectory.
1046
1047 Sat Jun 23 17:34:38 2001  Tim Janik  <timj@gtk.org>
1048
1049         * gmessages.c (g_logv): use G_BREAKPOINT() instead of raise(5).
1050
1051 Wed Jun 20 12:00:54 2001  Owen Taylor  <otaylor@redhat.com>
1052
1053         Changes for 64-bit cleanliness, loosely based on patch 
1054         from Mark Murnane.
1055         
1056         * gconvert.c (g_convert/g_convert_with_fallback): Remove
1057         workarounds for since-fixed GNU libc bugs. Minor
1058         doc fix.
1059
1060         * gconvert.[ch]: Change gint to gsize/gssize as
1061         appropriate.
1062
1063         * gconvert.c (g_locale/filename_to/from_utf8): Fix incorrect
1064         computation of bytes_read / bytes_written.
1065
1066         * gfileutils.[ch] (g_file_get_contents): Make length
1067         out parameter 'gsize *len'.
1068
1069         * ghook.c (g_hook_compare_ids): Don't compare a
1070         and b as 'a - b'.
1071
1072         * gmacros.h (GSIZE_TO_POINTER): Add GPOINTER_TO_SIZE,
1073         GSIZE_TO_POINTER.
1074
1075         * gmain.c (g_timeout_prepare): Rewrite to avoid
1076         overflows. (Fixes bug when system clock skews
1077         backwards more than 24 days.)
1078
1079         * gmarkup.[ch]: Make lengths passed to callbacks
1080         gsize, length for g_markup_parse-context_parse(),
1081         g_markup_escape_text() gssize.
1082
1083         * gmessages.[ch] (g_printf_string_upper_bound): Change
1084         return value to gsize.
1085
1086         * gmessages.c (printf_string_upper_bound): Remove
1087         a ridiculous use of 'inline' on a 300 line function.
1088
1089         * gstring.[ch]: Represent size of string as a gsize,
1090         not gint. Make parameters to functions take gsize,
1091         or gssize where -1 is allowed.
1092
1093         * gstring.c (g_string_erase): Make
1094         g_string_erase (string, pos, -1) a synonym for
1095         g_string_truncate for consistency with other G*
1096         APIs.
1097
1098         * gstrfuncs.[ch]: Make all functions taking a string
1099         length, take a gsize, or gssize if -1 is allowed.
1100         (g_strstr_len, g_strrstr_len). Also fix some boundary
1101         conditions in g_str[r]str[_len].
1102
1103         * gutf8.c tests/unicode-encoding.c: Make parameters that 
1104         are byte lengths gsize, gssize as appropriate. Make 
1105         character offsets, other counts, glong.
1106
1107         * gasyncqueue.c gcompletion.c
1108           timeloop.c timeloop-basic.c gutils.c gspawn.c.
1109         Small 64 bit cleanliness fixups.
1110
1111         * glist.c (g_list_sort2, g_list_sort_real): Fix functions
1112         that should have been static.
1113
1114         * gdate.c (g_date_fill_parse_tokens): Fix extra
1115         declaration that was shadowing another.
1116
1117         * tests/module-test.c: Include string.h
1118
1119 Mon Jun 18 15:43:29 2001  Owen Taylor  <otaylor@redhat.com>
1120
1121         * gutf8.c (g_get_charset): Make argument
1122         G_CONST_RETURN char **.
1123
1124 2001-06-22  Andrew Lanoix <alanoix@umich.edu>
1125         
1126         *giowin32.c: Debug and partial rewrite of async socket code
1127         on windows, which fixes major MT issues. Some test code kindly 
1128         provided by wroberts1@home.com.
1129         
1130 Thu Jun 14 14:09:46 2001  Owen Taylor  <otaylor@redhat.com>
1131
1132         * gstrfuncs.c (g_strconcat): Fix a use of strcat that
1133         wasn't replaced with g_stpcpy in the original 
1134         stpcpy-for-efficiency patch.
1135
1136 2001-06-11  Havoc Pennington  <hp@redhat.com>
1137
1138         * NEWS: updated
1139
1140         * configure.in (GLIB_MICRO_VERSION): increment version to 1.3.6
1141
1142 2001-06-08  Alex Larsson  <alexl@redhat.com>
1143
1144         * gstrfuncs.[ch]:
1145         Added new functions g_strstr_len, g_strrstr and g_strrstr_len
1146         
1147         * tests/strfunc-test.c:
1148         Add some tests for the new functions.
1149         
1150         * gunicode.h:
1151         * gutf8.c:
1152         Add length argument to g_utf8_strchr and g_utf8_strrchr.
1153         
1154 2001-06-08  Havoc Pennington  <hp@redhat.com>
1155
1156         * gspawn.c: support G_SPAWN_FILE_AND_ARGV_ZERO specifying that 
1157         the vector passed in to g_spawn_* contains a filename to 
1158         execute in argv[0] then the actual argv begins at argv + 1.
1159         Kind of a lame hack, but this isn't something you commonly want
1160         to do, and avoids adding more function arguments.
1161
1162 2001-06-08  Pablo Saratxaga <pablo@mandrakesoft.com>
1163
1164         * configure.in: Added Azeri (az) to ALL_LINGUAS
1165
1166 2001-06-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1167
1168         * docs/Makefile.am, configure.in: Remove docs/glib-config.1.in.
1169
1170         * gthread-2.0-uninstalled.pc.in (Cflags): Add @G_THREAD_CFLAGS@.
1171
1172 2001-06-07  Havoc Pennington  <hp@redhat.com>
1173
1174         * m4macros/glib-2.0.m4: subst GLIB_GENMARSHAL, GOBJECT_QUERY, 
1175         GLIB_MKENUMS variables
1176
1177         * gmodule-2.0.pc.in: add gmodule_supported variable
1178
1179         * glib-2.0.pc.in: add glib_genmarshal, gobject_query,
1180         glib_mkenums variables  
1181
1182         * configure.in: put G_MODULE_SUPPORTED value into 
1183         .pc files
1184
1185         * autogen.sh: support AUTOGEN_SUBDIR_MODE
1186
1187         * Makefile.am: add -uninstalled.pc.in to EXTRA_DIST
1188
1189 2001-06-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1190
1191         * configure.in: Look for nanosleep function. 
1192
1193         * gtimer.c: Use nanosleep for g_usleep, when found.
1194
1195         * gtimer.c, gtimer.h: Add g_time_val_add function. Closes #54271.
1196
1197         * gasyncqueue.c: Documentation updates.
1198
1199         * gthreadpool.c: Use g_time_val_add now that we have it.
1200
1201 2001-06-01  Jon Trowbridge  <trow@gnu.org>
1202
1203        * gdate.c (g_date_update_julian): Changed to take a const
1204        argument, and then to cast out const.
1205        (g_date_update_dmy): Changed to take a const argument, and then
1206        cast out const.
1207        (g_date_get_weekday): Changed argument to be const.
1208        (g_date_get_month): Changed argument to be const.
1209        (g_date_get_year): Changed argument to be const.
1210        (g_date_get_day): Changed argument to be const.
1211        (g_date_get_julian): Changed argument to be const.
1212        (g_date_get_day_of_year): Changed argument to be const.
1213        (g_date_get_monday_week_of_year): Changed argument to be const.
1214        (g_date_get_sunday_week_of_year): Changed argument to be const.
1215        (g_date_compare): Changed arguments to be const.
1216        (g_date_to_struct_tm): Changed GDate argument to be const.
1217        (g_date_strftime): Changed GDate argument to be const.
1218        (g_date_clamp): Added.  The equivalent of the CLAMP macro for
1219        GDates.
1220        (g_date_order): Added.  Ensure that the first GDate argument
1221        preceeds the second, swapping them if necessary.
1222        (g_date_days_between): Added.  Computes the (signed) number of days
1223        between two dates.
1224
1225 Mon Jun  4 16:02:57 2001  Owen Taylor  <otaylor@redhat.com>
1226
1227         * gstrfuncs.c (g_strup/strdown): to match g_strcasecmp,
1228         check if it is lower/upper before converting to upper/lower
1229         [ not required by ISO... ] (#55682, Jon Trowbridge)
1230
1231 Mon Jun  4 15:59:15 2001  Owen Taylor  <otaylor@redhat.com>
1232
1233         * gunicode.h: Make a bit more standalone by adding include
1234         of gerror.h. #54543.
1235         
1236         * gunicode.h: Change size_t to g_size. (Ugh)
1237
1238 2001-05-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1239
1240         * grand.h (g_random_boolean, g_rand_boolean): Fix to stupid bug in
1241         g_random_boolean, also both functions now return 1 or 0 instead of
1242         1<<15 or 0.
1243
1244         * tests/rand-test.c: Extended testcases.
1245
1246         * configure.in: Remove G_HAVE_ISO_CXX_VARARGS and
1247         G_HAVE_ISO_C_VARARGS and define G_HAVE_ISO_VARARGS directly
1248         guarded by #if(n)def __cplusplus.
1249
1250 2001-05-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1251
1252         * gthread-2.0.pc.in: Add @G_THREAD_CFLAGS@ to Cflags.
1253
1254 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1255
1256         * autogen.sh (have_libtool): Fix GNU sedism
1257
1258 2001-05-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1259
1260         * tests/Makefile.am, tests/qsort-test.c: Add test case for the
1261         g_qsort_with_data func. It works. This fixes bug #52605.
1262
1263         * tests/Makefile.am, tests/cxx-test.C: Now that we check for a C++
1264         compiler in configure.in anyway, I added a test, that the GLib
1265         headers can be inclued into a C++ program. This fixes bug #52605.
1266
1267         * configure.in: Don't bail out, if no C++ compiler is
1268         found. Define G_HAVE_ISO_VARARGS only if appropriate.
1269
1270         * gmessages.h: Thus we can revert the previous patch.
1271
1272 2001-05-29  James Henstridge  <james@daa.com.au>
1273
1274         * gmessages.h: "#ifdef G_HAVE_ISO_VARARGS" will always succeed
1275         even when we don't have ISO vararg support.  Changed to
1276         "#if G_HAVE_ISO_VARARGS".
1277
1278 Mon May 28 11:40:34 2001  Owen Taylor  <otaylor@redhat.com>
1279
1280         * configure.in: Check for __VARARGS__ separately for C and C++.
1281
1282 2001-05-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1283
1284         * configure.in: Fix typo.
1285
1286 Sun May 27 05:09:18 2001  Tim Janik  <timj@gtk.org>
1287
1288         * gmain.c (g_main_context_prepare): unlock context when bailing
1289         out with a warning.
1290         (g_main_context_check): same here.
1291
1292         * gmain.c (g_main_context_check): before returning due to
1293         changed pollfds, unlock context.
1294         
1295 Thu May 24 21:24:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
1296
1297         * gmarkup.c: back out change by mitch@convergence.de and apply patch in
1298         bug id #52067 that fixes the same problem in a more complete manner.
1299         This fixes also a segfault for a malformed XML file and adds a new
1300         test case.
1301
1302 2001-05-24  Hans Breuer  <hans@breuer.org>
1303
1304         * grel.c : reflect renaming of g_string_sprintfa to g_string_printfa
1305
1306         * makefile.msc.in : create an additional static lib to be used from
1307         (at least) glib-genmarshal
1308
1309 2001-05-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1310
1311         * garray.c (g_array_remove_index_fast): Tiny speed improvement
1312         suggested by noon@users.sourceforge.net.
1313
1314 2001-05-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1315
1316         * config.h.win32.in: Removed POSIX_*. Defined G_THREAD_SOURCE to
1317         "gthread-win32.c".
1318
1319         * glibconfig.h.win32.in: Define G_HAVE_ISO_VARARGS for gcc, don't
1320         know about MSC. Define G_THREADS_IMPL_WIN32 instead of
1321         G_THREADS_IMPL_POSIX and define the right static mutex macros and
1322         types.
1323
1324         * glib.def: g_thread_create renamed to g_thread_create_full.
1325
1326         * gthread.c: memcpy is not necessary here. We can simply use
1327         struct assignment.
1328
1329         * gmessages.c: Fix compilation error on win32. Added
1330         GFileDescriptor, wich is gint on Unix and FILE* on win32.
1331
1332 2001-05-21  Andrew Lanoix <alanoix@umich.edu>
1333
1334         *giowin32.c: G_IO_WIN32_WINDOWS_MESSAGES channels
1335         not handled correctly in g_io_win32_check()
1336
1337 Sun May 20 10:47:47 2001  Owen Taylor  <otaylor@redhat.com>
1338
1339         * configure.in: Fix some problems in writing out varargs
1340         tests in configure.in
1341
1342 Fri May 18 10:52:23 2001  Owen Taylor  <otaylor@redhat.com>
1343
1344         * configure.in gmessages.h: Use compile checks for ISO C99 and GNU
1345         extension varargs macros syntax and store result in glibconfig.h
1346         (G_HAVE_ISO_VARARGS, G_HAVE_GNUC_VARARGS) rather than relying
1347         on checking predefined macros.
1348
1349 2001-05-18  Michael Natterer  <mitch@convergence.de>
1350
1351         * gmarkup.c: don't g_strdup()/g_free() all parsed attributes and
1352         their values twice but simply copy the string pointers from the
1353         GMarkupAttribute struct to the string arrays before passing them
1354         to start_element().
1355
1356 2001-05-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1357
1358         * gthread.c, gthread.h: Renamed g_thread_create to
1359         g_thread_create_full and added macro g_thread_create, which omits
1360         'stack_size', 'bound' and 'priority' parameters. Also removed
1361         'bound' from GThread struct.
1362
1363         * gthreadpool.h, gthreadpool.c: Adapted GThreadPool to the above
1364         changes. GThreadPool lost the 'priority' and 'bound'
1365         members. g_thread_pool_new the 'stack_size', 'bound' and
1366         'priority' parameters.
1367
1368         * tests/mainloop-test.c, tests/thread-test.c,
1369         tests/threadpool-test.c: Adapted to the above changes.
1370
1371         * gmem.c (g_mem_profile): Fixed mutex deadlock.
1372
1373 2001-05-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1374
1375         * makefile.mingw.in: Add gpattern.o to objects.
1376
1377         * glib.def: Export g_thread_exit as well.
1378
1379         * Makefile.am: Fix BUILT_EXTRA_DIST exporting.
1380
1381 Sun May 13 10:31:17 2001  Owen Taylor  <otaylor@redhat.com>
1382
1383         * glib/Makefile.am gobject/Makefile.am gmodule/Makefile.am:
1384         Add inter-library dependencies.
1385
1386         * acinclude.m4: Remove libtool macros.
1387
1388         * autogen.sh: Require libtool-1.4, automake-1.4p1.
1389
1390 2001-05-15  Havoc Pennington  <hp@redhat.com>
1391
1392         * configure.in (AC_OUTPUT): m4macros/Makefile
1393
1394         * m4macros/Makefile.am, m4macros/glib-2.0.m4,
1395         m4macros/glib-gettext.m4:
1396         m4 files moved here on server, Makefile.am added
1397          
1398         This is so you can aclocal -I m4macros while avoiding acinclude.m4
1399
1400         * Makefile.am: add m4macros subdir, remove references to glib-2.0.m4
1401
1402 2001-05-14  Havoc Pennington  <hp@redhat.com>
1403
1404         * gutf8.c (g_utf8_get_char): fix docs; they said we validated 
1405         the UTF-8, but we can't possibly detect partial chars since
1406         there's no length arg here, so trying to use this function 
1407         on invalid UTF-8 is a bad idea.
1408
1409 Thu May 10 23:21:30 2001  Owen Taylor  <otaylor@redhat.com>
1410
1411         * gmessages.c (g_log_write_prefix): Avoid using stdio
1412         to be as robust as possible in out-of-memory.
1413
1414         * gmessages.c (g_log_default_handler): Remove some dead
1415         code.
1416
1417         * gutils.c (g_parse_debug_string): Fix to avoid mallocs.
1418
1419 Fri May 11 18:25:23 2001  Tim Janik  <timj@gtk.org>
1420
1421         * gdataset.c:
1422         (g_dataset_foreach):
1423         (g_datalist_foreach): make these safe against removal of the
1424         current element.
1425
1426 2001-05-10  Havoc Pennington  <hp@pobox.com>
1427
1428         * gmessages.c (g_log_write_prefix): change env variable to
1429         G_MESSAGES_PREFIXED, suggested by Tim
1430
1431 Thu May 10 15:19:01 2001  Tim Janik  <timj@gtk.org>
1432
1433         * gscanner.c (g_scanner_key_hash): use g_str_hash() algorithm
1434         to generate hashes.
1435
1436         * gmem.c (standard_calloc): free() doesn't return a value
1437         (Mark Murnane).
1438
1439 2001-04-26  Havoc Pennington  <hp@redhat.com>
1440
1441         * configure.in: Get rid of --enable-msg-prefix
1442
1443         * gmessages.c: make whether to prefix the messages with
1444         appname/pid a runtime setting, not a compile-time setting.  Change
1445         default to include prefix for debug/warning/error type messages.
1446
1447 2001-05-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1448
1449         * gthread.c, gthread.h: Renamed 'value' and 'arg' to 'data' and
1450         'thread_func' to 'func' to make it more consistent with the rest
1451         of GLib.
1452
1453         * gthreadpool.c, gthreadpool.h: Moved 'stack_size' from the public
1454         members of GThreadPool to the private ones. Renamed 'thread_func'
1455         to 'func' as above. Moved up 'user_data' in g_thead_pool_new
1456         argument list and in GThreadPool struct.
1457         
1458 Tue May  8 15:33:31 2001  Tim Janik  <timj@gtk.org>
1459
1460         * gcompletion.h: removed #include <unistd.h> sneaked in by
1461         sopwith in november.
1462
1463 2001-05-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1464
1465         * gmain.c, gthread.c, gthread.h: Moved func and arg members from
1466         GRealThread to GThread, such that they can be accessed by the
1467         user.
1468
1469         * gthread.c, gthread.h: Due to popular demand (Tim being the
1470         populus here ;-) threads now have a 'return value', which is
1471         returned by g_thread_join and is either the return of the topmost
1472         thread function or the value given to g_thread_exit.
1473         
1474         * gthreadpool.c, tests/mainloop-test.c, tests/thread-test.c:
1475         Adapted to the above change.
1476
1477 2001-01-06  Hans Breuer  <hans@breuer.org>
1478
1479         * glib.def : don't try to export g_strcpy, it is g_stpcpy;
1480         updated and added some tweaking for functions which got 
1481         renamed recently, to avoid the update hassle if it can 
1482         simply be done compatible. Should vanish if there is a 
1483         stable version for win32.
1484
1485 Fri May  4 11:49:18 2001  Owen Taylor  <otaylor@redhat.com>
1486
1487         * Released 1.3.5
1488
1489         * NEWS: Updated
1490
1491         * configure.in (GLIB_MICRO_VERSION): Up version to 1.3.5,
1492         interface/binary age 0.
1493
1494 2001-05-04  Sven Neumann  <sven@convergence.de>
1495
1496         * ghash.c: fixed a typo in a comment.
1497
1498         * gtree.[ch]: added new functions g_tree_new_full(), g_tree_replace(), 
1499         g_tree_steal() and g_tree_foreach() to adapt GTree to the GHashTable
1500         API. Moved comments into the C file.
1501
1502         * docs/reference/glib/glib-sections.txt
1503         * docs/reference/glib/tmpl/glib-unused.sgml
1504         * docs/reference/glib/tmpl/hash_tables.sgml
1505         * docs/reference/glib/tmpl/linked_lists_double.sgml
1506         * docs/reference/glib/tmpl/linked_lists_single.sgml
1507         * docs/reference/glib/tmpl/macros_misc.sgml
1508         * docs/reference/glib/tmpl/trees-binary.sgml: updated documentation
1509         
1510 Thu May  3 06:38:28 2001  Owen Taylor  <otaylor@redhat.com>
1511
1512         * g[s]list.c (g_[s]list_foreach) docs/Changes-2.0.txt: Make
1513         foreach() safe against removal of the _current_ element. While
1514         this could break some code, the new behavior is consistent with
1515         the rest of GLib/GTK+ and probably is what people expect in most
1516         cases. (Suggested by Paul Kuykendall, #50071)
1517
1518 Wed May  2 11:10:22 2001  Owen Taylor  <otaylor@redhat.com>
1519
1520         * gutf8.c (g_utf8_to_ucs4_fast): Fix read past end of the string.
1521         (#50404, fix from Jonas Borgström)
1522         
1523 Sun Apr 29 00:37:34 2001  Tim Janik  <timj@gtk.org>
1524
1525         * ghook.[hc]: made hook ids a gulong.
1526
1527 2001-04-20  Dan Winship  <danw@ximian.com>
1528
1529         * configure.in: Add a check for the Darwin dynamic linker. Use
1530         AC_TRY_LINK when checking for "nonposix getpwuid_r" so it notices
1531         "no getpwuid_r" correctly.
1532
1533         * testglib.c (main): Make template[] bigger to prevent an overrun.
1534         Remove an unused variable. Initialize error to NULL.
1535
1536         * tests/gio-test.c (main): Add a cast to prevent a warning when
1537         size_t is a long.
1538
1539         * tests/type-test.c (main): Add an #ifdef to prevent a warning
1540         when G_HAVE_GINT64 is defined and G_GINT64_FORMAT isn't.
1541
1542 2001-04-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1543
1544         * ghash.c, ghash.h: Remove definition of g_hash_table_freeze and
1545         g_hash_table_thaw. Instead added G_DISABLE_DEPRECATED-guarded
1546         macros to ghash.h to go along the lines of the standard.
1547
1548         * gscanner.c, gscanner.h: Dito for g_scanner_freeze_symbol_table
1549         and g_scanner_thaw_symbol_table.
1550
1551         * gutils.c, gutils.h: Dito for g_dirname. g_basename is still
1552         defined in gutils.c, but declared ing gutils.h only
1553         G_DISABLE_DEPRECATED-guarded.
1554         
1555         * configure.in: Removed bashism in test for the pkg-config
1556         version.
1557
1558         * configure.in: Rewrote test for multithread flag. Now uses
1559         localtime_r, which hopefully has a consistent prototype across
1560         different platforms. Also it uses a clever double EGREP trick
1561         instead of compiling, which could give false positives. Thanks to
1562         Dan Winship <danw@ximian.com> for the hint.
1563
1564 Wed Apr 18 17:35:38 2001  Owen Taylor  <otaylor@redhat.com>
1565
1566         * gutils.c (_glib_gettext): Add missing static pointed
1567         out by Michael Meeks.
1568
1569 Wed Apr 18 09:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1570
1571         * MAINTAINERS: Removed. Keeping README, README.cvs-commits
1572         HACKING, and AUTHORS up to date is plenty without extra
1573         random files that someone thought a module should have.
1574         (Actually, I believe this was used for debbugs in the past.)
1575
1576 Tue Apr 17 11:47:07 2001  Owen Taylor  <otaylor@redhat.com>
1577
1578         * Released 1.3.4
1579
1580         * NEWS: Updated
1581
1582 Tue Apr 17 10:43:36 2001  Owen Taylor  <otaylor@redhat.com>
1583
1584         * gstrfuncs.c: Define _GNU_SOURCE for stpcpy
1585
1586         * tests/mainloop-test.c (main): Wait for all threads
1587         to start before beginning tests.
1588
1589 2001-04-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1590
1591         * gthreadpool.c (g_thread_pool_thread_proxy): Until now every
1592         thread pool always had at least one tread waiting to avoid
1593         switching overhead in case a new task would be added soon after
1594         one finished. This however means a big waste of threads, if many
1595         mostly inactive thread pools are involved. Now such a waiting
1596         thread will only wait for half a second (This value is of course
1597         very randomly picked) and go to the global threadpool afterwards.
1598
1599 Mon Apr 16 12:04:52 2001  Owen Taylor  <otaylor@redhat.com>
1600
1601         * configure.in: Remove warnings about conflicts with the
1602         stable version.
1603
1604         * glib-2.0.m4: Fix some of the error text to be halfway
1605         up to date.
1606
1607         * README.in INSTALL.in: Add these to generate README, INSTAL
1608         (as in the stable branch). Update.
1609
1610         * HACKING: Update.
1611
1612 2001-04-16  Havoc Pennington  <hp@redhat.com>
1613
1614         * gqsort.c: docs
1615
1616         * gfileutils.c: docs
1617
1618         * gwin32.c: docs fixes
1619
1620         * gconvert.c: docs
1621
1622         * guniprop.c: docs
1623
1624         * gutf8.c: docs
1625
1626 2001-04-16  Havoc Pennington  <hp@redhat.com>
1627
1628         * glib-2.0.m4: put AC_PATH_PROG(pkg-config) before "Checking for
1629         glib" so the output looks right 
1630
1631 2001-03-23  Havoc Pennington  <hp@redhat.com>
1632
1633         * gutils.c (g_parse_debug_string): make GDebugKeys argument 
1634         const
1635
1636 2001-04-14  Hans Breuer  <hans@breuer.org>
1637
1638         * glib.def : 
1639         * makefile.msc.in : updated
1640
1641         * gpattern.c : include "gutils.h" to resolve the inline hassle
1642
1643 2001-04-11  Alexander Larsson  <alexl@redhat.com>
1644
1645         * glib-2.0.m4: Pass pkg-config options
1646         before the other args so it works even if
1647         POSIXLY_CORRECT is set.
1648
1649 Mon Apr  9 18:57:44 2001  Tim Janik  <timj@gtk.org>
1650
1651         * configure.in: increment version to 1.3.4 (binary 0, interface 0).
1652
1653 2001-04-05  Christian Rose  <menthos@menthos.com>
1654
1655         * configure.in: Added sv to ALL_LINGUAS.
1656
1657 Wed Apr  4 09:18:55 2001  Tim Janik  <timj@gtk.org>
1658
1659         * Released GLib-1.3.3.
1660
1661 Tue Apr  3 20:22:59 2001  Tim Janik  <timj@gtk.org>
1662
1663         * NEWS: updates.
1664
1665         * NEWS.pre-1-3: take over old news.
1666
1667 Tue Apr  3 12:38:16 2001  Owen Taylor  <otaylor@redhat.com>
1668
1669         * glib-config-2.0.in: Exit with an error message that you
1670         should use pkg-config instead.
1671
1672         * configure.in (PACKAGE): Require pkg-config.
1673
1674         * tests/Makefile.am (EXTRA_DIST): Add utf8.txt.
1675
1676         * configure.in (GLIB_MICRO_VERSION): Up MICRO to 3,
1677         leave interface/binary at 0.
1678
1679 Tue Apr  3 13:46:22 2001  Tim Janik  <timj@gtk.org>
1680
1681         * glist.[hc]: added g_list_nth_prev() which walks ->prev instead
1682         of ->next.
1683
1684         * gpattern.[hc]: added shell-style pattern matching code from beast,
1685         derived from the gtk_pattern_*() code, but with a couple of bug fixes
1686         and a number of optimizations.
1687
1688 2001-04-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1689
1690         * gthreadpool.c: Added documentation.
1691
1692         * gthreadpool.c: The global thread pool now also is seperated for
1693         bound and unbound threads. Only threads with standard stack size
1694         go to the global pool. g_thread_pool_new now protects the global
1695         setup of inform_mutex etc. with a lock. Fixed some typos. Unlock
1696         the queue after g_thread_pool_wakeup_and_stop_all in the proxy.
1697
1698 2001-04-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1699
1700         * gmain.c: Use the new GRealThread member "context" instead of a
1701         GStaticPrivate to store the thread specific main loop context.
1702
1703         * gthread.c: Added "context" member to GRealThread and updated
1704         g_thread_create, g_thread_self and g_thread_cleanup accordingly.
1705         
1706         * gthread.c, gthread.h: Removed the functions
1707         g_static_private_(get|set)_for_thread and adapted
1708         g_static_private_(get|set) and g_static_private_free
1709         accordingly. This fixes Bug #51435.
1710         
1711 2001-03-30  Sven Neumann  <sven@gimp.org>
1712
1713         * ghash.[ch]
1714         * docs/reference/glib/tmpl/hash_tables.sgml: added new functions
1715         g_hash_table_new_full, g_hash_table_replace, g_hash_table_steal and
1716         g_hash_table_foreach_steal. Moved most docs out of the template
1717         file into the C file. Please proofread the new documentation.
1718
1719 2001-03-29  Tor Lillqvist  <tml@iki.fi>
1720
1721         * glib.def: Updates.
1722         * tests/makefile.mingw.in
1723         * tests/makefile.msc.in: Add module-test rules.
1724
1725 Mon Mar 26 14:14:53 2001  Owen Taylor  <otaylor@redhat.com>
1726
1727         * Makefile.am (INCLUDES): -DG_DISABLE_DEPRECATED
1728
1729         * gmain.h timeloop.c: Surround the cruftiest stuff with
1730         #ifndef G_DISABLE_DEPRECATED.
1731
1732         * gcompat.h gdate.h: Move compat defines back to 
1733         gdate.h, surround with #ifndef G_DISABLE_DEPRECATED. 
1734         Remove gcompat.h.
1735
1736 Mon Mar 26 13:34:50 2001  Owen Taylor  <otaylor@redhat.com>
1737
1738         [ Patch from DindinX  <David.Odin@bigfoot.com>, added docs ]
1739  
1740         * gstrfuncs.c, gstrfuncs.h: Add g_stpcpy () for platform that don't
1741         have stpcpy ().
1742         * gstrfuncs.c (g_strjoin, g_strjoinv and g_strconcat): use
1743         g_stpcpy () so these functions run much faster.
1744         * config.h.win32.in, glib.def: add reference to g_stpcpy ()
1745         * configure.in: Add a test for the stpcpy () function.
1746  
1747 2001-03-20  Havoc Pennington  <hp@redhat.com>
1748
1749         * gutf8.c (g_utf8_strlen): rewrite, based on bug #52328 from
1750         Anders
1751
1752 2001-03-19  Havoc Pennington  <hp@redhat.com>
1753
1754         * gutf8.c (g_unichar_validate): added this function
1755
1756 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1757
1758         * gspawn-win32.c (SETUP_DEBUG): Add braces to silence gcc -Wall.
1759
1760         * gspawn-win32-helper.c (write_no_error): Remove unused function.
1761
1762         * tests/makefile.mingw.in (module-test.exe): Add rules for
1763         building module-test.
1764
1765 Wed Mar 14 18:46:54 2001  Tim Janik  <timj@gtk.org>
1766
1767         * gscanner.[hc]: removed archaic gpointer derived_data; relict and
1768         added a GData member instead.
1769         
1770         * glist.[hc]: added g_list_remove_all().
1771
1772         * gslist.[hc]: added g_slist_remove_all().
1773
1774 Sat Mar 17 19:54:51 2001  Owen Taylor  <otaylor@redhat.com>
1775
1776         * timeloop.c: Reorder headers to make FreeBSD happy. 
1777
1778 2001-03-13  Tor Lillqvist  <tml@iki.fi>
1779
1780         From Edward M. Lee  <tailbert@yahoo.com>:
1781
1782         * gdate.c (g_date_set_parse): add support for dates that in the
1783         form "Wed Mar 14 2001". Running testgdate on cygwin requires this.
1784
1785 Fri Mar  9 18:01:43 2001  Tim Janik  <timj@gtk.org>
1786
1787         * gscanner.[hc]: made config arg to g_scanner_new() const.
1788
1789 2001-03-12  Tor Lillqvist  <tml@iki.fi>
1790
1791         * tests/Makefile.am (libmoduletestplugin_b_la_LIBADD,
1792         libmoduletestplugin_b_la_LIBADD): Link with the libgmodule la only
1793         on Win32.
1794
1795 2001-03-10  Tor Lillqvist  <tml@iki.fi>
1796
1797         * glibconfig.h.win32.in: Define G_PLATFORM_WIN32 here, too.
1798
1799         * tests/Makefile.am: Use the _LIBADD dependency on libglib only on
1800         Win32.
1801
1802 2001-03-09  Tor Lillqvist  <tml@iki.fi>
1803
1804         * README.win32: Update with some information about using configure
1805         and libtool.
1806
1807 2001-03-09  Hans Breuer  <hans@breuer.org>
1808
1809         * gobject/gobject.def : updated
1810
1811 2001-03-08  Tor Lillqvist  <tml@iki.fi>
1812
1813         * glib.def
1814         * gobject/gobject.def
1815         * gobject/makefile.mingw.in: Update.
1816
1817 2001-03-08  Sven Neumann  <sven@gimp.org>
1818
1819         * gtree.[ch]: 
1820         * docs/reference/glib/tmpl/trees-binary.sgml: added new function 
1821         g_tree_lookup_extended().
1822
1823 Thu Mar  8 16:23:34 2001  Tim Janik  <timj@gtk.org>
1824
1825         * ghook.[hc]: destruction cleanup. there's one
1826         ->finalize_hook member in the hooklist now that gets
1827         called when a hook should be destroyed, that's it.
1828         that function is guarranteed to be called only when
1829         all ref_counts to the hook vanished, thus also when
1830         the hook is not in call.
1831
1832 2001-03-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1833
1834         * configure.in (FLAG_DOES_NOT_WORK): Fix typo and thus bug #51862.
1835
1836 Wed Mar  7 09:32:06 2001  Tim Janik  <timj@gtk.org>
1837
1838         * glib-object.h: add gvaluearray.h.
1839
1840         * gstring.[hc]: fixup naming of g_string_sprint*.
1841         
1842         * gtypes.h: fixed GCompareDataFunc naming.
1843
1844 2001-03-07  Christian Meyer  <chrisime@gnome.org>
1845
1846         * configure.in: Added de (German) to ALL_LINGUAS.
1847
1848 2001-03-02  Christophe Merlet  <redfox@eikonex.org>
1849
1850         * configure.in: Added fr (French) to ALL_LINGUAS.
1851
1852 2001-03-01  Tor Lillqvist  <tml@iki.fi>
1853
1854         * gutils.c (g_path_is_absolute): (Win32) Remove test for initial
1855         double backslash (UNC path), this will of course be matched by the
1856         test for an initial G_DIR_SEPARATOR right up front. Silly me.
1857         (g_find_program_in_path): Implement on Win32. Append the
1858         executable file name suffixes from PATHEXT in turn while looking
1859         for the program.
1860         (g_find_program_in_path): If the program we are looking for is a
1861         relative path in a subdirectory, don't do any path search.
1862         (g_get_any_init): (Win32) Also look for the USERPROFILE env var
1863         indicating the home directory equivalent.
1864         (g_find_program_in_path): (Win32): Use MAXPATHLEN, not PATH_MAX
1865         which isn't defined with MSVC.
1866
1867         * testglib.c (main): Test g_find_program_in_path() on Win32 by
1868         looking for more.com and regedit.
1869
1870         * glib.def: Add g_find_program_in_path.
1871
1872 2001-02-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1873
1874         * gthreadpool.c (g_thread_pool_thread_proxy): Make
1875         max_unused_threads work for -1 as well.
1876
1877 2001-02-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1878
1879         * gthread.h (struct _GThread): Change the order to match the order
1880         in g_thread_create().
1881
1882         * gthread.c (g_static_rec_mutex_lock_full): Also do the right
1883         thing (behave like 'depth' calls to g_static_rec_mutex_lock) for a
1884         mutex, that is already locked.
1885
1886 Thu Feb 22 10:31:36 2001  Owen Taylor  <otaylor@redhat.com>
1887
1888         * gmain.c (g_source_remove_poll): Add missing implementation
1889         of g_source_remove_poll. (Pointed out by Stefan Westerfeld)
1890
1891 2001-02-21  Tor Lillqvist  <tml@iki.fi>
1892
1893         * gutils.c (g_find_program_in_path): Implement on Win32.
1894
1895         Cygwin support contributed by Stefan Ondrejicka
1896         <ondrej@idata.sk>. Hopefully I got it all in while simultaneously
1897         adding support for auto*/libtool for mingw.
1898
1899         * Makefile.am: Changes for auto* support on Cygwin and Win32. Do
1900         still distribute the hand-written makefiles and *.win32.in files,
1901         though. Use GIO, GSPAWN and PLATFORMDEP macros set by configure.
1902         Use -no-undefined. Pass -export-symbols glib.def to libtool.
1903         
1904         * configure.in: Define G_PLATFORM_WIN32 on both pure Win32 (mingw)
1905         and Cygwin. Add AC_CYGWIN, AC_EXEEXT and AC_LIBTOOL_WIN32_DLL
1906         calls for Cygwin and mingw support.  Check for %I64u guint64
1907         format (in MS C library). Set G_MODULE_IMPL on mingw and
1908         Cygwin. Use ac_object and ac_exeext.  Set GIO, GSPAWN, PLATFORMDEP
1909         and G_LIBS_EXTRA. Compile timeloop only on Unix. Define OS_WIN32
1910         automake conditional on Win32.
1911         
1912         * glib.h: Include gwin32.h also on Cygwin.
1913
1914         * gfileutils.c (get_contents_posix): Use O_BINARY (defined as 0 on
1915         Unix) for Cygwin's sake.
1916
1917         * gtimer.c (GETTIME): Reduce #ifdefs, use a macro GETTIME().
1918
1919         * gconvert.c
1920         * gthread.c
1921         * gutf8.c
1922         * gutils.c: For code needed both on Cygwin and native Win32,
1923         test for G_PLATFORM_WIN32.
1924
1925         * gmarkup.h: Use G_BEGIN_DECLS and G_END_DECLS.
1926         
1927         * gtypes.h: Refine GLIB_VAR definition. Also check for DLL_EXPORT
1928         in case compiling a static library on Win32 or Cygwin.
1929
1930         * gwin32.c: No <direct.h> on Cygwin. No need for ftruncate() or
1931         dirent emulation on Cygwin.
1932         (get_package_directory_from_module) Convert return value from
1933         GetModuleFileName() to POSIX path on Cygwin.
1934
1935         * tests/Makefile.am (progs_LDADD): Link with libglib, libgthread
1936         and libgmodule as appropriate. Use -no-undefined.
1937
1938         * gbacktrace.c: Move #ifdefs around a bit on Win32.
1939
1940 2001-02-21  Tor Lillqvist  <tml@iki.fi>
1941
1942         * gshell.c (unquote_string_inplace): Make static.
1943
1944         * gthread.h: Include gtypes.h to be sure to get GLIB_VAR
1945         definition, remove definition from here.
1946
1947         * gunicode.h: Remove duplicate GLIB_VAR definition from here, too.
1948
1949         * gutils.c: (Win32) Use USERPROFILE as home dir if present. On
1950         Win2k, HOMEDRIVE and HOMEPATH aren't reliable.
1951         
1952         * Makefile.am (INCLUDES): Add -DGLIB_COMPILATION.
1953
1954         * makefile.mingw.in: Remove install target, Windows isn't Unix.
1955         (DEFINES): Add -DDLL_EXPORT.
1956
1957         * testgdate.c
1958         * testgdateparser.c
1959         * testglib.c: Undefine GLIB_COMPILATION.
1960
1961         * testglib.c: Make some vars static. Add Cygwin path tests.
1962
1963         * glib.def: Updates.
1964
1965         * .cvsignore
1966         * */.cvsignore: Ignore also .obj, .dll, .lib and .exe files.
1967
1968 2001-02-19  Hans Breuer <hans@breuer.org>
1969
1970         * glib/glib.def, gobject/gobject.def : added nissing symbols
1971
1972         * gobject/makefile.msc : updated
1973
1974         * glib/gmessages.c : call the "debug interrupt" before exiting the
1975         program, if build with msvc as debug version. Which gives the opportunity
1976         to see the callstack, etc.
1977
1978         * glib/gthread.c : thread->pid is only defined #ifdef
1979         G_THREAD_USE_PID_SURROGATE
1980
1981 Mon Feb 19 07:32:38 2001  Tim Janik  <timj@gtk.org>
1982
1983         * glib-config-2.0.in (lib_glib): my name is glib-config-2.0!
1984         don't exit with errorcode!=0 for --help or -h.
1985         
1986         * Makefile.am:
1987         * configure.in: build glib-config-2.0.
1988
1989 2001-02-17  Havoc Pennington  <hp@pobox.com>
1990
1991         * gthread.c: include string.h
1992
1993         Applied patch from Soeren Sandmann:
1994         
1995         * testglib.c: const fixes
1996
1997         * gwin32.h: format cleanups
1998
1999         * gutils.c (g_atexit): constify a variable
2000         (g_find_program_in_path): constification
2001         (g_basename): G_CONST_RETURN
2002         (g_path_skip_root): G_CONST_RETURN
2003         (g_getenv): G_CONST_RETURN
2004         (g_get_user_name): G_CONST_RETURN
2005         (g_get_real_name): G_CONST_RETURN
2006         (g_get_home_dir): G_CONST_RETURN
2007         (g_get_tmp_dir): G_CONST_RETURN
2008         (g_get_prgname): G_CONST_RETURN
2009         (_glib_gettext): G_CONST_RETURN
2010
2011         * gunicode.h: formatting cleanups
2012
2013         * gstrfuncs.c (g_strerror): G_CONST_RETURN
2014         (g_strsignal): G_CONST_RETURN
2015
2016         * gspawn.c (g_execute): const on variables
2017
2018         * gmessages.c (printf_string_upper_bound): fix const on a variable
2019
2020         * gmem.c (g_mem_chunk_new): make the "name" arg const
2021         (struct _GRealMemChunk): make the "name" field const
2022
2023         * gfileutils.c (g_file_open_tmp): store const return in a const
2024         gchar* variable
2025
2026         * gdataset.c (g_quark_to_string): G_CONST_RETURN
2027
2028 Sat Feb 17 07:26:33 2001  Tim Janik  <timj@gtk.org>
2029
2030         * configure.in (G_MODULE_HAVE_DLERROR): add check for broken RTLD_GLOBAL
2031         (on OSF1 V5.0).
2032
2033 2001-02-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2034
2035         * acconfig.h, configure.in: Reverted the changes necessary to
2036         enlarge the system thread for G_THREAD_USE_PID_SURROGATE.
2037
2038         * gthread.c: Now implement G_THREAD_USE_PID_SURROGATE in gthread.c
2039         instead of gthread/gthread-posix.c. While the latter has the
2040         advantage, that it is conceptually cleaner, it makes
2041         g_thread_self_posix_impl _very_ slow and that hurts
2042         GStaticRecMutex and other things. So the new version is less
2043         clean, but faster.
2044
2045 2001-02-09  Havoc Pennington  <hp@redhat.com>
2046
2047         * gconvert.c (g_convert): don't overwrite errors
2048
2049         * gerror.c (g_set_error): improve warning message if an error is
2050         overwritten     
2051         (g_propagate_error): ditto
2052
2053 2001-02-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2054
2055         * gthread.c, gthread.h: Added functions g_static_rec_mutex_init,
2056         g_static_rec_mutex_free, g_static_private_init,
2057         g_static_private_free, g_static_rw_lock_init to allow the usage of
2058         all those types dynamically. (g_static_rw_lock_free already
2059         existed). Aditionally freed static_private indeces are reused
2060         now. Untill now the array would just grow if you would use more
2061         and more static_private. That required adding a slist of all
2062         running threads, which could potentially be of good use later. It
2063         is not exported however. Renamed a LOCK and small indentation
2064         fixes.
2065
2066         * tests/thread-test.c: Test the new static_private index freing
2067         and reusing feature.
2068         
2069 Mon Feb 12 15:01:09 2001  Owen Taylor  <otaylor@redhat.com>
2070
2071         * configure.in (gtk_doc_min_version): Add check for gtk-doc version.
2072
2073 2001-02-10  Tor Lillqvist  <tml@iki.fi>
2074
2075         * gtypes.h
2076         * gutils.h: Move GLIB_VAR definition from gutils.h to gtypes.h
2077
2078         * glib.def
2079         * gmem.h: Mark glib_mem_profiler_table for export.
2080
2081         * gwin32.c (get_package_directory_from_module): Don't store
2082         address of local variable in hashtable.
2083
2084 2001-02-08  Fatih Demir <kabalak@kabalak.net>
2085
2086         * configure.in: Added "tr" to ALL_LINGUAS.
2087
2088 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2089
2090         * gwin32.c (g_win32_getlocale): Use "nn" for Nynorsk, as nn.po
2091         files are appearing now. If the sublanguage starts with '@', don't
2092         use a '_' separator. South Africa is 'ZA', not 'SA'.
2093
2094 Sun Feb  4 07:38:32 2001  Tim Janik  <timj@gtk.org>
2095
2096         * docs/debugging.txt: s/glib_trap_/g_trap_/. add comments on
2097         g_trap_instance_signals, g_trace_instance_signals and
2098         GRUNTIME_DEBUG.
2099
2100         * gmem.c: s/glib_trap_/g_trap_/.
2101         
2102 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2103
2104         * tests/Makefile.am (thread_LDADD): Change order of libs,
2105         put progs_LDADD last. Needed for cygwin, says jbdoll@kepri.re.kr.
2106
2107 2001-02-02  Tor Lillqvist  <tml@iki.fi>
2108
2109         * giochannel.h
2110         * giowin32.c
2111         * gmain.c: Stylistic cleanups. Use G_STRLOC in g_warning() calls.
2112
2113         * glib.def: Add missing functions.
2114
2115 2001-02-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2116
2117         * gthread.c, gthread.h: Added g_static_mutex_init to allow
2118         initialization of a GStaticMutex, that can not be initialized with
2119         G_STATIC_MUTEX_INIT, for example in allocated structures.
2120
2121 Wed Jan 31 13:46:58 2001  Owen Taylor  <otaylor@redhat.com>
2122
2123         * acinclude.m4 glib-gettext.m4: Fix problem with --disable-nls.
2124
2125 2001-01-31  Tor Lillqvist  <tml@iki.fi>
2126
2127         * glibconfig.h.win32.in: Corresponding change as below to
2128         GStaticMutex.
2129
2130 2001-01-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2131
2132         * gthread.c, gthread.h: Added g_static_mutex_free to allow using
2133         GStaticMutexes with limited lifetime without leaking.
2134         
2135         * configure.in: GStaticMutex doesn't have to provide extra space
2136         for debugging information for G_ERRORCHECK_MUTEXES, as then the
2137         non-default implementation (runtime_mutex) is used anyway.
2138
2139         * gthread.h (g_cond_wait): Added debug information for
2140         g_mutex_free calls, if G_ERRORCHECK_MUTEXES is defined.
2141
2142 2001-01-29  Tor Lillqvist  <tml@iki.fi>
2143
2144         * glibconfig.h.win32.in: Use the same GMutex structure as the
2145         configure-generated glibconfig.h does.
2146
2147         * gstrfuncs.c (g_strsignal): Declare strsignal() on Cygwin, too,
2148         says jbdoll@kepri.re.kr.
2149
2150 2001-01-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2151
2152         * gthread.c: Broadcast the condition, if there are waiting
2153         readers, as all might read at the same time. Only signal the
2154         writer thread, if there are no more readers.
2155
2156 2001-01-25  Tor Lillqvist  <tml@iki.fi>
2157
2158         * makefile.mingw.in
2159         * */makefile.mingw.in: Protect the rule to rebuild makefile.mingw
2160         if makefile.mingw.in has changed with a check if said .in file
2161         exists. (This rule is mainly a convenience for yours truly.)
2162
2163         * giowin32.c: Socket support rewritten. It was utterly broken, and
2164         untested in fact. We still do use a thread for each socket being
2165         watched, but instead of blocking in recv() (which of course was
2166         plain stupid for sockets being listen()ed on in a server-type
2167         application), we block in select(). The read method for sockets
2168         calls recv(). It is now possible for the application to call
2169         accept(), recv() or send() in the callback, just like on
2170         Unix. Tested with code kindly provided by Andrew Lanoix.
2171
2172         Rename g_io_channel_win32_new_stream_socket() to
2173         g_io_channel_win32_new_socket() as it isn't restricted to stream
2174         sockets.
2175         
2176         * gmain.c (g_poll): Related changes in the Win32 version of
2177         g_poll(). When polling for messages, always do a PeekMessage()
2178         first. We used to miss messages if several were posted between
2179         calls to g_poll().
2180
2181         * giochannel.h: Improve Win32-related comments.
2182
2183         * gutf8.c: (Win32) Include <stdio.h> for sprintf.
2184
2185         * tests/gio-test.c: (Win32) Add tests for polling for Windows
2186         messages.
2187
2188         * tests/makefile.mingw.in: Remove superfluous compilation command
2189         line.
2190
2191 2001-01-23  Alex Larsson  <alexl@redhat.com>
2192
2193         * gmain.c (g_source_callback_unref): Free the callback
2194         (g_source_set_callback): Initialize the callback refcount
2195
2196 2001-01-20  Tor Lillqvist  <tml@iki.fi>
2197
2198         * gutils.c (g_get_codeset): (Win32) Even if g_get_codeset() is
2199         currently commented out from gutils.h, fix it to return the same
2200         CP%d value as g_get_charset().
2201
2202 2001-01-19  Kjartan Maraas  <kmaraas@gnome.org>
2203
2204         * gconvert.c: Fix typo.
2205         * gfileutils.c: Same here.
2206         * configure.in: Added no to ALL_LINGUAS
2207         
2208 2001-01-17  Tor Lillqvist  <tml@iki.fi>
2209
2210         * gwin32.c (g_win32_getlocale, g_win32_error_message): Add doc
2211         comments.
2212         (g_win32_get_package_installation_directory): Add one parameter,
2213         the name of a DLL in the package. Add possibility to use that to
2214         deduce the installation directory if not entered into the
2215         Registry. Make the return value dynamically allocated.
2216         (g_win32_get_package_installation_subdirectory): New convenience
2217         function.
2218
2219         * gutils.c (GLIB_LOCALE_DIR)
2220         * gwin32.h: Adapt accordingly.
2221
2222         * testglib.c (main): Adapt tests accordingly.
2223
2224 Tue Jan 16 23:20:38 2001  Owen Taylor  <otaylor@redhat.com>
2225
2226         * gutils.c glibintl.h: Optimize for size rather than speed by
2227         making _() always call _glib_gettext() instead of conditionally
2228         calling gettext() or _glib_gettext_init. glib only uses translated
2229         strings in slow error handling code anyways.
2230
2231         * glibintl.h: g'ify types.
2232
2233         * Makefile.am: include glibintl.h in _SOURCES
2234
2235 2001-01-17  Tor Lillqvist  <tml@iki.fi>
2236
2237         * config.h.win32.in: Define ENABLE_NLS and GETTEXT_PACKAGE.
2238
2239         * makefile.mingw.in
2240         * makefile.msc.in: Use the GNU intl library.
2241
2242         * gwin32.c (g_win32_get_package_installation_directory): New
2243         function. To be used by various GLib-using packages to get their
2244         installation directory, which should be stored in the Registry by
2245         some installer.
2246
2247         * gwin32.h: Declare it.
2248
2249         * testglib.c (main): Test it.
2250
2251         * gutils.c: On Win32, define GLIB_LOCALE_DIR using
2252         g_win32_get_package_installation_directory().
2253
2254         * glib.def: Update.
2255
2256 Mon Jan 15 21:39:06 2001  Owen Taylor  <otaylor@redhat.com>
2257
2258         * glib-2.0.pc.in (Libs) glib-config-2.0.in: Add @INTLLIBS@.
2259
2260 Mon Jan 15 21:12:49 2001  Owen Taylor  <otaylor@redhat.com>
2261
2262         * configure.in acconfig.h glibintl.h gutils.c
2263         po/{Makefile.in.in,POTFILES.in,po2tbl.in}: Add gettext
2264         support.
2265
2266         * glib-gettext.m4 acinclude.m4: Clean up the GTK+ gettext macros
2267         some more and put them in this file, though they also need
2268         to be included in acinclude.m4 due to the brokeness of
2269         aclocal.
2270
2271         * gspawn.c gspawn-win32.c gutf8.c gconvert.c gfileutils.c
2272         gshell.c: Remove dummy _() #defines, include glibintl.m4.
2273
2274 2001-01-09  Tor Lillqvist  <tml@iki.fi>
2275
2276         * giowin32.c: Rework the changes needed to pass mainloop-test. Now
2277         we don't need to call TerminateThread() after all, which is a
2278         relief, as the docs have a BIG RED WARNING SIGN about using that
2279         API. Instead, when closing a fd channel that has a reader thread
2280         running, just mark it as non-running and additionally mark the fd
2281         as ripe for closing. When the reader thread hopefully eventually
2282         gets something (and EOF or some actual data), it will note that it
2283         shouldn't be running, break out of the loop, and close the fd.
2284
2285         The socket channel closing code should probably be changed
2286         similarily, but that will have to wait until I have a test case.
2287         
2288         (g_pipe_readable_msg, g_io_channel_win32_new_pipe,
2289         g_io_channel_win32_new_pipe_with_wakeups,
2290         g_io_channel_win32_pipe_request_wakeups,
2291         g_io_channel_win32_pipe_readable): Remove these, have been
2292         obsolete for some time.
2293         
2294         * gutils.c (g_basename, g_dirname): Don't warn about deprecation
2295         on Win32. Code written for GLib 1.2 doesn't have much choice but
2296         to use GLib >= 1.3 on Win32.
2297
2298         * glib.def: Update.
2299
2300 2001-01-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2301
2302         * gmem.c: Made g_profile_mutex a GMutex* instead of
2303         G_LOCK_DEFINE_STATIC to avoid deadlock for thread implementations
2304         without native static mutexes. Contruct g_profile_mutex in
2305         g_mem_init().
2306
2307 2001-01-06  Tor Lillqvist  <tml@iki.fi>
2308
2309         * gconvert.c (g_locale_to_utf8, g_locale_from_utf8): Get len using
2310         strlen() if arg is negative in the Win32 code, too.
2311
2312         * giowin32.c: Changes necessary to be able to run
2313         mainloop-test. We can't close the fd that our (internal) reader
2314         thread is sitting doing a blocking read() from. We must terminate
2315         the thread first. Keep track of thread handle, and close it when
2316         thread is dying. Start reader thread with the lower-level
2317         CreateThread() instead of _beginthreadex() from the C runtime, in
2318         order to be able to use TerminateThread(). Hopefuly this isn't
2319         harmful.
2320
2321         * glib.def: Update.
2322
2323         * tests/makefile.{mingw,msc}.in (TESTS): Add mainloop-test and
2324         unicode-encoding.
2325
2326         * tests/mainloop-test.c: Portability: <unistd.h>, need <fcntl.h>
2327         on Win32.
2328
2329         * tests/unicode-encoding.c (process): Add missing "line" argument
2330         to fail(). On Win32, convert UTF-16LE, as libiconv'c ivonf always
2331         converts to UTF-16BE if we ask for unspecific UTF-16.
2332         (main) Handle also '\r'.
2333
2334 Fri Jan  5 11:25:42 2001  Owen Taylor  <otaylor@redhat.com>
2335
2336         * configure.in (PACKAGE): move $enable_debug down below
2337         checks for GCC to avoid setting CFLAGS prematurely,
2338         change checks to avoid adding -g twice.
2339
2340         * gutf8.c (g_ucs4_to_utf8): Support len < 0 to mean
2341         0 termination.
2342
2343         * gutf8.c (g_utf8_to_ucs4): Terminate result with 0.
2344
2345         * tests/mainloop-test.c (main): Fix uses of 
2346         g_main_loop_destroy().
2347
2348         * tests/unicode-encoding.c tests/Makefile.am tests/utf8.txt:
2349         Tests for unicode-conversion code.
2350
2351         * gconvert.c (g_convert, g_convert_with_fallback): work around
2352         a couple of GNU libc bugs.
2353
2354         * gconvert.[ch] (g_{locale,filename}_{to,from}_utf8): Standardize
2355         arguments to match g_convert(). Document.
2356
2357         * gunicode.[ch]: 
2358           - Implement conversion functions to and from UTF-16
2359           - Standardize unicode conversion functions on prototype like
2360             g_convert.
2361           - Add a lot of error checking to unicode conversion functions.
2362
2363         * gunicode.[ch] (g_utf8_to_ucs4_fast): Add fast, non-checking
2364         variant of g_utf8_to_ucs4.
2365
2366         * gutf8.c (g_utf8_validate): 
2367          - add g_return_if_fail (str != NULL).
2368          - add checks for overlong strings, non-valid Unicode characters (>= 110000)
2369            and single surrogates.
2370
2371 2001-01-05  Tor Lillqvist  <tml@iki.fi>
2372
2373         * testglib.c (main): Add test for g_path_skip_root().
2374
2375         * gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
2376         forward slashes in the template.
2377
2378         * gutils.c (g_path_skip_root): On Win32, skip the \\server\share
2379         part of UNC paths. On all platforms, skip several initial
2380         slashes. Add a few comments.
2381         (g_get_any_init): On Win32, in case HOME is Unix-style with
2382         (forward) slashes (some other applications apparently set it up
2383         this way, convert to backslashed form.
2384
2385         * configure.in (glib_os): Remove stray 'v'. Add case for mingw,
2386         although using configure for mingw surely doesn't work yet.
2387
2388         * glib.def: Update.
2389
2390 2001-01-02  Havoc Pennington  <hp@redhat.com>
2391
2392         * configure.in: remove glib-config-2.0
2393
2394         * Makefile.am: remove glib-config-2.0
2395
2396 2001-01-03  Havoc Pennington  <hp@pobox.com>
2397
2398         * tests/Makefile.am (INCLUDES): -I$(top_srcdir)/gmodule, 
2399         fix from Michael Meeks
2400
2401         * Makefile.am (INCLUDES): DISABLE was spelled wrong
2402
2403 Wed Jan  3 14:10:49 2001  Owen Taylor  <otaylor@redhat.com>
2404
2405         * gmain.[ch]: Switch GMainLoop to be ref/unref, use to
2406         make dropping reference to running loop safe.
2407
2408 Wed Dec 13 20:41:49 2000  Owen Taylor  <otaylor@redhat.com>
2409
2410         * gmain.c (g_source_unref_internal): Unref callback->cb_data
2411         if it was still set when the source is freed. (Usually, this
2412         will be done by g_source_destroy.)
2413
2414 2001-01-02  Dan Winship  <danw@helixcode.com>
2415
2416         * garray.h (g_array_append_val, g_array_prepend_val,
2417         g_array_insert_val): Use parentheses around an argument to make
2418         these cause an error if you pass a non-lvalue for the value,
2419         rather than silently doing the wrong thing.
2420
2421 2000-12-29  Tor Lillqvist  <tml@iki.fi>
2422
2423         * glibconfig.h.win32.in: Add GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG.
2424
2425         * glib.def: Update.
2426
2427         * {.,*}/makefile.{mingw,msc}.in: Add -DG_ENABLE_DEBUG.
2428         
2429 Fri Dec 29 14:53:18 2000  Tim Janik  <timj@gtk.org>
2430
2431         * configure.in: we can't grow _cv_ variables by using a backticked
2432         expr that refers back to the variable (glib_cv_sizeof_system_thread for
2433         G_THREAD_USE_PID_SURROGATE), that'd keep the variable growing every time
2434         it's evaluated. quantum states, anyone?)
2435
2436 Thu Dec 28 10:21:46 2000  Tim Janik  <timj@gtk.org>
2437
2438         * gmem.[hc]: got rid of outdated dmalloc support. provide g_try_malloc()
2439         and g_try_realloc() which _may_ fail and return NULL.
2440         nuked g_mem_check(), provided GMemVTable for memory function
2441         virtualization, alterable at program startup with g_mem_set_vtable().
2442         provided glib_mem_profiler_table and g_mem_profile() to support limited
2443         profiling information out of the box (uses mprotect() for free()ed areas
2444         on linux).
2445         provide globally visible G_MEM_ALIGN.
2446         buncha cleanups.
2447
2448         * docs/macros.txt: file to get a clue about the various configuration
2449         macros.
2450
2451         * docs/debugging.txt: explain debugging traps.
2452
2453         * configure.in: got rid of --enable-mem-check and --enable-mem-profile,
2454         define GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG. check malloc prototypes
2455         and define SANE_MALLOC_PROTOS is we can use them.
2456         <boy, is this file a mess>
2457
2458         * gutils.c, gscanner.c: fix up compatibility warnings, use g_message().
2459
2460 2000-12-27  Tor Lillqvist  <tml@iki.fi>
2461
2462         * README.win32: Update.
2463
2464 2000-12-25  Tor Lillqvist  <tml@iki.fi>
2465
2466         * gmessages.c: (Win32) Use a MessageBox for fatal
2467         messages. Collect eror message into a buffer, and display that.
2468
2469         * glib.def: Update.
2470
2471         * glibconfig.h.win32.in: Update. Remove unused wchar and wctype
2472         macros, add G_MODULE_SUFFIX.
2473
2474 2000-12-24  Ali Abdin  <aliabdin@aucegypt.edu>
2475
2476         * Makefile.am, gcompat.h, glib.h: New gcompat.h header file
2477           as recommended by Havoc.
2478
2479         * gdate.c, gdate.h, testgdate.c,
2480           docs/reference/glib/glib-sections.txt,
2481           docs/reference/glib/tmpl/date.sgml, tests/date-test.c: Rename some
2482           of the gdate functions to use the '_get' in their name. Patch
2483           reviewed by Havoc.
2484                 
2485 2000-12-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2486
2487         * configure.in: Determine the suffix of the shared librarries for
2488         this system. This is done analogous to
2489         ltconfig.sh. G_MODULE_SUFFIX in glibconfig.h is set to either
2490         "sl", "dll", or (most often) "so".
2491
2492         * tests/Makefile.am, tests/module-test.c,
2493         tests/libmoduletestplugin_a.c, tests/libmoduletestplugin_b.c:
2494         Added new testcase for gmodule. This is mostly copied from
2495         gmodule/testgmodule.c, but unlike that is is quiet. (Why BTW are
2496         some tests that verbose, not to say loquacious...)
2497
2498 2000-12-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2499
2500         * grand.c: Updated G_RAND_DOUBLE_TRANSFORM to be more
2501         accurate. Redid g_rand_double() such that it returns 52 bits after
2502         the point instead of 32 as before. That OTOH requires calling
2503         g_rand_int() twice. Overhauled g_rand_int_range(), which is easier
2504         now thanks to the new precision of g_rand_double(). Thanks to
2505         Sverre Johansen <sj@ifi.uio.no> for the hint.
2506
2507         * grand.h: Added g_rand_boolean() and g_random_boolean()
2508         macros. While they could be omitted due to extreme simplicity,
2509         they make intention clearer in code and are therefore good to have.
2510
2511         * grand.c, grand.h: Renamed all 'min' and 'max' parameters to'
2512         begin' and 'end' resp. to avoid making people think, that 'max' is
2513         included in the interval. 'end' now isn't, whereas 'begin'
2514         is. That's similar to the use in the STL.
2515
2516         * gslist.c, glist.c: Ok, I'm a moron. When I originally
2517         implemented ENABLE_GC_FRIENDLY, I forgot to include config.h into
2518         the affected files. Now that Alex did that for those two,
2519         inevitable typos surfaced, which are now fixed.
2520         
2521         * garray.c, ghash.c, gqueue.c, gtree.c: Include config.h as well,
2522         as ENABLE_GC_FRIENDLY should be known.
2523
2524 2000-12-19  Alexander Larsson  <alexl@redhat.com>
2525
2526         * configure.in:
2527         Added --disable-mem-pools option.
2528
2529         * glist.c:
2530         * gslist.c:
2531         * gnode.c:
2532         * gmem.c:
2533         Disable free list and memory chunks if DISABLE_MEM_POOLS is defined.
2534
2535 2000-12-17  Tor Lillqvist  <tml@iki.fi>
2536
2537         * gutf8.c (g_utf8_get_charset_internal): (Win32) Use GetACP to get
2538         the current ANSI codepage.
2539
2540         * gunicode.h: Add comment that the static string g_get_charset
2541         sets the parameter to point to should be copied in case the
2542         charset might be changed later in the program.
2543
2544 2000-12-14  Tor Lillqvist  <tml@iki.fi>
2545
2546         * makefile.{mingw,msc}.in: No need to -DGSPAWN_HELPER when
2547         compiling gspawn-win32-helper any longer.
2548
2549         * giowin32.c (g_io_win32_dispatch): Warn if no callback. Call
2550         callback correctly.
2551         (g_io_win32_create_watch): Fix typo.
2552         (g_io_win32_fd_create_watch): Ditto.
2553         (g_io_channel_unix_new): If it is a file descriptor (i.e., a Unix
2554         fd lookalike provided by the C library), call
2555         g_io_channel_win32_new_fd(). If it is a socket (from WinSock),
2556         call g_io_cahnnel_win32_new_stream_socket(). Hopefully sockets and
2557         fds don't overlap. TODO: Implement also datagram sockets.
2558         (g_io_channel_win32_poll): Call g_main_context_get_poll_func().
2559
2560         * gcompletion.h: Include <unistd.h> only on Unix. Is this
2561         inclusion really needed here? OTOH, do include <stddef.h>, for
2562         size_t.
2563
2564         * gmessages.c: (Win32) Don't define a function called "write" that
2565         might clash with the prototype from <io.h>, use a #define.
2566
2567         * glib.def: Update.
2568
2569         * gmain.c (g_source_add_poll): Don't return a value from void
2570         function.
2571         (g_main_context_get_poll_func): Compile also for non-Win32, as
2572         presumably was intended. The result var is a GPollFunc, not a
2573         GPollFunc*. Return the result!
2574
2575 2000-12-13  Havoc Pennington  <hp@redhat.com>
2576
2577         * gconvert.c (open_converter): make static
2578
2579         * gutf8.c (g_utf8_validate): Simplify logic a bit, maybe 
2580         speeding it up - now we just return FALSE if we had to bail out
2581         for any reason before getting to the end of the string, as defined 
2582         by a nul byte if len was -1, defined by the len otherwise. This 
2583         also fixes a bug where nul bytes were not treated as invalid 
2584         when the length was specified.
2585
2586 2000-12-12  Havoc Pennington  <hp@pobox.com>
2587
2588         * gmain.c (g_main_context_destroy): don't try to use thread stuff
2589         unless G_THREADS_ENABLED
2590         (g_main_context_query): ditto
2591         (g_main_context_check): ditto
2592         (g_main_loop_quit): ditto
2593
2594 Tue Dec 12 18:58:22 2000  Tim Janik  <timj@gtk.org>
2595
2596         * ghash.c (g_hash_table_remove): return whether a value
2597         got removed.
2598
2599 Tue Dec 12 15:18:10 2000  Owen Taylor  <otaylor@redhat.com>
2600
2601         * gmain.[ch]: Revert unauthorized changes.
2602
2603 2000-12-12  Elliot Lee  <sopwith@redhat.com>
2604
2605         * gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
2606         GMainContext useful in implementing some additional styles of
2607         main loop usage.  To do this, however, Joe Hacker needs to be able
2608         to create/destroy GMainContext's at will. This is just an export
2609         of existing functionality, rather than any new functionality.
2610
2611         They are listed in the "Low level functions for implementing custom
2612         main loops" section of the header file, to avoid confusing people.
2613
2614 Sun Dec 10 10:47:11 2000  Owen Taylor  <otaylor@redhat.com>
2615
2616         * gmain.c (g_source_destroy_internal): Remove pollfds
2617         from the context here, not when actually freeing the
2618         source.
2619
2620         * gmain.c (g_source_unref_internal): Free source list
2621         and source, call source->source_funcs->destroy().
2622
2623         * giochannel.c: Unreference io_channel properly.
2624
2625 Thu Dec  7 15:22:30 2000  Owen Taylor  <otaylor@redhat.com>
2626
2627         * tests/mainloop-test.c (recurser_start): Add a bunch
2628         of unrefs.
2629
2630         * gmain.c (g_source_attach): Reference the source
2631         when adding (pointed out by Elliot)
2632
2633 2000-12-08  Raja R Harinath  <harinath@cs.umn.edu>
2634
2635         * acglib.m4 (GLIB_AC_DIVERT_BEFORE_HELP): 
2636         Rename from GLIB_DIVERT_BEFORE_HELP.  
2637         Update to track autoconf 2.49b.
2638         * configure.in: Reflect above change.
2639         (AC_EGREP_HEADER): Rename from really obselete AC_HEADER_EGREP.
2640         (debug_default): Replace "if test `expr ...`" with "case". 
2641
2642         * tests/Makefile.am (TESTS): Rearrange into other variables, and
2643         include run-markup-tests.sh.
2644         (TESTS_ENVIRONMENT): New.  Pass $srcdir to tests.
2645         (noinst_PROGRAMS): Rename to ...
2646         (check_PROGRAMS): ... this.  'automake' ensures that these are
2647         built before running the tests.
2648         * tests/run-markup-tests.sh: Support $srcdir != $builddir.
2649
2650 2000-12-08  Havoc Pennington  <hp@pobox.com>
2651
2652         * tests/Makefile.am (TESTS): move markup-test to noinst_PROGRAMS;
2653         it isn't a proper test, the proper test would be 
2654         run-markup-tests.sh, but that can't go in tests, so we need 
2655         a manual make check rule. Didn't do that yet.
2656
2657 2000-12-07  Raja R Harinath  <harinath@cs.umn.edu>
2658
2659         * gmain.h: Don't put anything after an #endif.
2660         * gmain.c: Likewise.
2661
2662 2000-12-06  Havoc Pennington  <hp@pobox.com>
2663
2664         * tests/strfunc-test.c (main): add g_strdupv test
2665
2666         * gstrfuncs.c (g_strdupv): Add a function to copy 
2667         an array of strings
2668
2669 Tue Dec  5 12:23:04 2000  Owen Taylor  <otaylor@redhat.com>
2670
2671         * gmain.[hc]: Major change in API for creating sources
2672         to handle multiple main loops (GMainContext *). 
2673
2674         GSources are now exposed as GSource * and implemented
2675         with structure derivation.
2676
2677         * giochannel.[ch]: Changed vtable for GIOChannel to correspond
2678         to the new mainloop API, add g_io_channel_create_watch().
2679          
2680         * gtypes.h: Move GTimeVal here.
2681
2682         * gthread.h: Remove gmain.h include to avoid circularity.
2683         
2684         * giounix.c: Update for new GMain API.
2685          
2686         * giowin32.c: Update for new GMain API. (No check for
2687         proper compilation or working.)
2688
2689         * timeloop.c timeloop-basic.c: A benchmarking program for
2690         the main loop comparing the main loop against a 
2691         hand-written (timeloop-basic.c) variant. 
2692
2693         * tests/mainloop-test.c: New torture test of mainloop.
2694         
2695         * docs/Changes-2.0.txt: Started. Added text about
2696         changes to GMain.
2697
2698         * gmain.c (g_main_add_poll_unlocked): Initial fd->revents
2699         to zero. (#8482, Benjamin Kahn)
2700
2701 2000-12-01  Tor Lillqvist  <tml@iki.fi>
2702
2703         * {.,*}/makefile.msc.in: Include make.msc from GLib's build subdir.
2704
2705         * makefile.{mingw,msc}.in (glib_OBJECTS): Add gunibreak.
2706
2707         * glib.def: Update correspondingly.
2708
2709 2000-11-21  Havoc Pennington  <hp@pobox.com>
2710
2711         * gmacros.h: Provide G_CONST_RETURN which is 'const' by default,
2712         and nothing when G_DISABLE_CONST_RETURNS is defined.
2713
2714 2000-11-29  Havoc Pennington  <hp@redhat.com>
2715
2716         * gunidecomp.c (COMBINING_CLASS): 
2717         s/UNICODE_LAST_CHAR/G_UNICODE_LAST_CHAR/
2718
2719         * gunichartables.h: Update for data in Unicode 3.0.1
2720
2721         * gunidecomp.h: Ditto
2722         
2723         * gunicode.h (GUnicodeBreakType): Enum for line break properties
2724         (g_unichar_break_type): Get the break property for a char
2725         
2726         * gunibreak.h: Autogenerated line break property tables
2727
2728         * gunibreak.c (g_unichar_break_type): added 
2729         
2730         * Makefile.am (EXTRA_DIST): dist gen-unicode-tables.pl
2731
2732         * Makefile.am (libglib_1_3_la_SOURCES): Add gunibreak.h, gunibreak.c
2733         
2734         * gen-unicode-tables.pl: Include the script to update the unicode
2735         char tables
2736
2737 2000-11-28  Elliot Lee  <sopwith@redhat.com>
2738
2739         * gmarkup.c: Fix warnings.
2740
2741         * guniprop.c, gunidecomp.c: Make warnings go away by using
2742         GPOINTER_TO_INT() instead of (int).
2743
2744         * gcompletion.[ch]: Add g_completion_set_compare(),
2745         to allow (for example) using case-insensitive completion.
2746
2747 2000-11-28  Tor Lillqvist  <tml@iki.fi>
2748
2749         Patches by Hans Breuer:
2750         
2751         * gspawn-win32.c: Move the code for gspawn-win32-helper to its own
2752         file.
2753
2754         * makefile.{mingw,msc}.in: Change accordingly.
2755
2756         * gspawn-win32-helper.c: New file.
2757
2758         * Makefile.am (EXTRA_DIST): Add it.
2759
2760         * gmarkup.c (find_current_text_end): Fix assertion not to check an
2761         uninitialised variable.
2762
2763 2000-11-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2764
2765         * gthread.c: Set the thread data before locking the mutex, because
2766         the locking call might use g_thread_self ().
2767
2768         * gthread.h: Do only show the location of the locking/unlocking
2769         for -DG_ERRORCHECK_MUTEXES and not the name of the mutex. Add the
2770         errorcheck capability for g_cond_wait and g_cond_timed_wait as
2771         well.   
2772
2773 2000-11-27  Havoc Pennington  <hp@redhat.com>
2774
2775         * gthread.h: Add void in empty function arg list
2776
2777 2000-11-22  Tor Lillqvist  <tml@iki.fi>
2778
2779         * makefile.{mingw,msc}.in: Add gqsort.
2780
2781         * glib.def: Update.
2782
2783 2000-11-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2784
2785         * configure.in: Add a surrogate for thread priorities using PID
2786         niceness for systems with no thread priorities and different PIDs
2787         for threads of the same process (most notably: Linux). Define
2788         G_THREAD_USE_PID_SURROGATE in that case, as used by
2789         gthread-posix.c. Also make the system thread bigger by
2790         sizeof (long) to contain the thread's PID.
2791
2792         * gfileutils.c: Include stdlib.h for mkstemp prototype.
2793
2794         * gthread.c: Add priority range checks to the affected functions.
2795
2796         * gthreadpool.c: Remove unused variable.
2797
2798 Mon Nov 20 18:55:17 2000  Jonathan Blandford  <jrb@redhat.com>
2799
2800         * gtree.[hc]: Patch from David Benson <daveb@idealab.com> to add
2801         user_data support to gtree functions.
2802
2803 Mon Nov 13 18:35:52 2000  Jonathan Blandford  <jrb@redhat.com>
2804
2805         * gtypes.h (GCompareFuncData): new func type to let you use user
2806         data when comparing nodes.
2807
2808         * gslist.c (g_list_sort_with_data): new function to sort with
2809         user_data. 
2810
2811         * glist.c (g_list_sort_with_data): new function to sort with
2812         user_data. 
2813
2814         * garray.[ch]: Added convenience functions to sort arrays.
2815
2816 2000-11-16  Havoc Pennington  <hp@redhat.com>
2817
2818         * guniprop.c (g_unichar_isspace): Use a switch here, maybe helps 
2819         the compiler optimize things. Also, ' ' is a SPACE_SEPARATOR,
2820         so don't special case it.
2821
2822 2000-11-17  Tor Lillqvist  <tml@iki.fi>
2823
2824         * glib.def: Add g_trash_stack entry points.
2825
2826 Fri Nov 17 15:43:00 2000  Owen Taylor  <otaylor@redhat.com>
2827
2828         * Released 1.3.2
2829         
2830         * NEWS: Update.
2831
2832         * tests/Makefile.am (dist-hook): Add code to distribute
2833         markup test files.
2834
2835 2000-11-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2836
2837         * configure.in: Check for the sched.h header and include it on
2838         gthread/gthread-posix.c if available.
2839
2840         * configure.in: Add -D_POSIX4_DRAFT_SOURCE to
2841         GTHREAD_COMPILE_IMPL_DEFINES. Also add -D_POSIX4A_DRAFT10_SOURCE
2842         to G_THREAD_CFLAGS. Really deploy GTHREAD_COMPILE_IMPL_DEFINES,
2843         when searching for thread libs. Look for sched_* functions in
2844         -lrte as well. All of that is necessary on DG/UX.
2845
2846         * configure.in: Use AC_TRY_COMPILE instead of AC_EGREP_HEADERS in
2847         various places to make it work more reliable, to make it accept
2848         macros instead of functions etc.
2849
2850         * configure.in: Replace some NULL's for checks with 0 to make it
2851         work without stdio.h everywhere.
2852
2853         * configure.in, gutils.c: changed the test for getpwuid_r to first
2854         test for a posix version and then for a non-posix version. No code
2855         change in gutils.c. Again this change deals better with getpwuid_r
2856         being a macro and not a function. Most of the above with kind help
2857         from Tethys <tet@isengard.europe.dg.com>. This fixes Bug #13403.
2858         
2859 2000-11-14  Tor Lillqvist  <tml@iki.fi>
2860
2861         * gwin32.h: Make #endif comment match #ifdef.
2862
2863 Mon Nov 13 14:00:20 2000  Owen Taylor  <otaylor@redhat.com>
2864
2865         * configure.in: Up version to 1.3.2
2866
2867         * gconvert.h (enum GConvertError): Remove trailing ,
2868
2869         * gfileutils.c (g_file_open_tmp): Fix comment to 
2870         properly describe return value.
2871
2872 2000-11-13  Tor Lillqvist  <tml@iki.fi>
2873
2874         * config.h.win32.in: Add USE_LIBICONV.
2875
2876         * gconvert.c: Check G_OS_WIN32 only after including glib.h. 
2877
2878         * glib.def: Update.
2879
2880 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2881
2882         * gthread.c (g_static_rec_mutex_*): Made recursive mutexes also
2883         work when the thread system is not (yet) initialized.
2884
2885 Sun Nov 12 18:34:32 2000  Owen Taylor  <otaylor@redhat.com>
2886
2887         * gconvert.[ch]: Create wrapper functions for iconv()
2888         so that we can transparently use the native iconv, 
2889         libiconv, or (in the future) a mini-iconv included
2890         with glib.
2891
2892         * glib-config-2.0.in glib-2.0.pc.in: Include @ICONV_LIBS@
2893
2894         * INSTALL: Added note about libiconv.
2895
2896         * configure.in: Add checks for libiconv from pango. If
2897         EILSEQ is not defined in errno.h add define for it into
2898         glibconfig.h so g_iconv can use it. (Note, recompiling
2899         from a system without EILSEQ to a system with EILSEQ
2900         will break binary compatibility)
2901
2902 2000-11-12  Robert Brady  <robert@suse.co.uk>
2903
2904         * gstrfuncs.c, gstrfuncs.h: Remove g_filename_{to,from}_utf8
2905
2906         * gconvert.c, gconvert.h: Add g_filename_{to,from}_utf8 and
2907         g_locale_{to.from}_utf8.  The locale_ variant honours 
2908         nl_langinfo(CODESET), the filename_ variant uses UTF-8 unless
2909         asked otherwise.
2910
2911         (g_convert): Add G_CONVERT_ERROR_PARTIAL_INPUT error, if bytesread
2912         != length and no bytesread pointer passed.
2913
2914 Sun Nov 12 15:29:53 2000  Owen Taylor  <otaylor@redhat.com>
2915
2916         * gfileutils.[ch]: template is a reserved word in
2917         C++ s/template/tmpl/. 
2918
2919 2000-11-11  Havoc Pennington  <hp@pobox.com>
2920
2921         * gmarkup.c (g_markup_parse_context_parse): Handle a long stream
2922         of bytes containing no UTF-8 character starts
2923
2924 2000-11-11  Tor Lillqvist  <tml@iki.fi>
2925
2926         * glib.def: Add missing entry points.
2927
2928         * gfileutils.c (g_mkstemp): Improve chance to generate unique
2929         names with less effort a bit.
2930
2931         * gfileutils.h: Add g_file_open_tmp() declaration.
2932
2933         * testglib.c: Include <io.h> on Win32.
2934
2935         * makefile.mingw.in: Correct the way to invoke sub-makes.
2936
2937 Sun Nov  5 13:20:54 2000  Owen Taylor  <otaylor@redhat.com>
2938
2939         * glib-object.h: Add gtypemodule.h
2940
2941 2000-11-11  Tor Lillqvist  <tml@iki.fi>
2942
2943         * gfileutils.c (g_file_open_tmp): New function, suggested by Havoc
2944         earlier this month.
2945         (g_mkstemp): Use only one case for letters in temp file name, as
2946         this will be used on systems with case-insensitive file systems.
2947
2948         * testglib.c (main): Test g_mkstemp() and g_file_open_tmp().
2949
2950 2000-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2951
2952         * gthreadpool.c: Don't take other threads with other priorities
2953         into account as changing the priority is highly
2954         unportable. (Actually using it at all already is unportable, but
2955         even sometimes where that works, changing priority is not
2956         possible).
2957
2958 2000-11-05  Havoc Pennington  <hp@pobox.com>
2959
2960         * gmarkup.h: rename G_MARKUP_FOO to
2961         G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG
2962
2963         * gmarkup.c: don't start doc comments with "Returns"
2964         
2965 2000-11-05  Havoc Pennington  <hp@pobox.com>
2966
2967         * gmarkup.c: inline docs
2968         (unescape_text): properly check strtoul for failure.
2969         
2970         * gerror.c (g_propagate_error): Free the src error if the dest
2971         location is NULL - I'm pretty sure that's what this function was 
2972         supposed to do.
2973
2974 2000-11-05  Havoc Pennington  <hp@pobox.com>
2975
2976         * gutils.c (g_find_program_in_path): cleanup docs, sync param 
2977         names to those in the header
2978
2979         * gfileutils.c (g_mkstemp): clean up docs
2980
2981         * gshell.h: sync param names with param names in .c file
2982
2983         * gfileutils.h (enum GFileTest): remove trailing comma from last
2984         member, confuses gtk-doc
2985
2986         * gmarkup.h: s/GMarkupErrorType/GMarkupError/g; to follow
2987         convention
2988
2989 2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2990
2991         * gasyncqueue.c: Added documentation for asyncronous queues.
2992
2993         * gspawn.c: Include sys/select.h (some platforms need it for
2994         select). 
2995
2996         * gspawn.c: Changed unportable __FUNCTION__ to the verbatim
2997         function name.
2998
2999 2000-10-31  Tor Lillqvist  <tml@iki.fi>
3000
3001         * gutils.c
3002         * gutils.h
3003         * gfileutils.c
3004         * gfileutils.h: Actually, g_mkstemp() is better suited in gfileutils.
3005
3006 2000-10-30  Tor Lillqvist  <tml@iki.fi>
3007
3008         * configure.in: Check for mkstemp.
3009
3010         * gutils.c (g_mkstemp): New function. If HAVE_MKSTEMP, just call
3011         it, otherwise use code lifted from glibc.
3012
3013         * gutils.h: Declare it.
3014
3015         * glib.def: Here, too. Plus two missing functions.
3016
3017 2000-10-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3018
3019         * gcache.h, gcache.c, ghash.h, ghash.c, grel.c, grel.h, gtypes.h:
3020         Introduced new function type GEqualFunc to return TRUE for equal
3021         params. This is now used instead of GCompareFunc (which should
3022         work akin to strcmp) here. This kind of fixes Bug #14412. Note
3023         that technically GCompareFunc and GEqualFunc are still the same
3024         types, as gint == gboolean.
3025
3026         * ghash.h, gutils.c: g_int_equal and g_direct_equal now return
3027         gboolean to be really become GEqualFunc.
3028
3029         * gscanner.c, testglib.c, tests/hash-test.c: Some tiny changes to
3030         follow the above change.
3031
3032 2000-10-27  Tor Lillqvist  <tml@iki.fi>
3033
3034         * makefile.{mingw,msc}.in (glib_OBJECTS): Add gmarkup.
3035
3036         * glib.def: Add missing functions.
3037
3038         * tests/makefile.{mingw,msc}.in (TESTS): Add markup-test.
3039
3040 2000-10-24  Havoc Pennington  <hp@pobox.com>
3041
3042         * gmarkup.h, gmarkup.c: New module to parse a simple
3043         markup language
3044         
3045         * Makefile.am: add gmarkup.h, gmarkup.c
3046
3047         * tests/Makefile.am: add markup-test
3048
3049         * gstring.h (g_string_new_len): new function to create a string
3050         with a length
3051         (g_string_new): avoid a gratuitous realloc
3052
3053 2000-10-26  Tor Lillqvist  <tml@iki.fi>
3054
3055         * makefile.{mingw,msc}.in: Cosmetics.
3056
3057 2000-10-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3058
3059         * gstrfuncs.c (g_strsplit): When the string is ended by a
3060         delimiter, return an extra empty string just like for a delimiter
3061         at the start of the string. This makes the function behave more
3062         consistent and also fixes Bug #15026.
3063
3064 Tue Oct 24 22:09:14 2000  Tim Janik  <timj@gtk.org>
3065
3066         * glib-object.h: added newly added gobject/ headers.
3067
3068         * gmesage.c: print g_message() output to stderr instead of stdout.
3069
3070 2000-10-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3071
3072         * configure.in: Use one = instead of two, which is plainly wrong.
3073
3074 2000-10-19  Tor Lillqvist  <tml@iki.fi>
3075
3076         * makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
3077         with user32.lib.
3078
3079         * gspawn-win32.c
3080         * gfileutils.c: Make them compile with picky MSVC.
3081
3082         * gwin32.h: New file. Move Win32-only stuff that isn't related to
3083         GIOChannels here from giochannel.h.
3084
3085         * Makefile.am: Add it here.
3086
3087         * giochannel.h: Move stuff to gwin32.h.
3088
3089         * glib.h: On Win32, include gwin32.h.
3090
3091 Mon Sep 11 10:03:24 2000  Owen Taylor  <otaylor@redhat.com>
3092
3093         * glib.h convert.c (g_convert_with_fallback): Change
3094         ERROR_OTHER to ERROR_FAILED, add some dummy marking with _().
3095
3096         * docs/reference/glib/glib-sections.txt
3097         docs/reference/glib/glib-docs.sgml Update for g_convert,
3098         g_unicode_validate.
3099
3100 2000-10-16  Tor Lillqvist  <tml@iki.fi>
3101
3102         * glibconfig.h.win32.in: Remove alloca stuff from here. galloca.h
3103         takes care of it, correctly.
3104
3105         * giowin32.c (reader_thread): Some more debugging output.
3106         (g_io_channel_win32_poll): Remove unused vars.
3107
3108         * gfileutils.c: Changes for Win32, with no unistd.h and no
3109         S_ISLNK().
3110
3111         * gspawn-win32.c: Implementation of the g_spwan_* functions for
3112         Win32. Due to the general non-Unixness of Win32, much of the
3113         functionality that is relatively clean to implement on Unix, is
3114         hard to do on Win32. We must use a separate helper program to
3115         change directory, close extra file descriptors, redirect the std
3116         ones, as needed, and only then start the child process. No child
3117         process pid can be returned, unfortunately. Or if we used
3118         CreateProcess directly, it probably could. (Now we use the spawnv*
3119         functions from msvcrt.)
3120
3121         * Makefile.am (EXTRA_DIST): Add gspawn-win32.c
3122
3123         * glib.def: Add new entry points.
3124
3125         * glib.def
3126         * giowin32.c: Remove g_io_channel_win32_wait_for_condition(),
3127         g_io_channel_win32_poll() subsumes it.
3128
3129         * gbacktrace.h: G_BREAKPOINT for MSVC (on the ix86).
3130
3131         * gwin32.c (g_win32_getlocale): Use "sp" for
3132         LANG_CROATIAN+SUBLANG_SERBIAN_LATIN.
3133
3134         * makefile.{mingw,msc}.in (glib_OBJECTS): Add new files.
3135         Add gspawn-win32-helper.exe rule.
3136
3137         * tests/makefile.{mingw,msc}.in (TESTS): Add shell-test and
3138         spawn-test.
3139
3140         * tests/spawn-test.c: (run_tests): On Win32, don't try to run
3141         /bin/sh, but ipconfig (no special significance in choosing that,
3142         just a program that outputs something to stdout).
3143
3144 2000-10-15  Raja R Harinath  <harinath@cs.umn.edu>
3145
3146         Remove need for acconfig.h, and misc. cleanups.
3147         * acglib.m4 (GLIB_SIZEOF): Add 'autoheader' comment to
3148         AC_DEFINE_UNQUOTED.
3149         (GLIB_BYTE_CONTENTS): Likewise.
3150
3151         * configure.in: Add 'autoheader' comments to all AC_DEFINE(...)
3152         and AC_DEFINE_UNQUOTED(...) lines.
3153         Replace AC_MSG_CHECKING/AC_CACHE_VAL with AC_CACHE_CHECK.
3154         (AM_PROG_LIBTOOL): Move after AC_PROG_CC.
3155         
3156         * acconfig.h: Empty out.
3157
3158         * Makefile.am (BUILT_EXTRA_DIST): New variable.  List 'dist'able
3159         files that are created in the builddir.
3160         (dist-hook): Handle those files.
3161         (libglib_1_3_la_SOURCES): Remove @ALLOCA@.  @ALLOCA@ should only
3162         be used in an _LDADD or _LIBADD, since it expands (if necessary)
3163         to 'alloca.o'.
3164
3165         * tests/Makefile.am (BUILT_EXTRA_DIST): New variable.
3166         (dist-hook): Handle $(BUILT_EXTRA_DIST).
3167         
3168 2000-10-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3169
3170         * grand.c: Added inline documentation. 
3171
3172         * gtypes.h, gnode.h, gutils.h: Readded GFreeFunc,
3173         g_node_insert_after and g_find_program_in_path resp., which
3174         mysteriously disappeared during the glib.h dissection.
3175
3176 2000-10-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3177
3178         * glibconfig.h.win32.in: Adapted accordingly to header separation
3179         and GLIB_HAVE_ALLOCA_H renaming.
3180
3181         * Makefile.am: Added the new headers to glibinclude_HEADERS.
3182
3183         * glib.h: Forgot to include gerror.h.
3184
3185         * glib.h, galloca.h, garray.h, gasyncqueue.h, gbacktrace.h,
3186         gcache.h, gcompletion.h, gconvert.h, gdataset.h, gdate.h, ghash.h,
3187         ghook.h, giochannel.h, glist.h , gmacros.h, gmain.h, gmem.h,
3188         gmessages.h, gnode.h, gprimes.h, gquark.h, gqueue.h, grand.h,
3189         grel.h, gscanner.h, gslist.h, gstrfuncs.h, gstring.h, gthread.h,
3190         gthreadpool.h, gtimer.h, gtree.h, gtypes.h, gutils.h: Split glib.h
3191         into many header files mostly according to the resp. *.c-files.
3192         
3193         * gmacros.h: Added G_BEGIN_DECLS and G_END_DECLS to mean: 'in case
3194         of C++: extern "C" { ... }' analogous to glibc __BEGIN_DECLS and
3195         __END_DECLS.
3196
3197         * configure.in, gerror.h, gfileutils.h, gshell.h, gspawn.h,
3198         gunicode.h, : Changed guard-macro names to something more
3199         consistent.
3200
3201         * configure.in, *.h: Use G_BEGIN_DECLS and G_END_DECLS.
3202
3203         * configure.in: Defined GLIB_HAVE_ALLOCA_H instead of including
3204         alloca.h in glibconfig.h, GLIB_HAVE_ALLOCA_H is used in glib.h.
3205
3206         * configure.in: Removed cruft from old threading code.
3207
3208 2000-10-09  Raja R Harinath  <harinath@cs.umn.edu>
3209
3210         Work with beta autoconf 2.50.
3211         * configure.in (GLIB_MAJOR_VERSION): Use GLIB_DIVERT_BEFORE_HELP
3212         instead of AC_DIVERT_PUSH(),AC_DIVERT_POP.
3213         (AC_CHECK_HEADERS): Remove redundant AC_DEFINE(HAVE_...).
3214         (REALLOC_0_WORKS): Move AC_DEFINE outside AC_CACHE_VAL.
3215         (dlopen): Quote nested AC_CHECK_... calls.
3216
3217         * acglib.m4 (GLIB_TR_SH, GLIB_TR_CPP): Utility macros copied from
3218         beta autoconf 2.50.
3219         (GLIB_DIVERT_BEFORE_HELP): New macro that works both with autoconf
3220         2.13 and beta autoconf 2.50.
3221         (GLIB_SIZEOF, GLIB_BYTECONTENTS): Use GLIB_TR_*.
3222
3223         * Makefile.am (CONFIGURE_DEPENDENCIES): Use this to specify
3224         that 'configure' depends on acglib.m4.
3225
3226 2000-10-09  Havoc Pennington  <hp@redhat.com>
3227
3228         * Makefile.am, tests/Makefile.am: Add new files.
3229
3230         * tests/spawn-test.c, tests/shell-test.c: new tests for
3231         the shell/spawn stuff
3232
3233         * gutils.c (g_find_program_in_path): convert a relative
3234         program name into an absolute pathname to an existing 
3235         executable
3236
3237         * gspawn.h, gspawn.c: New fork/exec API
3238
3239         * gshell.h, gshell.c: Shell-related utilities, at the moment
3240         simply routines to parse argv and quote/unquote strings
3241
3242         * guniprop.c (g_unichar_isspace): Return TRUE for the 
3243         ASCII space characters isspace() returns TRUE for.
3244
3245         * gfileutils.c (g_file_get_contents): Convenience function 
3246         to slurp entire file into a string and return it. Partially
3247         written by Joel Becker.
3248         (g_file_test): file test function
3249
3250 2000-10-06  Tor Lillqvist  <tml@iki.fi>
3251
3252         * makefile.msc.in: Revamp to be like makefile.mingw.in, make
3253         the MSVC build actually work again.
3254
3255         * gmodule/makefile.msc.in
3256         * gobject/makefile.msc.in
3257         * gthread/makefile.msc.in: New files, like their mingw counterparts.
3258
3259         * gmodule/Makefile.am
3260         * gobject/Makefile.am
3261         * gthread/Makefile.am: Make and distribute them.
3262
3263         * */makefile.mingw.in: Allow override of GLib version number from
3264         the build/win32/module.defs file.
3265
3266         * glib.def: Add new entry point.
3267
3268         * tests/gio-test.c (main): Fix the Win32-only code to use current
3269         API, g_io_channel_win32_make_pollfd() and g_io_channel_win32_poll().
3270
3271         Fixes from Hans Breuer:
3272
3273         * glib.h (struct DIR): Keep the last readdir result cached inside
3274         the DIR struct, to enable several DIRs being open simultaneously.
3275
3276         * gwin32.c (g_win32_readdir): Use the above instead of static.
3277
3278         * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
3279         MSVC happy.
3280
3281 2000-10-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3282
3283         * glib.h: Changed alloca stuff a bit: when we have a working
3284         alloca.h, we're not messing with alloca any further. Should fix a
3285         bug reported by Bernd Demian <wega@csc-dd.de>.
3286
3287 2000-09-29  Jonathan Blandford  <jrb@redhat.com>
3288
3289         * gnode.c (g_node_insert_after): Added function to keep symmetry
3290         with g_node_insert_before. 
3291
3292 2000-09-29  Martin Baulig  <baulig@suse.de>
3293
3294         Several minor ANSI C fixes.
3295
3296         Added missing casts:
3297         * gdate.c (g_date_fill_parse_tokens): `s = (guchar *) str'.
3298         * gmain.c (g_idle_dispatch): `func = (GSourceFunc) source_data'.
3299         (g_idle_add_full): `(gpointer) function' in call to g_source_add().
3300         * gstrfuncs.c (g_strdown): `s = (guchar *) string' and
3301         `return (gchar *) string'.
3302         (g_strup): Likewise.
3303         (g_strchug): `start = (guchar*) string' in 1st for() argument;
3304         `strlen ((gchar *) start)' in call to g_memmove().
3305         * gstring.c (g_string_down): `s = (guchar *) string->str'.
3306         (g_string_up): Likewise.
3307         * gthreadpool.c (stop_this_thread_marker):
3308         `(gpointer) &g_thread_pool_new'.
3309         * gunidecomp.h (decomp_table[]): Cast all the strings to
3310         `unsigned char *'.
3311
3312         Put text following #endif into comments:
3313         * gmain.c: here.
3314
3315 2000-09-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3316
3317         * configure.in, glib.h: Added errorcheck mutexes. These are
3318         activated through the preprocessor symbol
3319         G_ERRORCHECK_MUTEXES. Need to add an extra word to StaticMutex in
3320         order to achieve this. g_(static_)mutex_* functions instrument the
3321         mutex operations with mutex name and location, when compiled with
3322         -DG_ERRORCHECK_MUTEXES. g_thread_init activates the errorcheck
3323         mutexes, when compiled with -DG_ERRORCHECK_MUTEXES.
3324
3325 2000-09-28  Havoc Pennington  <hp@pobox.com>
3326
3327         * glib.h (GThreadPriority): fix indentation
3328         (GConvertError): generic error is conventionally called
3329         _FAILED rather than _OTHER, at least at the moment, 
3330         according to GError docs in docs/reference.
3331
3332         * gconvert.c: s/_OTHER/_FAILED/
3333
3334 2000-09-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3335
3336         * configure.in: Adjusted the test for an unimplemented
3337          getpwuid_r. Info from Michael Pruett. This is just a forward
3338          merge from glib-1-2.
3339
3340         * configure.in: Moved determination of G_THREAD_FLAGS before
3341         G_THREAD_LIBS. Check for UnixWare systems and set the right cflags
3342         and libs there (it needs -Kthread for the native compiler and
3343         -pthread for gcc). Thanks to Boyd Lynn Gerber <gerberb@zenez.com>
3344         for the info.
3345
3346         * configure.in: Fail immediately, when no thread library is found,
3347         instead of continuing searching for rt libs etc. Changed almost
3348         all occurances of $enable_threads to $have_threads, as that's,
3349         what we want.
3350
3351         * tests/threadpool-test.c: Define vars inside the guard to avoid
3352         warnings.
3353
3354         * configure.in, tests/type-test.c: Some platforms support 64 bit
3355         'long long', but you can not printf or scanf them. In that case,
3356         don't define G_G{UINT|INT}64_FORMAT. Changed the type-test program
3357         to reflect that.
3358
3359         * gutils.c (g_get_current_dir): max_len can't be initialized
3360         statically as it might call a function. So do it at first call.
3361
3362 Tue Sep 26 2000 Elliot Lee <sopwith@redhat.com>
3363
3364         * glib.h: Add G_GNUC_PURE macro (but don't use it anywhere).
3365
3366 Mon Sep 25 2000 Elliot Lee <sopwith@redhat.com>
3367
3368         * garray.c, glib.h, gmem.c: Add a few missing G_GNUC_CONST's.
3369
3370 2000-09-21  Tor Lillqvist  <tml@iki.fi>
3371
3372         * makefile.mingw.in: Add gconvert.o. Use libiconv.
3373
3374         * config.h.win32.in: Define HAVE_GETCWD.
3375
3376         * glib.def: Add new entry points.
3377
3378 2000-09-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3379
3380         * configure.in: The last released automake (1.4) still requires
3381         AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL, so use that for the
3382         time being.
3383
3384 2000-09-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3385
3386         * acconfig.h, configure.in, gutils.c: Test for the existence of
3387         getcwd, and use it only when found.
3388
3389         * glib.h: Only use the gcc-variable-macro-argument-extension for
3390         gcc >= 2.4. Both patches from Jonas Oberg <jonas@gnu.org>.
3391
3392 Mon Sep 18 10:58:21 2000  Owen Taylor  <otaylor@redhat.com>
3393
3394         * gutf8.c: Implement g_ucs4_to_utf8 which was in
3395         the header file but not implemented.
3396
3397 Sun Sep 17 2000 Elliot Lee <sopwith@redhat.com>
3398
3399         * glib.h configure.in: Define g_alloca() as an
3400         alloca-that-works-anywhere.
3401
3402         * gconvert.c: Fix warnings which could have caused problems on
3403         64-bit platforms.
3404
3405 Sun Sep 10 12:37:40 2000  Owen Taylor  <otaylor@redhat.com>
3406
3407         * glib.h gconvert.c (g_convert): Havoc Pennington's implementation 
3408         of convenient character set conversion using iconv, with
3409         the addition of GError. We probably need a fallback that
3410         just does conversions between, say UTF-8,16,32 and ISO-8859-1
3411         for targets without iconv at all.
3412
3413         Also add g_convert_with_fallback() to take care of conversions 
3414         where we accept some loss going to the target encoding.
3415
3416 2000-09-10  Havoc Pennington  <hp@redhat.com>
3417
3418         * gutf8.c (g_utf8_validate): Add this function.
3419
3420 Sat Sep  9 18:50:42 2000  Owen Taylor  <otaylor@redhat.com>
3421
3422         * gstrfuncs.c (g_strescape): Add a missing g_return_if_fail().
3423
3424 Mon Aug 21 03:57:46 2000  Tim Janik  <timj@gtk.org>
3425
3426         * glib.h (G_BREAKPOINT): for non-i386 and non-alpha, or non gcc,
3427         implement BREAKPOINT() as raise (5 /* SIGTRAP */);
3428
3429         * glib.h: provide user-definable switch G_IMPLEMENT_INLINES,
3430         to turn on compilation of inline function implementations provided
3431         in header files with extern linkage.
3432         wrap inline function implementations into ifdef __G_UTILS_C__, so we
3433         really only compile them for gutils.c and not also into arbitrary user
3434         code that wants to make use of G_IMPLEMENT_INLINES.
3435         adjusted comment apropriately.
3436
3437         * gutils.c: to turn on compilation of inline functions, provide
3438         #define G_IMPLEMENT_INLINES 1 and #define __G_UTILS_C__.
3439
3440 2000-09-06  Havoc Pennington  <hp@redhat.com>
3441
3442         * gerror.c: docs
3443
3444         * docs/reference/glib/tmpl/error_reporting.sgml: docs
3445
3446 Wed Sep  6 10:28:34 2000  Owen Taylor  <otaylor@redhat.com>
3447
3448         * guniprop.c gunicode.h gutf8.c: Some inline docs fixes.
3449
3450 2000-09-06  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3451
3452         * glib.h, gtimer.c, tests/thread-test.c:
3453         s/G_MICROSEC/G_USEC_PER_SEC/
3454
3455         * glib.h: Removed G_G{U}{SHORT|INT|LONG}_FORMAT from glib.h, as
3456         they are really superfluous.
3457
3458 Tue Sep  5 20:16:27 2000  Owen Taylor  <otaylor@redhat.com>
3459
3460         * configure.in docs/Makefile.am: Add gtk-doc checks
3461         for newly added docs/reference/ subdir.
3462
3463 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3464
3465         * gthread.c (g_thread_error_quark): Don't use a G_LOCK, as it
3466         isn't necessary.
3467
3468 2000-09-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3469
3470         * gstring.c (g_string_free): Use g_return_val_if_fail instead of
3471         g_return_if_fail, as the function now is supposed to return
3472         something.
3473
3474         * gerror.c, gerror.h (g_propagte_error): Added function
3475         g_propagte_error to hand over local errors to the calling
3476         function.
3477
3478         * glib.h: Include gerror.h before it is used for some g_thread_*
3479         functions.
3480
3481         * gthread.c, gthreadpool.c, glib.h: Enable error reporting for
3482         thread creation, namely for g_thread_create, g_thread_pool_new,
3483         g_thread_pool_push and g_thread_pool_set_max_threads.
3484
3485         * tests/thread-test.c, tests/threadpool-test.c: Adapted
3486         accordingly.
3487
3488 2000-08-31  Tor Lillqvist  <tml@iki.fi>
3489
3490         * glib.h
3491         * glib.def
3492         * giowin32.c (g_io_channel_win32_make_pollfd): New function, to
3493         make a GPollFD from a GIOChannel. Creates the events and starts
3494         the reader thread if necessary.
3495
3496         * glib.h
3497         * giowin32.c (g_io_channel_win32_poll): No use for separate
3498         condition parameter.
3499
3500         * gmain.c (g_get_current_time): (Win32): Simplify, use
3501         GetSystemTimeAsFileTime().
3502
3503 2000-08-27  Tor Lillqvist  <tml@iki.fi>
3504
3505         * giowin32.c (g_io_channel_win32_poll): New function, otherwise
3506         like g_io_channel_win32_wait_for_condition(), but accept several
3507         GPollFDs.
3508         (g_io_channel_win32_wait_for_condition): Call
3509         g_io_channel_win32_poll().
3510
3511         * glib.h: Declare g_io_channel_win32_poll().
3512
3513         * gwin32.c (g_win32_error_message): Don't believe return value
3514         from FormatMessage.
3515
3516 2000-08-25 Elliot Lee <sopwith@redhat.com>
3517
3518         * glib.h, gunicode.h, gmodule/gmodule.h:
3519         Mark the following functions G_GNUC_CONST (to allow optimization)
3520         because their results are a function of only their parameters: 
3521         g_int_hash, g_int_equal, g_direct_hash, g_direct_equal,
3522         g_quark_to_string, g_date_is_leap_year, g_date_days_in_month,
3523         g_date_monday_weeks_in_year, g_date_sunday_weeks_in_year,
3524         g_spaced_primes_closest, g_unichar_is*, g_unichar_to*,
3525         g_unichar_*digit_value, g_unichar_type
3526
3527 2000-08-21 Elliot Lee <sopwith@redhat.com>
3528
3529         * gobject/Makefile.am, gobject/gobject-query.c,
3530         gobject/gparamspecs.c: Fix inclusion of config.h
3531
3532 Mon Aug 21 14:46:23 2000  Owen Taylor  <otaylor@redhat.com>
3533
3534         * tests/gio-test.c: Fix a couple of trivial bugs that
3535         were causing warnings.
3536
3537 Mon Aug 21 14:39:36 2000  Owen Taylor  <otaylor@redhat.com>
3538
3539         * glib.h: Use C99 varargs macros where possible 
3540         (check __STDC_VERSION__), otherwise, on gcc, use an alternate 
3541         form of gcc varargs which is more likely
3542         to be supported going forward. (Based on some code
3543         from Raja Harinath)
3544
3545 2000-08-17  Darin Adler  <darin@eazel.com>
3546
3547         * glib.h:
3548         * garray.c: (g_array_free), (g_ptr_array_free),
3549         (g_byte_array_free): Return the data left behind.
3550         * gstring.c: (g_string_free): Return the data left behind.
3551
3552         Changed the free calls that leave data behind so they
3553         return a pointer to the left-behind data, NULL if told not
3554         to leave anything behind. This makes these calls easier
3555         to use correctly, without any incompatible API change for
3556         callers that don't know about the return value. Of course,
3557         it would be even clearer if the free calls weren't dual-purpose
3558         in the first place.
3559
3560 2000-08-12  Tor Lillqvist  <tml@iki.fi>
3561
3562         * giowin32.c: Some indentation and spacing fixes. Add some more
3563         logging.
3564         (g_io_win32_add_watch): New function, with common code from
3565         g_io_win32_fd_add_watch and g_io_win32_sock_add_watch. Don't start
3566         more than one reader thread for a GIOChannel. We should obviously
3567         have just one reader thread reading a file descriptor or socket.
3568
3569 2000-08-10  Havoc Pennington  <hp@redhat.com>
3570
3571         * gthread-2.0.pc.in (Cflags): don't duplicate glib Cflags
3572
3573         * gmodule-2.0.pc.in (Cflags): don't duplicate glib Cflags
3574
3575         * gobject-2.0.pc.in (Cflags): don't duplicate Cflags from glib
3576         itself
3577
3578 2000-08-10  Havoc Pennington  <hp@redhat.com>
3579
3580         * glib-2.0.pc.in (Cflags): Look in glib-2.0/include for
3581         glibconfig.h
3582
3583 2000-08-07  Tor Lillqvist  <tml@iki.fi>
3584
3585         * tests/gio-test.c (shutdown_source): New function, that calls
3586         g_source_remove(). Check return value of g_source_remove(), and
3587         decrement running subprocess counter only if g_source_remove()
3588         actually did remove the source.
3589
3590         (recv_message): Call shutdown_source() on EOF condition. Return
3591         FALSE on G_IO_HUP and G_IO_ERR condition. Fix printf format typo.
3592
3593 Sun Aug  6 20:06:02 2000  Tim Janik  <timj@gtk.org>
3594
3595         * gmessages.c (g_log_domain_check_free): keep *last updated while
3596         running through the domain list, so we don't screw up the removal,
3597         patch provided by Gady Kozma <gadykozma@hotmail.com>.
3598
3599 Sun Aug  6 20:03:41 2000  Tim Janik  <timj@gtk.org>
3600
3601         * gmessages.c (g_log_remove_handler): keep *last updated while running
3602         through the handler list, so we don't screw up the removal.
3603
3604 Sun Jul 30 16:54:13 2000  Owen Taylor  <otaylor@redhat.com>
3605
3606         * gunicode.h: Fix stray character
3607
3608         * gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
3609         which case we just compute the length.
3610
3611 2000-07-31  Havoc Pennington  <hp@redhat.com>
3612
3613         * Makefile.am (EXTRA_DIST): forgot to add .pc.in to EXTRA_DIST
3614
3615 2000-07-31  Havoc Pennington  <hp@redhat.com>
3616
3617         * glib-2.0.pc.in, gobject-2.0.pc.in, gmodule-2.0.pc.in,
3618         gobject-2.0.pc.in: pkg-config data files         
3619
3620         * Makefile.am: Install/dist the .pc files
3621
3622         * configure.in: Output the .pc files
3623
3624 2000-07-31  Tor Lillqvist  <tml@iki.fi>
3625
3626         * giowin32.c (buffer_read): The code didn't compile (must
3627         have been sleepy when committing). "return" instead of "break"
3628
3629         (g_io_win32_fd_add_watch): Cannot check if the file descriptor is
3630         readable by calling ReadFile to read zero bytes. ReadFile blocks
3631         on NT even if trying to read nothing at all. So, don't check if
3632         file descriptor is readable; assume this function isn't called
3633         otherwise.
3634
3635 Sun Jul 30 10:44:16 2000  Tim Janik  <timj@gtk.org>
3636
3637         * gmain.c (g_get_current_time): fix tor's recent changes which
3638         got rid of a required variable in the non-windows path.
3639
3640 2000-07-30  Tor Lillqvist  <tml@iki.fi>
3641
3642         Finally, a new and improved IO Channel and condition watch
3643         implementation for Win32. Based on code provided by Craig Setera.
3644
3645         When watching file descriptors, for which there is no select()
3646         like functionality on Win32 that would work on all Win32 platforms
3647         for all types of file descriptors (including anonymous pipes), we
3648         start a new thread that blocks while trying to read from the file
3649         descriptor. When the read returns, a Win32 Event is signalled that
3650         the polling routine eventually notices. Meanwhile, the data being
3651         read is stored in a circular buffer, from where the IO channel's
3652         read() method picks it up.
3653
3654         If the buffer fills up the reading thread has to wait for space
3655         becoming available. For this another Win32 Event is used. The IO
3656         Channel's read() method signals this when it has read some data
3657         out of the buffer.
3658
3659         The separate reader thread(s), and the circular buffer(s) with
3660         associated events mean lots of possibilities for fun parallelism
3661         errors. But it seems to work OK, i.e. GIMP runs.
3662
3663         * gmain.c: Small changes to the Win32 polling function.
3664         (g_main_win32_get_poll_func): New function. Perhaps it would be a
3665         good idea to provide this on all platforms.
3666
3667         * giowin32.c: The bulk of the new implementation.
3668         (g_io_channel_win32_wait_for_condition): New function. To be used
3669         where on Unix one does a select() on the channel's fd, like
3670         libgimp's gimp_extension_process(). Could be provided on all
3671         platforms.
3672
3673         * glib.h: Update documentation for IO Channels on Win32. Remove
3674         the declarations for the as of now obsolete old functions related
3675         to IO Channels for pipes with "wakeup" messages.
3676
3677         * glib.def: Some new functions.
3678
3679         * tests/gio-test.c: New file, to test GIOChannel and main loop.
3680
3681         * tests/Makefile.am
3682         * tests/makefile.mingw.in: Add it.
3683
3684         (Later the same night:)
3685
3686         * giowin32.c: Compile in the debugging code all the time, but only
3687         output debug messages if told so. Add (unadvertised) function to
3688         turn on/off debug messages for a channel.
3689
3690         (buffer_read): Don't loop. It is expected behaviour to return a
3691         short read occasionally, for instance when reading from
3692         pipes. It's the calling code that should loop if it *knows* how
3693         much the writer has written.
3694
3695         * tests/gio-test.c: Correct the program's name in the output.
3696         (recv_message): Loop calling g_io_channel_read() (in a new
3697         function read_all()) until we have all the bytes we want (that we
3698         know the writer has written/will write).
3699
3700 Thu Jul 27 05:15:11 2000  Tim Janik  <timj@gtk.org>
3701
3702         * gstrfuncs.c (g_strlcpy, g_strlcat): completed tor's fix
3703         to cover both #ifdef branches.
3704
3705 2000-07-26  Tor Lillqvist  <tml@iki.fi>
3706
3707         * gstrfuncs.c (g_strlcpy, g_strlcat): Return 0 on error, not NULL.
3708
3709         * glib.def: Add g_strlcpy, g_strlcat.
3710
3711         * glibconfig.h.win32.in: Add gsize and gssize.
3712
3713 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
3714
3715         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
3716         updates the license headers to the GNU Lesser General Public License,
3717         as well as updating the copyright year to 2000.
3718
3719 Wed Jul 26 05:47:48 2000  Tim Janik  <timj@gtk.org>
3720
3721         * configure.in:
3722         * testglib.c:
3723         * gstrfuncs.c:
3724         * glib.h: added g_strlcat() and g_strlcpy() wrappers, supplied by
3725         David Wheeler <dwheeler@ida.org>:
3726
3727         * glib.h, gstrfuncs.c: added g_strlcpy and g_strlcat to support
3728           safe manipulation of fixed-length string buffers.
3729           These functions were originally developed by Todd Miller to simplify
3730           development of security-related programs, and
3731           are available on many (but not all) Unix-like systems,
3732           including OpenBSD, FreeBSD, and Solaris.  See
3733           ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
3734           and http://www.openbsd.org/security.html.
3735           If there's a strlcpy/strlcat on the system, it's called, otherwise
3736           an implementation is provided.
3737
3738         * testglib.c: Added tests for g_strlcpy, g_strlcat.
3739
3740 Wed Jul 26 05:03:24 2000  Tim Janik  <timj@gtk.org>
3741
3742         * acglib.m4 (GLIB_SIZEOF): include <stdlib.h> and <stddef.h> if
3743         STDC_HEADERS is defined.
3744
3745         * glib.h:
3746         * glibconfig.h: define gsize and gssize in terms of GLIB_SIZEOF_SIZE_T
3747
3748         * glib.h (g_return_if_reached): applied darin's fix for copy'n
3749         paste error in the macro implementation.
3750
3751 Wed Jul 26 00:46:03 2000  Tim Janik  <timj@gtk.org>
3752
3753         * glib.h: applied patch from Darin Adler <darin@eazel.com> which
3754         supplies g_return_if_reached(), g_return_val_if_reached() and
3755         g_critical().
3756
3757 2000-07-22  Tor Lillqvist  <tml@iki.fi>
3758
3759         * build-dll: Fix resource handling, the resource file got left out
3760         from the DLL after all... Remove the WIN32APIHEADERS, not needed
3761         with current windres.
3762
3763         * glib.def: Add new functions.
3764
3765 2000-07-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3766
3767         * gutils.c, glib.h: Mark the functions g_basename and g_dirname
3768         deprecated. They will issue an warning once, when compiled with
3769         G_ENABLE_DEBUG, but continue to work as before. Instead the
3770         functions g_path_get_basename and g_path_get_dirname should be
3771         used, which BOTH return newly allocated memory, that has to freed
3772         by g_free. The new g_path_get_basename now strips trailing slashes
3773         from the path. This fixes #5097. For discussion see
3774         http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
3775
3776         * gwin32.c, testglib.c, tests/dirname-test.c: Use the new
3777         functions instead of the old ones.
3778
3779         * ghash.c, gscanner.c, glib.h: Mark the functions
3780         g_hash_table_freeze, g_hash_table_thaw and thus
3781         g_scanner_freeze_symbol_table and g_scanner_thaw_symbol_table
3782         deprecated. They will issue an warning once, when compiled with
3783         G_ENABLE_DEBUG. This fixes Bug #3883. For discussion see
3784         http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
3785
3786 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3787
3788         * configure.in, glib.h: glibconfig.h and glib.h now include files
3789         outside of the extern "C" block. Makes some C++ compiler
3790         happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.
3791
3792 Sat Jul 15 23:49:03 2000  Owen Taylor  <otaylor@redhat.com>
3793
3794         * glib/glib.texi: Remove incomplete start of info file -
3795         real docs are in RDP.   
3796
3797 Sat Jul 15 22:44:22 2000  Owen Taylor  <otaylor@redhat.com>
3798
3799         * configure.in: Add build/Makefile and 
3800         build/win32/Makefile to AC_OUTPUT() so things build
3801         again.
3802
3803 Sat Jul 15 09:11:46 2000  Tim Janik  <timj@gtk.org>
3804
3805         * gstrfuncs.c (g_strncasecmp): fixed an off by 0 error (yeah,
3806         the function went off when the while (n--) loop failed due to
3807         n==0 ;), reported by Jean-Louis HAMEL <jlhamel@club-internet.fr>.
3808
3809 2000-07-15  Tor Lillqvist  <tml@iki.fi>
3810
3811         * Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
3812         to make it more self-contained. If your CVS client doesn't
3813         automatically get it, do a cvs get build in glib.
3814
3815         * */makefile.mingw.in: Include make.mingw from build in the glib
3816         source directory.
3817
3818 Fri Jul 14 16:26:35 2000  Owen Taylor  <otaylor@redhat.com>
3819
3820         * Release 1.3.1
3821
3822 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
3823
3824         * configure.in Makefile.am glib-config.m4 glib.m4: Move
3825         glib-config to glib-config-2.0 move glib.m4 to
3826         glib-2.0.m4
3827
3828         * Makefile.am gobject/Makefile.am gmodule/Makefile.am
3829         gthread/Makefile.am tests/Makefile.am: Change 
3830         library names to libglib-1.3.la, etc, so that we
3831         can distinguish glib-1.2 and glib-2.0 on the linkline.
3832
3833         * Makefile.am gobject/Makefile.am gmodule/Makefile.am:
3834         Move include files into /usr/include/glib-2.0.
3835
3836 Thu Jul  6 18:54:49 2000  Owen Taylor  <otaylor@redhat.com>
3837
3838         * docs/Makefile.am (EXTRA_DIST): Remove info files
3839         from the build.
3840
3841 2000-07-14  Tor Lillqvist  <tml@iki.fi>
3842
3843         * glib.def: Add g_error functions.
3844
3845         * makefile.mingw.in: Add gbacktrace.o.
3846
3847         * gbacktrace.c: No need to include <process.h>.
3848
3849 2000-07-12  Havoc Pennington  <hp@redhat.com>
3850
3851         * glib.h: #include <gerror.h>
3852
3853         * Makefile.am (include_HEADERS): Add gerror.h
3854         (libglib_la_SOURCES): Add gbacktrace.c
3855
3856         * gbacktrace.c: Move g_on_error_query() in here (moved on the 
3857         server, so history is preserved)
3858
3859         * gerror.h: GError interface
3860
3861         * gerror.c: GError implementation replaces stuff that's now in 
3862         gbacktrace.c
3863
3864 Sun Jul  9 21:20:45 2000  Owen Taylor  <otaylor@redhat.com>
3865
3866         * gunicode.h: Include stddef.h instead of stdlib.h
3867
3868 2000-07-08  Tor Lillqvist  <tml@iki.fi>
3869
3870         * glib.h (GLIB_VAR): Rename the GUTILS_C_VAR macro to GLIB_VAR.
3871
3872         * gunicode.h: Mark the g_utf8_skip array with GLIB_VAR.
3873
3874         * glib.def: Add two missing entry points.
3875
3876 Thu Jul  6 15:35:28 2000  Owen Taylor  <otaylor@redhat.com>
3877
3878         * Release 1.3.1
3879
3880         * Makefile.am (EXTRA_DIST): Dist fixes.
3881
3882         * configure.in: Moderate the warnings just a little bit.
3883
3884 2000-07-05  Tor Lillqvist  <tml@iki.fi>
3885
3886         * README.win32: Update.
3887
3888 Mon Jul  3 17:58:02 2000  Owen Taylor  <otaylor@redhat.com>
3889
3890         * gutf8.c (g_utf8_get_charset_internal): Fix up
3891         to correspond to configure.in checks.
3892
3893 Mon Jul  3 17:18:19 2000  Owen Taylor  <otaylor@redhat.com>
3894
3895         * glib.h: Comment g_get_codeset() out of the header file
3896         temporarily. (Very similar to g_get_charset(), need
3897         to resolve the two.)
3898
3899 2000-07-01  Tor Lillqvist  <tml@iki.fi>
3900
3901         * glib.def: Add new entry points.
3902
3903         * makefile.{mingw,msc}.in: Add the new Unicode object files.
3904
3905 Thu Jun 29 15:57:28 2000  Owen Taylor  <otaylor@redhat.com>
3906
3907         * NEWS: updated
3908
3909         * Makefile.am: added snapcheck target to go along with snapshot
3910
3911         * gstring.c glib.h (g_string_hash): Add g_string_hash to 
3912         go along with g_string_equal.
3913
3914 Tue Jun 27 12:40:23 EDT 2000  David A. Wheeler <dwheeler@dwheeler.com>
3915
3916         * glib.h: Added g_string_equal for comparing GStrings;
3917         changed g_str_equal so it returns gboolean (instead of gint).
3918
3919         * gstring.c: Modified GString implementation to support embedded
3920         ASCII NUL ('\0') characters, and implemented g_string_equal.
3921
3922         * testglib.c tests/string-test.c: Added tests for g_string_equal
3923         and tests for proper handling of embedded ASCII NUL characters.
3924
3925 Wed Jun 28 22:52:00 2000  Owen Taylor  <otaylor@redhat.com>
3926
3927         * Makefile.am (libglib_la_SOURCES): Fix
3928         gunichartable.h => gunichartables.h. (From Eric Limings)
3929
3930 Fri Jun 23 17:20:26 2000  Tim Janik  <timj@gtk.org>
3931
3932         * glib.h: define gstring in terms of gchar*. this typedef reflects
3933         the type name of the primitive G_TYPE_STRING in the gobject module.
3934
3935 Wed Jun 21 12:09:03 2000  Owen Taylor  <otaylor@redhat.com>
3936
3937         * gunicode.h gutf8.c guniprop.c gunidecomp.[ch] gunichartables.h
3938         Makefile.am glib.h: Initial pass at adding unicode support
3939         functions. A few things still need to be implemented, a bit
3940         of cleanup needs to be done, tests need to be added, and 
3941         the docs need to be finished, but this should allow replacing
3942         most or all use of libunicode.
3943
3944 2000-06-06  Tor Lillqvist  <tml@iki.fi>
3945
3946         * giowin32.c (g_io_channel_win32_pipe_readable): If we are
3947         watching the same pipe for different conditions (with different
3948         callbacks), check them all. Only call the callback for G_IO_IN
3949         from here. (This bug popped up when a watch for G_IO_ERR|G_IO_HUP
3950         was added to gimplib.)
3951
3952 2000-05-30  Tor Lillqvist  <tml@iki.fi>
3953
3954         * gutils.c (g_locale_get_codeset): Implement on Win32.
3955
3956         * glib.def: Add g_get_codeset.
3957
3958         * tests/Makefile.am (EXTRA_DIST): makefile.cygwin* has been
3959         renamed to makefile.mingw*.
3960
3961 Tue May 30 16:01:32 2000  Owen Taylor  <otaylor@redhat.com>
3962
3963         * glib.h gutils.c: Move the g_locale_get_codeset() up in the 
3964         header file to correspond to to comments about memory
3965         management. Rename to g_get_codeset() to avoid 
3966         polluting the g_locale_* namespace, which probably
3967         would have g_locale_get_codeset (GLocale *locale).
3968         Add a doc comment.
3969
3970 Mon May 29 14:10:35 2000  Owen Taylor  <otaylor@redhat.com>
3971
3972         * gutils.c (g_locale_get_codeset): Add function to get the 
3973         codeset name for the current locale.
3974
3975         * configure.in acconfig.h: Add check for nl_langinfo(CODESET);
3976
3977 Fri May 19 11:39:29 2000  Tim Janik  <timj@gtk.org>
3978
3979         * gutils.c (g_snprintf):
3980         (g_vsnprintf): added argument assertments.
3981
3982         * gstring.c (g_string_assign): added argument assertments.
3983         (g_string_truncate): make len a guint.
3984
3985 Fri May 19 09:00:44 2000  Tim Janik  <timj@gtk.org>
3986
3987         * gmem.c (g_free): fixed SIZEOF_LONG==4 assumption with
3988         ENABLE_MEM_CHECK, from Art Haas <ahaas@neosoft.com>.
3989
3990         * gslist.c (g_slist_reverse): shut up compiler.
3991
3992         * gscanner.c (g_scanner_get_token_ll): removed inline assignment.
3993
3994         * garray.c: remove index>=0 checks for unsigned indices.
3995
3996         * gmain.c (g_idle_prepare): timeout assignment fix.
3997
3998         * gtree.c (g_tree_node_rotate_right): shut up compiler.
3999
4000 2000-05-13  Tor Lillqvist  <tml@iki.fi>
4001
4002         * makefile.mingw.in
4003         * tests/makefile.mingw.in
4004         * build-dll: Rename makefile.cygwin(.in) to
4005         makefile.mingw(.in), which better describes what it is. Move the
4006         build of gmodule, gthread and gobject DLLs to makefiles in those
4007         directories. Move resource file handling and build number bump to
4008         build-dll, where it sits much cleaner.
4009
4010         * README.win32
4011         * Makefile.am (EXTRA_DIST): Update accordingly.
4012
4013         * glib.h: Add G_PI, G_PI_2, G_PI_4, G_E, G_LN2, G_LN10 and
4014         G_SQRT2. M_PI etc aren't necessarily in <math.h> in strict ISO C
4015         implementations.
4016
4017         * glib.def: Add g_strcanon.
4018
4019         * gtree.c (g_tree_node_rotate_left): Remove unused variables.
4020
4021         * gwin32.c (g_win32_opendir): Remove unneeded statement.
4022
4023 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
4024
4025         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
4026         broken and require an empty arg, give it to them.
4027
4028 Fri Apr 28 23:54:35 2000  Tim Janik  <timj@gtk.org>
4029
4030         * setup things for a new sub-library libgobject:
4031
4032         * Makefile.am (SUBDIRS): added gobject
4033
4034         * glib-config.in: feature -lgobject.
4035
4036         * configure.in (AC_OUTPUT): generate gobject/Makefile.
4037
4038         * glib.m4 (AM_PATH_GLIB): feature gobject module.
4039
4040         * glib.spec.in: added %{prefix}/lib/libgobject-1.3.so.*
4041
4042 Fri Apr 28 21:41:49 2000  Tim Janik  <timj@gtk.org>
4043
4044         * glib.h: added G_STRLOC macro.
4045         G_STRUCT_OFFSET(): signedness corrections.
4046         (G_CSET_DIGITS): list 0-9.
4047         * gscanner.c (g_scanner_config_template): use G_CSET_DIGITS.
4048
4049         * glib.h: 
4050         * gstrfuncs.c:
4051         (g_strdown):
4052         (g_strup):
4053         (g_strreverse): return the modified string instead of void, so
4054         calls to these functions can be nested.
4055         (g_strcanon): new function, canonicalizes string according to
4056         a given character set.
4057
4058 Fri Apr 28 19:45:16 2000  Tim Janik  <timj@gtk.org>
4059
4060         * gasyncqueue.c (g_async_queue_unref): get rid of an unused variable.
4061
4062 Wed May 10 19:52:44 2000  Owen Taylor  <otaylor@redhat.com>
4063
4064         * glib.m4: Print found version when test succeeds.
4065
4066 2000-05-04  Tor Lillqvist  <tml@iki.fi>
4067
4068         * makefile.cygwin.in
4069         * tests/makefile.cygwin.in: Include the common makefile snippet
4070         from ../build/win32.
4071
4072         Maybe CVSROOT/modules should be changed so that the 'build' module
4073         is included within the glib module (and gtk+, and gimp, and maybe
4074         others later), in the same way as the 'macros' module is included
4075         in lots of GNOME CVS modules?
4076
4077 2000-05-02  Tor Lillqvist  <tml@iki.fi>
4078
4079         * glib.def: Add new functions.
4080
4081         * makefile.{cygwin,msc}.in (glib_OBJECTS): Add new object files.
4082
4083         * tests/makefile.{cygwin,msc}.in: Add threadpool-test.
4084
4085 2000-04-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4086
4087         * gasyncqueue.c: New File implementing an asynchronous queue to be
4088         used for asynchronous inter-thread communication.
4089
4090         * gthreadpool.c: New File implementing a thread pool to be used
4091         for distributing work among several threads. 
4092
4093         * glib.h: Added the type and function declarations for these two
4094         types.
4095
4096         * tests/threadpool-test.c: New File implementing a test for the
4097         thread pool. This also checks the asynchronous queue underlying
4098         the thread pool.
4099
4100         * tests/Makefile.am: Changed accordingly.
4101
4102 2000-04-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4103
4104         * configure.in: Look for both pthread_create and pthread_join in
4105         the thread library. Some systems define one of them, but not both
4106         in libc. Arghh. Now we really start a thread and join it later and
4107         check, whether the thread to actually ran.
4108
4109         * glib.h, gcache.c, gtree.c: Changed the 'value' parameter of
4110         g_cache_remove from gpointer to gconstpointer. Dito for the 'key'
4111         parameter of g_tree_lookup and g_tree_remove and the 'data'
4112         parameter of g_tree_search. This function now takes a function of
4113         type GCompareFunc instead of GSearchFunc. This fixes Bug
4114         #8267. Thanks to Juan Toledo <toledo@users.sourceforge.net> for
4115         pointing that out.
4116
4117         * glib.h: Removed declaration of GSearchFunc.
4118
4119         * gmem.c: s/GSearchFunc/GCompareFunc/.
4120
4121 2000-04-19  Tor Lillqvist  <tml@iki.fi>
4122
4123         * glib.def: Update entry point list.
4124
4125 2000-04-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4126
4127         * glib.h (G_TRYLOCK): Made the debugging G_TRYLOCK call also work
4128         for compilers with funny G_STMT_(START|END) macros.
4129
4130         * tests/thread-test.c: Implemented a check for that.
4131
4132         * gutils.c (g_getenv): Changed the win32 part of this function to
4133         be thread safe and to make the returned environment string
4134         persistent to match the UN*X behavior. This is again a response to
4135         Bug #8983.
4136
4137         * glib.h (G_LOCK_NAME): Removed parentheses around the lock name,
4138         as that seems to cause problems for some compilers and really
4139         isn't necessary.
4140
4141 Wed Apr 19 08:32:32 2000  Tim Janik  <timj@gtk.org>
4142
4143         * gscanner.c (g_scanner_new): make sure that
4144         scanner->config->cset_skip_characters is "" instead of NULL, so we
4145         don't segfault further on.
4146
4147 2000-04-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4148
4149         * glib.h, glist.h, gslist.h: Changed the 'data' parameters from
4150         gpointer to gconstpointer for the functions
4151         g_(list|slist)_(remove|find|find_custom|index), as they do not
4152         change this parameter. This fixes bug #4836.
4153
4154         * glib.h: Changed comment for g_getenv to reflect, that the
4155         returned memory must not be freed. Fixes bug #8983.
4156
4157 2000-04-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4158
4159         * configure.in, acconfig.h: Add configure test for garbage
4160         collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY
4161         will be defined.
4162
4163         * garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c,
4164         gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all
4165         memory released by the user, but cached by GLib. This lets a
4166         garbage collector have a more correct view of the actually used
4167         memory.
4168
4169         * garray.c, glib.h: Added g_(array|ptr_array|byte_array)_sized_new
4170         functions, that reserve a certain amount of memeory for the array
4171         at creation time to avoid reallocation. Fixes bug #6707 from
4172         Charles Kerr <ckerr@osserver1.nssl.noaa.gov>.
4173
4174         * glib.h, gqueue.c, tests/queue-test.c (main): Renamed
4175         g_queue_create to g_queue_new in conformance to all other GLib
4176         data types.
4177
4178 2000-04-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4179
4180         * grand.c (g_rand_new): Fixed bug. Thanks to Marko Kreen
4181         <marko@l-t.ee> for reporting that.
4182
4183 2000-03-26  Tor Lillqvist  <tml@iki.fi>
4184
4185         * README.win32: Tell about using the mingw-based gcc, which is
4186         much easier than modifying the cygwin gcc to product mingw code
4187         for the msvcrt runtime.
4188
4189         * makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
4190         with a "pure" mingw gcc, too.
4191
4192 2000-03-24  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4193
4194         * garray.c: Made GArray behave correctly. Now zero_terminated
4195         really means, that the element array->data[array->len] exists and
4196         is zeroed, and clear means that any unassigned elements obtained
4197         through g_array_set_size (the only way to get unassigned elements
4198         AFAICT) are zeroed. Added some macros to make the code more
4199         obvoius. Also made GPtrArray zero elements after
4200         g_ptr_array_set_size. This is done in a portbale way (assignment
4201         of NULL instead of just memsetting it to zero), though that might
4202         be more portability than we actually want.
4203
4204         * Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
4205         tests/Makefile.am: Added various win32 related *.in files to
4206         EXTRA_DIST to let 'make distcheck' procude all the corresponding
4207         files, which it silently fails to do currently.
4208
4209 2000-03-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4210
4211         * configure.in: After finding the right thread library (containing
4212         e.g. pthread_create) we now search for the right realtime library
4213         (containing e.g. sched_get_priority_max). Makes the output of the
4214         thread related libraries correct. 
4215
4216         * gtimer.c (g_usleep): The current implementation of g_usleep
4217         (simply calling select) doesn't work reliable for multi-threaded
4218         programs on some platforms (bad omen for the main loop....), so I
4219         changed the implementation for thread-using programs to wait for a
4220         GCond for the specified amount of time (NB: sleep and usleep are
4221         not MT-safe in general, because they often use signals).
4222
4223 Wed Mar 22 16:49:57 2000  Owen Taylor  <otaylor@redhat.com>
4224
4225         * gmem.c (g_mem_chunk_area_compare): Fix indentation.
4226
4227 2000-03-22 Elliot Lee <sopwith@redhat.com>
4228
4229         * gmem.c (g_mem_chunk_area_compare): Fix 64-bitness bug in
4230         comparing two pointers more than 4G apart.
4231
4232 2000-03-22  Tor Lillqvist  <tml@iki.fi>
4233
4234         * gutils.c: Move Win32-only includes after inclusion of glib.h, so
4235         that G_OS_WIN32 is defined.
4236
4237         * glibconfig.h.win32.in: Add GSystemThread.
4238
4239 2000-03-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4240
4241         * gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
4242         <Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
4243         path length might not be enough for the HURD. So I changed the
4244         loop to at least avoid an integer overflow, which could happen at
4245         beyond 2GB size ;-)
4246
4247         * configure.in: Test for sched_yield as the native yield function
4248         first. Corrected typo g_thread_sleep -> g_usleep. Corrected
4249         message for the pthread_create test. Negative Priorities are
4250         allowed (and used on Solaris), so consider
4251         sched_get_priority_min failed only if it returns -1, not <0. Check
4252         for sched_get_priority_min also in -lrt, if not found in -lpthread
4253         alone and add -lrt to G_THREAD_LIBS then. Remove special case
4254         handling of priorities for older solaris versions and posix
4255         threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
4256         some of those changes.
4257
4258         * config.guess, config.sub, ltconfig, ltmain.sh:
4259         Upgrade to libtool 1.3.4.
4260
4261 2000-03-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4262
4263         * glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
4264         even when not needed by GLib. That's actually also the way, the
4265         GLib reference manual describes that macro. Therefore I had to
4266         remove the lonesome #include <glibconfig.h> in gutils.c, which
4267         doesn't seem to be needed there however. This change should make
4268         Ben Gertzfield <che@debian.org> happy.
4269
4270         * gutils.c: Furthermore two warnings in gutils.c were voided,
4271         which crept in due to my last change.
4272
4273         * gutils.c (g_get_current_dir): Allocate only up to 128KB for a
4274         pathname. While this is an arbitrary value just like 2048, it
4275         seems to be enough (after all, even 4GB is an arbitrary value).
4276
4277 2000-03-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4278
4279         * gmain.c (g_main_poll): Warn in case of an error during the call
4280         to poll(2). Closes Bug#7564 as reported by David Helder
4281         <dhelder@umich.edu>.
4282
4283         * gutils.c (g_get_current_dir): Make g_get_current_dir work on
4284         systems with unlimited pathname length like the HURD (It worked
4285         there before, but only for pathes shorter than 2048). Closes
4286         Bug#4525 as reported by Marcus Brinkmann
4287         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
4288
4289 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4290
4291         * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
4292         G_IO_ERROR_AGAIN.
4293
4294 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4295
4296         * configure.in: Added the missing POSIX_NO_YIELD and
4297         POSIX_NO_PRIORITIES warning messages.
4298
4299         * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
4300         real thread support. On solaris pthread_create can be linked to
4301         even in -lc, but it doesn't work then.
4302
4303         * configure.in: Don't use priorities for threads, when the
4304         minimal/maximal priorities couldn't be determined at configure
4305         time.
4306
4307         * configure.in, gthread.c: Always define GSystemThread in
4308         glibconfig.h to represent a system thread.
4309
4310         * configure.in: Do not use native recursive threads, when
4311         possibe. We use some features, that they do not expose (namely the
4312         depth counter).
4313
4314         * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
4315         now implemented in a different way, which should be way
4316         faster. Alsothere are now functions g_static_rec_mutex_unlock_full
4317         and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
4318         completly.
4319
4320         * gthread.c (g_thread_self): Do not test the system_thread to be
4321         non-zero to speed things up.
4322
4323         * gthread.c (g_mutex_init): Therefore set the system_thread of the
4324         main thread here.
4325
4326         * tests/thread-test.c: Rerun all tests once again, but this time
4327         we fool the system into thinking, that the available thread system
4328         is not native, but userprovided.
4329
4330 2000-03-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4331
4332         * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
4333         want the next and prev pointer of the inserted link to be NULL.
4334
4335 2000-03-06  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4336
4337         * configure.in: Another small change to the pthread_.. search
4338         pattern. Should work *now* for AIX.
4339
4340 2000-03-04  Tor Lillqvist  <tml@iki.fi>
4341
4342         * gwin32.c (g_win32_error_message): New function that returns the
4343         message string for a Win32 error code.
4344
4345         * glib.h: Declare it.
4346
4347         * glib.def: Export it, plus g_node_copy.
4348
4349 2000-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4350
4351         * configure.in: Make the search for pthread_attr_... prototypes
4352         find names at the start of a line also, like it is on AIX. Thanks
4353         to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
4354
4355 Wed Mar  1 10:39:39 2000  Tim Janik  <timj@gtk.org>
4356
4357         * gslist.c (g_slist_reverse): minor optimization.
4358
4359         * testglib.c (g_node_test): added a couple of tests for
4360         g_node_copy().
4361
4362         * glib.h:
4363         * gnode.c (g_node_copy): new function to copy subtrees,
4364         supplied by dbsears@ix.netcom.com.
4365         changed iterator to walk the children list backwards, so
4366         we get down from O(n^2) to O(n).
4367
4368         * gnode.c (g_node_first_sibling): applied patch from
4369         dbsears@ix.netcom.com to optimize access if node->parent
4370         is present.
4371
4372         * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
4373         assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
4374         thus breaks the original code.
4375
4376         * merged changes from 1.2.7.
4377
4378 Fri Jan 28 11:37:41 2000  Owen Taylor  <otaylor@redhat.com>
4379
4380         Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
4381
4382         * gtimer.c (g_timer_elapsed): Never report negative times -
4383         clip times to 0.
4384
4385         * gmain.c (g_timeout_prepare): Guard against unexpected
4386         clock shifts by never setting a timeout of more than
4387         data->interval msecs.
4388
4389 2000-02-27  Tor Lillqvist  <tml@iki.fi>
4390
4391         * glib.def: Add new functions.
4392
4393 2000-02-23  Tor Lillqvist  <tml@iki.fi>
4394
4395         * README.win32: Add a missing step to the setup instructions for
4396         gcc-2.95.2. Thanks to Arnaud Charlet.
4397
4398         * glib.def: Add missing entry point.
4399
4400 2000-02-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4401
4402         * configure.in: Changed GCC version test to also accept major
4403         versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
4404         pointing this out.
4405
4406 Thu Feb 17 12:53:44 2000  Tim Janik  <timj@gtk.org>
4407
4408         * gstring.c: changed g_str_hash() to a 31 bit version based on
4409         a submission by Karl Nelson and hand optimized ad absurdum by
4410         various people ;)
4411
4412         * gstring.c: applied patch from havoc for new gstring functions,
4413         added some more sanity checks, coding style fixups.
4414
4415 2000-02-13  Havoc Pennington  <hp@pobox.com>
4416
4417         * tests/string-test.c (main): Add tests for the new GString 
4418         features
4419
4420         * testglib.c (main): Add tests for the new GString features
4421
4422         * gstring.c (g_string_insert_len): New function; insert 
4423         a given length of string at a given position. 
4424         (g_string_append): reimplement in terms of g_string_insert_len
4425         (g_string_append_len): new function
4426         (g_string_insert_c): accept -1 for "pos" arg to mean "append"
4427         (g_string_append_c): reimplement in terms of g_string_insert_c
4428         (g_string_prepend): reimplement in terms of g_string_insert_len
4429         (g_string_prepend_len): new function
4430         (g_string_prepend_c): reimplement in terms of g_string_insert_c
4431         (g_string_insert): reimplement in terms of g_string_insert_len
4432
4433         * glib.h: Declare g_string_insert_len, g_string_append_len,
4434         g_string_prepend_len
4435
4436 Sun Feb 13 08:16:47 2000  Tim Janik  <timj@gtk.org>
4437
4438         * configure.in: wtf??? someone destroyed the configure.in, reverting to
4439         an older version from Feb 4 which apears to still work.
4440
4441 2000-02-07  Tor Lillqvist  <tml@iki.fi>
4442
4443         * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
4444
4445         * Makefile.am
4446         * gmodule/Makefile.am
4447         * gthread/Makefile.am: Change accordingly.
4448
4449         * makefile.cygwin: Corresponding changes, some cleanup.
4450
4451 2000-02-05  Tor Lillqvist  <tml@iki.fi>
4452
4453         * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
4454         version info in the DLLs on Win32.
4455
4456         * Makefile.am: Generate corresponding *.rc files and distribute
4457         them.
4458
4459         * makefile.cygwin.in: Add rules to automatically bump a "build
4460         number" in the version info in the rc files each time the DLL is
4461         built. But do this only for the person who releases binaries. If
4462         others build the DLLs, the build number is set to zero.
4463
4464 Fri Feb  4 19:36:05 2000  Tim Janik  <timj@gtk.org>
4465
4466         * glib.h: 
4467         * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
4468         and g_dataset_id_remove_no_notify() to avoid second lookup for common
4469         use.
4470
4471 2000-02-01  Tor Lillqvist  <tml@iki.fi>
4472
4473         * glib.h
4474         * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
4475         functions for conversion between UTF-8 and the encoding expected
4476         by C runtime functions like open() and stat(), and returned by
4477         readdir().
4478
4479         Implement them on Win32 where we use the system "ANSI" codepage,
4480         which might be single-byte or double-byte. On Unix, just skip the
4481         issue for now and provide dummy implementations that return a copy
4482         of the argument.
4483
4484         * README.win32
4485         * build-dll
4486         * glib.def: Minor updates.
4487
4488 Wed Jan 26 05:24:38 2000  Tim Janik  <timj@gtk.org>
4489
4490         * glib.h:
4491         * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
4492         refetch the current time after invocation of poll() to cover up for
4493         the time spent in that function call.
4494
4495 Fri Jan 21 10:18:24 2000  Owen Taylor  <otaylor@redhat.com>
4496
4497         * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
4498         the number of elements in an array.
4499
4500 Sun Jan  9 13:28:36 2000  Tim Janik  <timj@gtk.org>
4501
4502         * gstrfuncs.c (g_strtod): correctly fetch the current locale,
4503         fix from owen.
4504
4505 1999-12-16  Tor Lillqvist  <tml@iki.fi>
4506
4507         * gmodule/gmodule-win32.c: Use FormatMessage to translate system
4508         error codes into textual messages.
4509
4510 1999-11-25  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4511
4512         * glib.h (G_TRYLOCK): This of course should return TRUE in a
4513         program with a thread-disabled GLib.
4514
4515 1999-11-18  Tor Lillqvist  <tml@iki.fi>
4516
4517         * glib.def: g_strjoin was missing.
4518
4519 1999-11-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4520
4521         * acconfig.h, config.h.win32.in, configure.in: Renamed
4522         GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
4523         changed meaning.
4524
4525         * configure.in: Cope with systems, that have a pthread_t type,
4526         that is not a pointer. Hint from Karl Nelson
4527         <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
4528         for Solaris. Cope with systems, that have no default mutex
4529         initialize, like obviously most DCE systems.
4530
4531         * glib.h, gthread.c: Changed the prototype of thread_create and
4532         thread_self to return the system thread into provided memory
4533         instead of a return value. This is necessary, as HPUX has a
4534         pthread_t, that is bigger than the biggest integral type there.
4535
4536         * gthread.c: system_thread is no longer a pointer, but an memory
4537         area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
4538         zeroinitialization and the tests for zeroness accordingly.
4539
4540 1999-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4541
4542         * configure.in: Create docs/glib-config.1 from
4543         docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
4544
4545         * glib-config.1: Removed from CVS, as it is a generated file.
4546
4547 1999-11-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4548
4549         * configure.in: Make the test for getpwuid_r work on newer AIX
4550         versions, too. Still works on Solaris and Linux. Patch from Craig
4551         Rodrigues <rodrigc@mediaone.net>.
4552
4553 1999-11-08  Tor Lillqvist  <tml@iki.fi>
4554
4555         * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
4556         and LANG first. Some refinements to the sublanguage logic.
4557
4558 1999-11-04  Tor Lillqvist  <tml@iki.fi>
4559
4560         * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
4561         (preprocessed source) files.
4562
4563 1999-11-01  Tor Lillqvist  <tml@iki.fi>
4564
4565         * glib.h
4566         * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
4567         to match the GLib naming conventions.
4568
4569         * gutils.c
4570         * gwin32.c
4571         * testglib.c
4572         * Makefile.am: Move the Win32-only functions to the new
4573         file gwin32.c
4574
4575 1999-10-31  Tor Lillqvist  <tml@iki.fi>
4576
4577         * gutils.c (gwin_getlocale): New Win32-specific function, returns
4578         a Unixish current locale string (en, zh_TW etc).
4579
4580         * glib.h: Declare it.
4581
4582         * glib.def: Export it.
4583
4584         * testglib.c: Test it.
4585
4586         * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
4587         make sure we don't call AllocConsole several times, which I think
4588         has happened.
4589
4590 Sun Oct 31 18:55:01 1999  ape@spacetec.no  (Asbjorn Pettersen)
4591
4592         * gcache.c (g_cache_remove): Test if node is NULL.
4593         If not tested, GIMP's script-fu will crash. 
4594
4595 Sun Oct 17 18:11:40 1999  Tim Janik  <timj@gtk.org>
4596
4597         * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
4598         destroy() notification here as well.
4599
4600 1999-10-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4601
4602         * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
4603         is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
4604
4605 Tue Oct 12 14:17:12 1999  Tim Janik  <timj@gtk.org>
4606
4607         * glib.h: removed useless g_string(x) macro that cluttered the namespace
4608         and was just a poor wrapper around the cpp '#' symbol, use #x if you
4609         need to work around this.
4610         added new macro G_STRINGIFY(arg) that will convert arg to a string,
4611         no matter whether it contains macros or not.
4612
4613 1999-10-12  Tor Lillqvist  <tml@iki.fi>
4614
4615         * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
4616         too.
4617
4618         * glib.h: Small Win32 comments improvement.
4619
4620 Tue Oct 12 12:16:12 1999  Tim Janik  <timj@gtk.org>
4621
4622         * gmessages.c (g_printf_string_upper_bound): completly new
4623         implementation for printf string upper bounds calculation.
4624         we handle all glibc 2.1 format specifiers now, except for positional
4625         parameters (%nn$...) and wide char strings, plus some obscure upper
4626         case variants of the standard conversions. this fixes a lot of
4627         bugs in the old code, i.e.
4628         - NULL format strings
4629         - floats with exponents >+24
4630         - %G
4631         - precision specifications in general
4632         - negative field widths
4633         - %p for SIZEOF_VOID_P > 4 platforms
4634         we now issue warnigns in places where the old code would have
4635         caused buffer overruns anyways. warnings are suppressed when invoked
4636         from glogv(), to avoid infinite recursions if someone passes a log
4637         message that comes with really obscure format specifications.
4638
4639 Tue Oct 12 11:49:00 1999  Tim Janik  <timj@gtk.org>
4640
4641         * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
4642
4643 Tue Oct 12 03:34:40 1999  Tim Janik  <timj@gtk.org>
4644
4645         * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
4646         mantissa and exponent of IEEE floats and doubles (required by the new
4647         version of g_printf_string_upper_bound). the unions are endian specific,
4648         we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
4649         and doubles are supported (used for storage) by at least intel, ppc and
4650         sparc, reference:
4651         http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
4652
4653 Mon Oct 11 18:01:49 1999  Tim Janik  <timj@gtk.org>
4654
4655         * configure.in: added additional checks to figure sizes of size_t,
4656         ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
4657
4658 Wed Oct  6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
4659
4660         * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
4661
4662 1999-10-05  Tor Lillqvist  <tml@iki.fi>
4663
4664         * glib.h: (Win32) Drop the mapping of POSIX function names to the
4665         underscored versions, it's unnecessary after all. With MSVC we get
4666         them from oldnames.lib, with gcc-2.95 and mingw32 from
4667         -lmoldname-msvc. Add comment about what headers to include for
4668         prototypes.
4669
4670         * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
4671
4672         * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
4673
4674         * build-dll: Don't strip.
4675
4676         * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
4677
4678         * glib.def: Add g_thread_use_default_impl.
4679
4680 Sun Oct  3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
4681
4682         * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
4683
4684 Sun Oct  3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
4685
4686         * acconfig.h
4687         * configure.in
4688         * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
4689         and beos stuff right, but I haven't tested it. The respective
4690         porters should fix any screwups
4691
4692         * glib.h
4693         * gerror.c
4694         * gmain.c
4695         * gmessages.c
4696         * gscanner.c
4697         * gthread.c
4698         * gtimer.c
4699         * gutils.c
4700         * testglib.c: use G_OS stuff
4701
4702 Wed Sep 22 01:53:18 1999  Tim Janik  <timj@gtk.org>
4703
4704         * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
4705         avoid "ANSI C++ forbids implicit conversion from `void *' in argument
4706         passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
4707         for erroring out on this, instead of just issueing a warning).
4708
4709         * glib.h (g_trash_stack_pop): use uncasted NULL again.
4710
4711 Fri Sep 17 10:24:45 1999  Tim Janik  <timj@gtk.org>
4712
4713         * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied
4714         patch from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem
4715         chunk's area sizes to be a multitiple of atom_size, and to
4716         eliminate the MAX_MEM_AREA restriction of 65536 bytes. we also
4717         catch cases where users pass an area size < atom size with a
4718         return_if_fail statement now (which is ok, because previously this
4719         lead to memory corruption anyways).
4720
4721 Thu Sep 16 13:19:54 1999  Tim Janik  <timj@gtk.org>
4722
4723         * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
4724         pointer to cure ANSI C++ error.
4725
4726 Mon Sep 13 23:25:59 1999  Tim Janik  <timj@gtk.org>
4727
4728         * gmessages.c (g_logv): in case we have to abort the program,
4729         debugging is enabled and we are not called recursively, try
4730         to abort with raise (SIGTRAP) first, so developers may ignore
4731         certain failure conditions during debugging stage.
4732
4733 Thu Aug 26 15:09:36 1999  Tim Janik  <timj@gtk.org>
4734
4735         * Makefile.am:
4736         * gmodule/Makefile.am:
4737         * gthread/Makefile.am: added --export-dynamic so we can load dynmic
4738         modules, (required, according to the libtool 1.3.3 docu).
4739
4740 1999-07-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4741
4742         * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
4743         which /dev/random might do. Do not XOR the time, when getting the
4744         seed form /dev/urandom, as this is good itself. Prevent the
4745         initial seed from being zero, which causes the PRNG to produce
4746         only zeros. Hints from Colin Plumb <colin@pgp.com>.
4747
4748 1999-08-17  Tor Lillqvist  <tml@iki.fi>
4749
4750         * glib.h (g_trash_stack_push): Add a cast.
4751
4752         * gslist.c
4753         * glist.c: Make the inline functions static inline, and add
4754         separate extern wrappers. Not all compilers produce callable entry
4755         points for inline functions, even if gcc does.
4756
4757 Sun Aug 15 02:47:14 1999  Tim Janik  <timj@gtk.org>
4758
4759         * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
4760         has not neccessarily been included prior to glib.h.
4761
4762 Mon Aug  2 21:03:10 1999  Tim Janik  <timj@gtk.org>
4763
4764         * configure.in: added --enable-msg-prefix option.
4765
4766         * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
4767         if --enable-msg-prefix was selected (use "(process:%u): " if
4768         g_get_prgname () returns NULL, along the lines of g_on_error_query).
4769
4770 1999-08-03  Tor Lillqvist  <tml@iki.fi>
4771
4772         * glib.h
4773         * gstrfuncs.c
4774         * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
4775         g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
4776         destination parameter, always g_malloc a new string.  Fix bug in
4777         g_strcompress, octal digits were gobbled up without limit, should
4778         use max three.
4779
4780         Sources that use g_strescape must have ifdefs to be compilable
4781         both with GLib 1.2 and 1.3.
4782
4783 Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
4784
4785         * glib.h
4786         * gstrfuncs.c: the #define for g_strescape interfered with the
4787         compilation of the function, so just remove the function and
4788         note that it's deprecated in the header
4789
4790 1999-08-01  Tor Lillqvist  <tml@iki.fi>
4791
4792         * gstrfuncs.c (g_strccpy, g_strecpy): New functions.
4793
4794         * glib.h: Declare and document them. Define the deprecated
4795         g_strescape as a macro that calls g_strecpy.
4796
4797         * tests/strfunc-test.c (main): Test them.
4798
4799         * makefile.{cygwin,msc}.in
4800         * tests/makefile.{cygwin,msc}.in: Remove gstack and its test
4801         program.
4802
4803         * glib.def: Additions and removals.
4804
4805         * README.win32: Improve gcc build instructions.
4806
4807         * build-dll: Also build import library for MSVC.
4808
4809 Sat Jul 24 20:11:35 1999  Tim Janik  <timj@gtk.org>
4810
4811         * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
4812         * incorporated proposed cleanups from gtk-devel-list.
4813
4814         * bumped version number to GLib-1.3.1
4815
4816         * glib.h:
4817         * gqueue.c:
4818         * gstring.c:
4819         * glist.c:
4820         removed string tokenisation (we got g_strsplit() and g_strjoin()
4821         already) and readline functions.
4822         s/g_list_delete/g_list_delete_link.
4823         implemented g_slist_delete_link.
4824         removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
4825         macro, g_atexit() is provided for public consumption.
4826         added GTrashStack inline utility functions.
4827         reimplement double eneded queues.
4828         removed GStack implementation, people can use a queue or a (singly)
4829         linked list for this task.
4830         deprecated g_strescape(), we need the SunOS variants here.
4831
4832         * gdate.c: added DEBUG_MSG() macro to wrap old messages.
4833
4834         * *.*: CVS merges.
4835
4836         * upgrade to libtool 1.3.3.
4837
4838 1999-07-21  Tor Lillqvist  <tml@iki.fi>
4839
4840         Win32: With the latest gcc (2.95, pre-release), we can have binary
4841         compatibility with MSVC by using the switch -fnative-struct. No
4842         longer build DLLs with .gcc in the name when using gcc.
4843
4844         * README.win32: Renew gcc build instructions.
4845
4846         * build-dll: Comments change, handle also .a files.
4847
4848         * makefile.cygwin.in
4849         * tests/makefile.cygwin.in: Remove .gcc from DLL name.
4850
4851 1999-07-13  Tor Lillqvist  <tml@iki.fi>
4852
4853         * README.win32: Correct URL for mingw runtime sources.
4854
4855         * build-dll: Combine commands with &&.
4856
4857         * glib.h: Map also rmdir() and hypot() for MSVCRT library.
4858
4859         * makefile.cygwin.in
4860         * tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
4861         now called *.gcc.dll, to avoid binary incompatibilities with
4862         MSVC-compiled versions.
4863
4864         * makefile.msc.in: Cosmetics.
4865
4866 1999-07-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4867
4868         * configure.in: Test for pthread_join rather than for
4869         pthread_create to determine the right thread-lib. Makes it work on
4870         mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
4871         <javu@piano.ux.phys.jyu.fi>.
4872
4873 1999-07-02  Tor Lillqvist  <tml@iki.fi>
4874
4875         * README.win32: Note about need to fix another bug in the mingw32
4876         headers.
4877
4878         * makefile.msc.in: Debugging turned on via an nmake variable,
4879         no need to edit the makefile.
4880
4881 1999-07-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4882
4883         * configure.in, acconfig.h, gutils.c: Added a g_memmove
4884         replacement for platforms without memmove, where bcopy can't
4885         handle overlapping copies and the corresponding checks, which is
4886         taken form the PERL Configure routine.
4887
4888         * glib.h: Updated the commentary about g_memmove to be right and
4889         more GLib-like.
4890
4891         * configure.in: Removed test for rand_r, as it isn't used anymore.
4892
4893 1999-06-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4894
4895         * glib.h, grand.c: Finally removed the g_random_normal and
4896         g_rand_normal functions.
4897
4898 1999-06-28  Tor Lillqvist  <tml@iki.fi>
4899
4900         * glib.def: Add missing export of g_strncasecmp.
4901
4902 1999-06-21  Jose Mercado  <jmercado@mit.edu>
4903
4904         * glib.spec.in: Changed version number (1.1->1.3) in files section
4905         to allow rpm to build packages again.
4906
4907 1999-06-21  Tor Lillqvist  <tml@iki.fi>
4908
4909         * README.win32: Update the pthreads snapshot version we want.
4910         Advice how to hand-expand the makefile.*.in files.
4911
4912         * config.h.win32.in: Define values needed by Sebastian Wilhelmi's
4913         new thread stuff.
4914
4915         * glib.def: Add new functions.
4916
4917         * glibconfig.h.win32.in: Update the pthreads snapshot version.
4918         Fix typo.
4919
4920         * gthread.c: Include config.h, guard inclusion of unistd.h.  When
4921         using gcc on Win32, g_thread_functions_for_glib_use must be marked
4922         for export here, too.
4923
4924         * gtimer.c: Implement g_usleep on native Win32 using Sleep (which
4925         only has millisecond granularity, though).
4926
4927         * makefile.cygwin.in
4928         * makefile.msc.in: Update pthreads snapshot version. File
4929         name changes. Remove testgthread.
4930
4931         * tests/makefile.cygwin.in
4932         * tests/makefile.msc.in: Add thread-test. Link with gthread lib.
4933
4934 1999-06-18  Jeff Garzik  <jgarzik@pobox.com>
4935
4936         * tests/Makefile.am:  Re-order tests in alpha order.
4937
4938 1999-06-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4939
4940         * configure.in: Changed test for pthread_attr_setstacksize from
4941         AC_TRY_COMPILE to AC_TRY_LINK.
4942
4943 1999-06-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4944
4945         * configure.in, acglib.m4, acconfig.h, glib.h, gthread.c:
4946         Completed the thread support in GLib. Thread creation,
4947         prioritizing threads, yielding, joining threads as well as
4948         reader/writer locks and recursive mutexes are now in place. Please
4949         test heavily on your platform. It is so far tested on
4950         Linux/i386/pthreads, Solaris/Sparc/pthreads and
4951         Solaris/Sparc/solaristhreads.
4952
4953         * gtimer.c, glib.h: Implement g_usleep (gulong microseconds) for
4954         thread safe sleeping. (sleep() is not MT-safe at all!)
4955
4956         * gutils.c: Avoid compiler warning.
4957
4958         * tests/Makefile.am, tests/thread-test.c: New program to test some
4959         aspects of the thread implementation.
4960
4961         * gthread.c, Makefile.am: Renamed from gmutex.c to reflect the
4962         change of content.
4963
4964         * configure.in: Purged all appearances of nspr. 
4965
4966 Wed Jun  2 11:42:46 PDT 1999 Manish Singh <yosh@gimp.org>
4967
4968         * acinclude.m4
4969         * config.guess
4970         * config.status
4971         * ltconfig
4972         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
4973
4974 1999-05-29  Tor Lillqvist  <tml@iki.fi>
4975
4976         * gstrfuncs.c (g_strescape): Backslashify also '"' characters.
4977
4978         * glib.h: Document g_strescape.
4979
4980 1999-05-12  Tor Lillqvist  <tml@iki.fi>
4981
4982         * glib.h (Win32): Map fileno to _fileno for mingw32. Map fstat to
4983         _fstat.
4984
4985         * README.win32: Advice also to remove -lmoldname in the
4986         patch to the egcs-1.1.2 spec file.
4987
4988 Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4989
4990         * gmodule/Makefile.am: Another small fix.
4991
4992 1999-05-08  Tor Lillqvist  <tml@iki.fi>
4993
4994         * Makefile.am tests/Makefile.am: Correct rules for making the
4995         win32-related files that are made from corresponding .in files.
4996         Is there a cleaner way than explicitly writing rules that invoke
4997         config.status?
4998
4999 Fri Jul 16 22:18:36 PDT 1999 Manish Singh <yosh@gimp.org>
5000
5001         * ltconfig
5002         * ltmain.sh: upgrade to libtool 1.3.3
5003
5004 1999-06-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5005
5006         * gdate.c, gstrfuncs.c, gstring.c: Fixed the use of the
5007         is..... and to..... macros, which take unsigned chars, not chars!
5008         Thanks to Morten Welinder <terra@diku.dk> for pointing this out.
5009
5010 Thu Jun  3 16:30:31 PDT 1999 Manish Singh <yosh@gimp.org>
5011
5012         * gerror.c (g_on_error_query): check isatty() before querying so
5013         we don't loop endlessly
5014
5015 Sat May 29 11:16:29 PDT 1999 Manish Singh <yosh@gimp.org>
5016
5017         * acinclude.m4
5018         * config.guess
5019         * config.status
5020         * ltconfig
5021         * ltmain.sh: upgrade to libtool 1.3.2
5022
5023 1999-05-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5024
5025         * gmain.c: provide a poll prototype for SunOS, as they do not do
5026         it self. Hint from Christian Parg <cparg@fs-design.de>.
5027
5028 Tue May 25 12:23:07 1999  Owen Taylor  <otaylor@redhat.com>
5029
5030         * gstrfuncs.c (g_strchug): Use g_memmove() not memmove().
5031         (Reported by Charles Levert <charles@comm.polymtl.ca>)
5032
5033 Mon May 10 22:03:52 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5034
5035         * Released GLib 1.2.3
5036
5037 1999-05-08  Tor Lillqvist  <tml@iki.fi>
5038
5039         * Makefile.am tests/Makefile.am: Correct rules for making the
5040         win32-related files that are made from corresponding .in files.
5041         Is there a cleaner way than explicitly writing rules that invoke
5042         config.status?
5043
5044 Sat May  1 10:18:01 PDT 1999 Manish Singh <yosh@gimp.org>
5045
5046         * acinclude.m4
5047         * config.guess
5048         * config.status
5049         * ltconfig
5050         * ltmain.sh: upgrade to libtool 1.3
5051
5052 1999-04-30  Tor Lillqvist  <tml@iki.fi>
5053
5054         * Makefile.am: Don't distribute glibconfig.h.win32.in, but
5055         glibconfig.h.win32. Generate it when making a dist. Also generate
5056         makefile.msc and config.h.win32 from corresponding .in files when
5057         making dist.
5058
5059         * configure.in: Also substitute @GLIB_INTERFACE_AGE@ and
5060         @GLIB_BINARY_AGE@ (needed in config.h.win32).
5061
5062         * glibconfig.h.win32.in: Use static mutex structure and initial
5063         value corresponding to the 1999-04-07 snapshot of pthreads-win32.
5064
5065         * tests/Makefile.am: Distribute makefile.msc. Generate it when
5066         making dist.
5067
5068         * tests/makefile.msc.in: New file.
5069
5070         * tests/node-test.c: Include <stdlib.h> for exit().
5071
5072 Thu Apr 29 02:16:36 1999  Tim Janik  <timj@gtk.org>
5073
5074         * gstrfuncs.c: minor code cleanups.
5075
5076 Tue Apr 27 13:11:29 1999  Owen Taylor  <otaylor@redhat.com>
5077
5078         * gmain.c (g_main_poll): Mask out ERR HUP and NVAL from
5079         the events field so we don't give IRIX fits.
5080
5081 Tue Apr 20 08:42:22 1999  Tim Janik  <timj@gtk.org>
5082
5083         * gscanner.c (g_scanner_unexp_token): behave conservative with
5084         G_TOKEN_IDENTIFIER_NULL and always assume scanner->value.v_string
5085         to be "null" in that case.
5086
5087 1999-04-20  Havoc Pennington  <hp@pobox.com>
5088
5089         * gutils.c (g_vsnprintf):  When using the vsnprintf()
5090         implementation, '\0'-terminate the resulting string
5091         and return its length rather than -1.
5092
5093 Mon Apr 19 13:42:21 1999  Owen Taylor  <otaylor@redhat.com>
5094
5095         * gmain.c (g_main_iterate): Added missing
5096         #ifdef G_THREADS_ENABLED. (I never liked G_THREADS_ENABLED in
5097         the first place!)
5098
5099 1999-04-18  Havoc Pennington  <hp@pobox.com>
5100
5101         * gutils.c (g_snprintf): When using the vsnprintf()
5102         implementation, '\0'-terminate the resulting string
5103         and return its length rather than -1.
5104
5105 Fri Apr 16 06:52:07 1999  Tim Janik  <timj@gtk.org>
5106
5107         * gscanner.c (g_scanner_unexp_token): feature G_TOKEN_EOF as a valid
5108         expected token as well, so we get "- expected end of file" instead of
5109         "- expected (unknown) token <0>".
5110
5111 Tue Apr 13 16:16:14 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5112
5113         * Released GLib 1.2.2
5114
5115 1999-04-12  Elliot Lee  <sopwith@mh69.mh.cuc.edu>
5116
5117         * g_strchug(): s/strcpy/memmove/
5118
5119 1999-04-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5120
5121         * configure.in: Adjusted the test for an unimplemented
5122         getpwuid_r. Info from Michael Pruett <mikep@ugcs.caltech.edu>.
5123
5124 Sun Apr 11 15:07:34 1999  Tim Janik  <timj@gtk.org>
5125
5126         * configure.in: bumped versin number to GLib 1.2.2, interface 2,
5127         binary 2.
5128
5129         * NEWS: updates.
5130
5131 Sun Apr 11 14:37:06 1999  Tim Janik  <timj@gtk.org>
5132
5133         * gstrfuncs.c (g_strcasecmp): always check for s1, s2 != NULL.
5134
5135 Sat Apr 10 19:30:50 1999  Tim Janik  <timj@gtk.org>
5136
5137         * glib.h: removed braces around inline strings for the G_GNUC_FUNCTION
5138         and G_GNUC_PRETTY_FUNCTION macros, so the macros can be used for
5139         compile time string concatenation.
5140
5141 Thu Apr  8 19:53:19 1999  Owen Taylor  <otaylor@redhat.com>
5142
5143         * gmain.c (g_main_iterate): Check for two threads
5144         calling g_main_iterate at once.
5145
5146         * gmain.c: If the set of poll file descriptors changes
5147         during a call to poll(), abort that call, and start
5148         a new poll. My test program still segfaults
5149         obscurely on glibc 2.0 (in read()!!!), but now it works on
5150         glibc 2.1, so I'll blame something else for the other segfault.
5151
5152 1999-03-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5153
5154         * configure.in: Fixed slight bug, that made configure hang on some
5155         systems. Please do not merge this into 1.3 branch. It's taken care
5156         of differently there. Info from J. Rhett Aultman
5157         <cuplan@alley.gator.net>
5158
5159 Wed Mar 24 21:23:47 CST 1999 Shawn T. Amundson <amundson@gtk.org>
5160
5161         * Released GLib 1.2.1
5162
5163         * README:
5164           INSTALL: 
5165           NEWS: 
5166           sanity_check: updated
5167
5168         * glibconfig.h.win32.in:
5169           Makefile.am:
5170           docs/glib-config.1.in:
5171           docs/Makefile.am: Added files used to generate new files.
5172
5173         * glibconfig.h.win32:
5174           docs/glib-config.1: Removed, now generated.
5175
5176         * configure.in: Added to output now-generated files.
5177
5178 Tue Mar 23 13:43:39 PST 1999 Manish Singh <yosh@gimp.org>
5179
5180         * giounix.c: add user_data param to check and prepare functions
5181
5182 Mon Mar 22 03:54:43 1999  Tim Janik  <timj@gtk.org>
5183
5184         * glib.h:
5185         * gmain.c: add user_data to the GSource ->check and ->prepare
5186         functions, so it can be used to e.g. pass a GPollFd.
5187         (g_main_poll): only add poll records with an events mask != 0 to the
5188         fd_array. don't even bother calling poll_func() if fds=timeout=0.
5189         added debugging printouts around poll_func() invokation that can be
5190         enabled with #define G_MAIN_POLL_DEBUG.
5191
5192 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
5193
5194         * acinclude.m4
5195         * config.guess
5196         * config.sub
5197         * ltconfig
5198         * ltmain.sh: upgrade to libtool 1.2f
5199
5200         * autogen.sh: libtool is not required to autogen glib
5201
5202         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
5203         needed)
5204
5205 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5206
5207         * gmem.c: Fixed another stupid fault of mine: Did
5208         s/g_static_/g_private_/g
5209
5210 Wed Mar 17 03:17:42 1999  Tim Janik  <timj@gtk.org>
5211
5212         * configure.in bumped versin number to GLib 1.2.1, interface 1,
5213         binary 1.
5214
5215         * NEWS: updates.
5216
5217         * glib.h: added GLIB_CHECK_VERSION() macro similar to
5218         GTK_CHECK_VERSION().
5219
5220 Sun Mar 14 17:50:35 1999  Tim Janik  <timj@gtk.org>
5221
5222         * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
5223         to g_return_if_fail().
5224         (g_mem_profile): 
5225         (g_mem_chunk_print): 
5226         (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
5227         messages.
5228
5229         * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
5230         to g_return_if_fail().
5231         * grel.c (g_*): changed a bunch of g_assert() statements to
5232         g_return_if_fail() and added some extra ones to check relation != NULL.
5233
5234 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5235
5236         * configure.in: Also accept _Pctime_r instead of ctime_r, while
5237         seraching for the right `_REENTRANT' flag. This is for Digital
5238         UNIX 4.0d. Thanks to Sascha Brawer <sb@adasys.ch>.
5239
5240 Tue Mar  9 23:25:50 1999  Tim Janik  <timj@gtk.org>
5241
5242         * configure.in: check for working realloc (NULL,).
5243         * gmem.c (g_realloc): use malloc() for initial allocation on systems
5244         where realloc(NULL,) will not work (this is the case on SunOS, reported
5245         by Tom Geiger).
5246
5247 Mon Mar  8 07:42:08 1999  Tim Janik  <timj@gtk.org>
5248
5249         * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
5250         flag around the call to g_hook_free() to avoid spurious
5251         warnings (happens during destruction phase).
5252
5253 1999-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5254
5255         * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
5256         from config.h.win32 to glibconfig.h.win32
5257
5258         * acconfig.h, configure.in, config.h.win32: Added test for DCE
5259         versions of mutex_trylock and cond_timedwait. The win32 versions
5260         are posix, aren't they?
5261
5262 1999-03-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5263
5264         * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
5265         Friedrich Dominicus <Friedrich.Dominicus@inka.de>
5266
5267 1999-03-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5268
5269         * gutils.c (g_get_any_init): Fixed yet another bloody
5270         implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
5271         <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
5272         test better than that, but have no idea, how to do that easily.
5273
5274 Sun Feb 21 22:11:51 CST 1999  Shawn T. Amundson <amundson@gtk.org>
5275
5276         * Released GLib 1.2.0
5277
5278         * AUTHORS: updated
5279
5280 Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
5281
5282         * *.[ch]: inserted additional note to look for ChangeLog and
5283           AUTHORS file for a log of modifications.
5284
5285 Sun Feb 21 14:01:00 1999  Dr Mike <drmike@redhat.com>
5286
5287         * Made specfile generated, tweaked slightly
5288
5289 Sat May  8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5290
5291         * configure.in
5292           gmodule/Makefile.am
5293           gthread/Makefile.am: Better testing reveals better
5294           methods.  Fixes for BeOS.
5295
5296 Sat May  8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5297
5298         * configure.in
5299           gerror.c
5300           gmain.c
5301           gstrfuncs.c
5302           gutils.c
5303           ltconfig
5304           ltmain.sh
5305           gmodule/Makefile.am
5306           gmodule/gmodule.c
5307           gmodule/gmoduleconf.h.in
5308           gmodule/gmodule-beos.c
5309           gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
5310
5311 1999-05-06  Tor Lillqvist  <tml@iki.fi>
5312
5313         * makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
5314         config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
5315         New files, used to generate corresponding non-.in files when
5316         making a dist. This is just so the version numbers will be kept in
5317         synch automatically.
5318
5319         * configure.in: Also substitute @GLIB_MAJOR_VERSION@,
5320         @GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.
5321
5322         * Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.
5323
5324         * gerror.c (g_on_error_query): On Win32, put up a MessageBox and
5325         then exit.
5326
5327         * glib.def: Add a couple of functions.
5328
5329 Sat May  1 10:26:20 PDT 1999 Manish Singh <yosh@gimp.org>
5330
5331         * acinclude.m4
5332         * config.guess
5333         * config.status
5334         * ltconfig
5335         * ltmain.sh: upgrade to libtool 1.3
5336
5337 1999-04-25  Tor Lillqvist  <tml@iki.fi>
5338
5339         * README.win32: More editing.
5340         * build-dll: Use gcc, not ld to link.
5341         * glib.h: On native Win32 use _unlink().
5342         * gscanner.c: Use corrent NATIVE_WIN32 feature test macro,
5343         not _MSC_VER.
5344         * gstring.c: Include <io.h> on Win32 for _read prototype.
5345         * gutils.c: Remove old IO channel code (was in #if 0).
5346         * makefile.cygwin: Don't need to link with kernel32 and msvcrt
5347         explicitly, they are included anyway.
5348
5349 1999-04-24  Tor Lillqvist  <tml@iki.fi>
5350
5351         Support added for building using a GNU toolchain on Win32,
5352         i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).
5353
5354         * README.win32: Updated.
5355         * build-dll makefile.cygwin tests/makefile.cygwin: New files.
5356         * glib.h glib.def glibconfig.h.win32: Slight updates. 
5357         * gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
5358         * gmain.c gutils.c testglib.c tests/string-test.c: Test for
5359         NATIVE_WIN32, not _MSC_VER.
5360         * gmutex.c: Must declare g_thread_functions_for_glib_use as
5361         exported (using the GUTILS_C_VAR macro).
5362         * gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
5363         * gmodule/gmoduleconf.h.win32: Need underscore with gcc.
5364         * gthread/gthread.c: With gcc on Win32, must use memcpy to assign
5365         value of g_thread_functions_for_glib_use (?).
5366         * makefile.msc tests/makefile.msc: Cosmetics.
5367
5368 Fri Apr 23 14:29:25 BST 1999  Tony Gale <gale@gtk.org>
5369
5370         * glib.h: Fix typo in g_string_ncasecmp macro (by me).
5371           Add b_string_strncasecmp macro.
5372
5373 1999-04-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5374
5375         * gutils.c (g_get_any_init): use sysconf (_SC_GETPW_R_SIZE_MAX) as
5376         the new initinal bufsize for getpwuid_r on systems, that support
5377         this. Hint from Holger Duerer <H.Duerer@zait.uni-bremen.de>.
5378
5379 Sat Apr 17 20:55:13 BST 1999  Tony Gale <gale@gtk.org>
5380
5381         * glib.h, gstring.c: Add new g_string functions for reading
5382           from file/socket descriptors, and tokenising strings.
5383
5384           Added various g_string macros.
5385
5386 Tue Apr 13 23:28:32 1999  Tor Lillqvist  <tml@iki.fi>
5387
5388         * README.win32: Mention the tests directory.
5389
5390         * glib.def: Add the functions from grand.c.
5391
5392         * glibconfig.h.win32: Add unsigned max values, and the format
5393         strings.
5394
5395         * makefile.msc: Add grand.
5396
5397         * tests/{date-test,node-test}.c: Include <stdlib.h> for exit().
5398
5399         * tests/makefile.msc: New file.
5400
5401 1999-04-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5402
5403         * glib.h: Moved struct declaration up. Style fixes.
5404
5405         * grand.c: Style fixes. Only try to open /dev/random once.
5406
5407         * tests/rand-test.c (main): New tests; Slight bug fix. 
5408
5409 1999-04-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5410
5411         * grand.c, tests/rand-test.c: New files to implement the Mersenne
5412         Twister Pseudo Random Number Generator.
5413
5414         * glib.h, AUTHORS, Makefile.am, tests/Makefile.am: Changed
5415         accordingly.
5416
5417 Thu Apr  8 21:12:30 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5418
5419         * Released GLib 1.3.0
5420
5421 1999-03-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5422
5423         * configure.in: Added a check for the right format to printf and
5424         scanf long longs. It is %qi instead of %lli on FreeBSD for
5425         whatever reason.
5426
5427 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
5428
5429         * Makefile.am (glibconfig.h): Make sure `glibconfig.h' exists
5430         after the rule is fired.
5431         (install-exec-local): Install glibconfig.h only if the contents
5432         are different from the currently installed glibconfig.h.
5433
5434 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
5435
5436         * Makefile.am (configexecincludedir): Rename from 
5437         configincludedir so that glibconfig.h will be installed 
5438         as part of `make install-exec'. 
5439
5440 Thu Mar 25 22:45:47 1999  Tor Lillqvist  <tml@iki.fi>
5441
5442         * config.h.win32: Update version numbers.
5443
5444         * glibconfig.h.win32: Update version numbers and pthreads-win32-
5445         related magic values.
5446
5447         * README.win32: Some improvements.
5448
5449         * makefile.msc: Add gqueue and gstack. Correct version number.
5450
5451 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
5452
5453         * acinclude.m4
5454         * config.guess
5455         * config.sub
5456         * ltconfig
5457         * ltmain.sh: upgrade to libtool 1.2f
5458
5459         * autogen.sh: libtool is not required to autogen glib
5460
5461         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
5462         needed)
5463
5464 1999-03-18  Jeff Garzik  <jgarzik@pobox.com>
5465
5466         * glib.def: Add new g_list, g_stack, g_queue functions.
5467
5468 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5469
5470         * configure.in: added new AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
5471         to hold various defines to get the right thread implementation on
5472         different platforms. Also look in -ldce for pthread_create. Should
5473         make it work on HP-UX 10.x. Information from "D. Emilio Grimaldo
5474         Tunon" <emilio_tunon@nl.compuware.com>.
5475
5476 1999-03-17  Jeff Garzik  <jgarzik@pobox.com>
5477
5478         * gstack.c, gqueue.c:
5479         Add copyright, clean up code a bit.
5480
5481 1999-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5482
5483         * configure.in: Added missing values for G_MAXU(SHORT|INT|LONG) on
5484         platforms with only /usr/include/values.h.
5485
5486         * acconfig.h: Removed unnecessary macros.
5487
5488         * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
5489         from config.h.win32 to glibconfig.h.win32. Taken from glib 1.2
5490         branch.
5491
5492         * configure.in: Also accept _Pctime_r instead of ctime_r, while
5493         seraching for the right `_REENTRANT' flag. This is for Digital
5494         UNIX 4.0d. Taken from glib 1.2 branch.
5495
5496 Wed Mar 17 03:14:56 1999  Tim Janik  <timj@gtk.org>
5497
5498         * glib.h: added GLIB_CHECK_VERSION() macro similar to
5499         GTK_CHECK_VERSION().
5500
5501 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
5502
5503         * merges from glib-1-2:
5504
5505 Sun Mar 14 17:50:35 1999  Tim Janik  <timj@gtk.org>
5506
5507         * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
5508         to g_return_if_fail().
5509         (g_mem_profile):
5510         (g_mem_chunk_print):
5511         (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
5512         messages.
5513
5514         * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
5515         to g_return_if_fail().
5516         * grel.c (g_*): changed a bunch of g_assert() statements to
5517         g_return_if_fail() and added some extra ones to check relation != NULL.
5518
5519 Tue Mar  9 23:25:50 1999  Tim Janik  <timj@gtk.org>
5520
5521         * configure.in: check for working realloc (NULL,).
5522         * gmem.c (g_realloc): use malloc() for initial allocation on systems
5523         where realloc(NULL,) will not work (this is the case on SunOS, reported
5524         by Tom Geiger).
5525
5526 Mon Mar  8 07:42:08 1999  Tim Janik  <timj@gtk.org>
5527
5528         * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
5529         flag around the call to g_hook_free() to avoid spurious
5530         warnings (happens during destruction phase).
5531
5532 1999-03-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5533
5534         * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
5535         Friedrich Dominicus <Friedrich.Dominicus@inka.de>
5536
5537 1999-03-16  Timur Bakeyev  <mc@bat.ru>
5538
5539         * configure.in: Fix problem with pthread_create in libc, as running
5540         "gcc test.c -l " is not legal.
5541
5542 1999-03-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5543
5544         * tests/type-test.c: Added a test for the
5545         G_(U)?INT(16|32|64)_FORMAT and G_(MIN|MAX|MAXU)(SHORT|INT|LONG)
5546         macros.
5547
5548         * configure.in: Removed G_(U)?INT8_FORMAT again, as it can't be
5549         used for scanf.
5550
5551         * configure.in: Added the macros G_MAXU(SHORT|INT|LONG). I do not
5552         know how to handle these on platforms with /usr/include/values.h,
5553         but without /usr/include/limits.h. Please someone add this.
5554
5555
5556 1999-03-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5557
5558         * configure.in: Added the macros G_(U)?INT(8|16|32|64)_FORMAT to
5559         use for printf and (much more important) scanf format strings for
5560         the corresponding GLib types. 
5561
5562         * glib.h Added G_(U)?(SHORT|INT|LONG)_FORMAT for consistency. It
5563         however makes no sense to also provide G_(FLOAT|DOUBLE)_FORMAT, as
5564         they are different for printf (f for both) and scanf (f for float,
5565         lf for double). Defining G_INT_FORMAT makes sense however, as we
5566         might want to define gint to something different than int someday
5567         in the future. Idea from Sascha Brawer <sb@adasys.ch>.
5568
5569 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
5570
5571         * gdate.c:
5572         Commented out debugging output.
5573
5574         * tests/Makefile.am, tests/date-test.c:
5575         Added test of the GDate module, based closely on testgdate.c.
5576
5577         * tests/Makefile.am:
5578         Bugfix - compile tests with @GLIB_DEBUG_FLAGS@.
5579
5580 1999-03-14  Raja R Harinath  <harinath@cs.umn.edu>
5581
5582         * configure.in (glibconfig.h): Remove widechar tests and defines.
5583         (fd_set): Change the grep for `fd_mask' to search for `fd_set'.
5584         * gerror.c (fd_mask): Remove conditional typedef.  It is not used
5585         elsewhere in the file.
5586         * gmain.c (fd_mask): Likewise.
5587
5588 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5589
5590         * configure.in: Test for posix threads first, then for dce threads.
5591
5592 1999-03-11  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5593
5594         * configure.in: Revamped the thread configure stuff. Now dce
5595         threads (old posix draft) are recogniced. This is necessary,
5596         because dce threads are in fact working quite differently from
5597         posix threads. Also changed the conditions for checking for MT
5598         safe functions a bit, because G_THREADS_IMPL_NONE still have to
5599         compile thread safe. NOTE: Please do not commit my change to
5600         glib-1-2/{acconfig.h,configure.in,config.h.win32} from 1999-03-03,
5601         as the current change will take care of that too.
5602
5603 Tue Mar  9 14:37:32 1999  Jeff Garzik  <jgarzik@pobox.com>
5604
5605         * Makefile.am, glib.h, gstack.c, gqueue.c,
5606           tests/Makefile.am, tests/queue-test.c, tests/stack-test.c:
5607         Added stack, queue ADTs and related tests.
5608
5609         * glib.h, glist.c:
5610         New g_list_delete() function.
5611
5612 Sat Mar  6 11:03:08 1999  Asbjorn Pettersen  <ape@lrdpf.spacetec.no>
5613
5614         * gutils.c (g_get_any_init): add OS/2 changes.
5615         change '\\' in HOME to '/'.
5616
5617 1999-03-03  Josh MacDonald  <jmacd@spin.dsl.pacbell.net>
5618
5619         * glib.def: g_spaced_primes_closest was omitted here, so I
5620         couldn't build Xdelta on Windows.
5621
5622 1999-03-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5623
5624         * gutils.c (g_get_any_init): Fixed yet another bloody
5625         implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
5626         <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
5627         test better than that, but have no idea, how to do that easily.
5628
5629 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
5630
5631         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
5632         new one.
5633
5634         * configure.in: set glib version to 1.3.0.