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