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