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