1 2004-10-31 Matthias Clasen <mclasen@redhat.com>
3 * glib/gwin32.c: Add bits of markup to g_win32_get_windows_version()
6 2004-10-31 Tor Lillqvist <tml@iki.fi>
8 * glib/gwin32.c: Document g_win32_get_windows_version().
10 * glib/gstdio.[ch]: Add g_lstat().
12 2004-10-29 Matthias Clasen <mclasen@redhat.com>
14 * glib/goption.c: Doc additions.
16 * glib/goption.c (parse_arg): Convert filenames to UTF-8 on
19 2004-10-29 Hans Breuer <hans@breuer.org>
21 * glibconfig.h */makefile.msc.in : updated [and finally fixed my
22 script to produce ready to go de-in(ed) files, w/o autotools]
24 * */*.rc.in : updated copyrights to 2004
26 * glib/gutils.c : some CSIDL_* defines lacking from older SDK;
27 use the same fallback mecahnism as on *NIX where ever applicable
29 2004-10-29 Matthias Clasen <mclasen@redhat.com>
31 * tests/option-test.c: Add tests for the handling of
32 non-option arguments, "--" and G_OPTION_REMAINING.
34 * glib/goption.[hc]: #define G_OPTION_REMAINING, which is
35 a special long option name, which can be used for an option
36 in the main group which collects the non-option arguments.
37 It must be of type G_OPTION_ARG_STRING_ARRAY or
38 G_OPTION_ARG_FILENAME_ARRAY. If the main group doesn't contain
39 an option whose name is G_OPTION_REMAINING, the non-option
40 arguments are left behind in argv as before.
42 * glib/goption.c: Add documentation.
44 2004-10-28 Matthias Clasen <mclasen@redhat.com>
46 * glib/gmessages.h: Mark g_assert_warning as G_GNUC_NORETURN,
47 to avoid compiler warnings. (#156767, Owen Taylor)
49 2004-10-29 Tor Lillqvist <tml@iki.fi>
51 * glib/gstdio.c: Include also <direct.h> for mkdir() prototype
52 with MSVC. [156727, Kazuki IWAMOTO]
54 * glib/giochannel.h (g_io_channel_new_file): Redefine also
55 g_io_channel_new_file to the UTF-8 version on Win32. [156725,
58 2004-10-28 Ray Strode <rstrode@redhat.com>
61 (find_file_in_data_dirs): clean up a leak (#156652,
63 (g_key_file_load_from_fd): propagate fstat() error
64 conditions and retry read on EAGAIN (#156647, Morten
65 Welinder). Return error if file is NOT regular, not if
66 it is regular (bug introduced from last commited bug
68 (g_key_file_load_from_data_dirs): allocate enough space
69 for the terminating NULL.
71 2004-10-28 Ray Strode <rstrode@redhat.com>
73 * glib/gkeyfile.c: Don't use S_ISREG macro (#156728,
76 2004-10-28 Matthias Clasen <mclasen@redhat.com>
78 * glib/gstdio.c: Include galias.h before glib.h (#156697,
81 * glib/gkeyfile.c: Add a missing "Since: 2.6" comment.
83 2004-10-28 Tor Lillqvist <tml@iki.fi>
85 * glib/gstdio.c: Include glib.h early to get G_OS_WIN32. Include
88 * glib/gkeyfile.c: Include gstdio.h and use g_open().
90 2004-10-27 Ray Strode <rstrode@redhat.com>
93 (g_key_file_load_from_fd),
94 (g_key_file_load_from_file):
95 Move file is regular check to load_from_file to use
96 fstat() instead of race prone g_file_test(). Don't
97 clear/init until needed. Change error messages to be
99 (g_key_file_load_from_data),
100 (g_key_file_load_from_data_dirs),
101 (g_key_file_parse_data),
102 (g_key_file_get_value),
103 (g_key_file_get_string),
104 (g_key_file_set_string),
105 (g_key_file_get_string_list),
106 (g_key_file_set_string_list),
107 (g_key_file_set_locale_string),
108 (g_key_file_get_locale_string),
109 (g_key_file_set_locale_string_list),
110 (g_key_file_get_boolean),
111 (g_key_file_set_boolean),
112 (g_key_file_get_boolean_list),
113 (g_key_file_set_boolean_list),
114 (g_key_file_get_integer),
115 (g_key_file_get_integer_list),
116 (g_key_file_set_integer_list),
117 (g_key_file_remove_key):
118 Add more g_return_*if_fail checks for public functions.
120 2004-10-27 Matthias Clasen <mclasen@redhat.com>
122 * configure.in: Bump version.
124 * === Released 2.5.4 ===
126 2004-10-27 Matthias Clasen <mclasen@redhat.com>
128 * glib/abicheck.sh: Strip Win32 specific defs file syntax.
132 2004-10-27 Matthias Clasen <mclasen@redhat.com>
134 Introduce the idea of a filename encoding, which is
135 *literally* the filename encoding on Unix. On windows,
136 use the Unicode name converted to UTF-8. (#101792,
137 Tor Lillqvist, Owen Taylor)
140 * glib/gconvert.[hc]:
141 * glib/gfileutils.[hc]:
143 * glib/giowin32.c: On Windows, keep old ABI versions
144 of GLib pathname api for DLL ABI stability. Use different
145 names for the new-style UTF-8 versions. Hide this through
148 * glib/gstdio.[hc]: New files containing wrappers for
151 * glib/glib.symbols: Add new symbols.
153 * glib/makegalias.pl: Drop Win32 specific .def syntax,
156 2004-10-27 Matthias Clasen <mclasen@redhat.com>
158 * glib/gkeyfile.c: Fix includes. (#156500, #156499,
161 * glib/Makefile.am (galias.h): Fix srcdir != builddir
162 builds. (#156447, Thomas Fitzsimmons)
164 2004-10-26 Gora Mohanty <gmohanty@cvs.gnome.org>
166 * configure.in: Added 'or' to ALL_LINGUAS.
168 2004-10-26 Matthias Clasen <mclasen@redhat.com>
170 * glib/gkeyfile.c: Include galias.h.
172 * glib/gkeyfile.c (g_key_file_parse_value_as_comment):
173 Don't compare strings and chars.
175 * glib/glib.symbols: Add new symbols.
177 * glib/gkeyfile.c (g_key_file_new): Fix docs.
179 * glib/gkeyfile.h: Use the same parameter names as in
180 the implementation and the docs.
182 * glib/gwin32.c (g_win32_get_windows_version): Make this
183 function thread-safe in the GLib style.
184 * glib/gthreadinit.h:
185 * glib/gwin32.c (_g_win32_thread_init): New function to
186 initialize the version.
187 * glib/gthread.c (g_thread_init_glib): Call
188 _g_win32_thread_init() from here.
190 2004-10-26 Ray Strode <rstrode@redhat.com>
192 * glib/gkeyfile.c: Add Matthias to "Written by" lines
193 (GKeyFileGroup): add field to hold comments about groups
194 (g_key_file_load_from_fd): return TRUE on success and
195 FALSE on failure. Don't close fd's opened by other
197 (g_key_file_load_from_file): run FILE_IS_REGULAR test
198 before trying to open file, to save an fd from being
199 leaked (would probably be better to use fstat()). Close
200 fd when done with it. Return TRUE on success and FALSE
202 (g_key_file_load_from_data): Return TRUE on success and
204 (g_key_file_load_from_data_dirs): remove superfluous
205 const modifier. Return TRUE on success and FALSE on
206 failure. Stop trying to load files when one succeeds.
207 (g_key_file_parse_key_value_pair): don't validate input
208 for UTF-8 until users uses a getter that does
209 validation. Don't leak copy of start_group_name.
210 (g_key_file_to_data): serialize new comment field for
212 (g_key_file_get_keys): Remove convenience code to let
213 NULL group mean start group. Get rid of unneeded NULL
214 check before g_strdup.
215 (g_key_file_get_groups): Reverse groups list before
216 sending to user because it is maintained in backward
218 (g_key_file_get_value),
219 (g_key_file_set_value): add g_return checks at top of
221 (g_key_file_get_string),
222 (g_key_file_get_string_list): validate key value is UTF-8.
223 (g_key_file_[sg]et_*comment): new functions for
224 setting/getting comments
225 (g_key_file_remove_comment): new function to remove
227 (g_key_file_remove_key_value_pair_node): new function to
228 pull a key-value pair out of the list and free it.
229 (g_key_file_remove_group_node): call
230 g_key_file_remove_key_value_pair_node instead of
231 freeing the list immediately to get better statistics
232 for approximate_size.
233 (g_key_file_remove_group): use lookup_group_node instead
234 of lookup_group to prevent a g_list_find call.
235 (g_key_file_add_key): report group also when unable to
237 (g_key_file_lookup_group_node): new function to make
238 getting the group node from a group name easier.
239 (g_key_file_lookup_group): use lookup_group_node under
241 (g_key_file_lookup_key_value_pair_node): new function to
242 make getting the key-value pair from a group and key
244 (g_key_file_parse_comment_as_value): new function to add '#' to the
245 beginning of every line.
246 (g_key_file_parse_value_as_comment): new function that
247 attempts to be the inverse of comment as value.
249 2004-10-26 Matthias Clasen <mclasen@redhat.com>
252 * glib/gkeyfile.c: Don't include ctype.h needlessly. (#156424,
255 * tests/strtod-test.c (test_string): Improve error reporting.
257 Mon Oct 25 15:05:18 2004 Manish Singh <yosh@gimp.org>
259 * autogen.sh: rm autom4te.cache, since it might interfere with
260 differing autoconf versions.
262 * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
265 * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
266 don't redefine it here.
268 2004-10-24 Matthias Clasen <mclasen@redhat.com>
270 * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
271 destroy the lookup map if it is NULL.
273 2004-10-23 Matthias Clasen <mclasen@redhat.com>
275 * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c,
276 glib/giochannel.c, glib/gmain.c, glib/gspawn.c,
277 glib/libcharset/localcharset.c: Apply a patch to fix
278 sparse warnings. (#154696, Kjartan Maraas)
280 * glib/gnulib/g-gnulib.h: Undef libc functions before defining
281 them, since they may also be macros. (#155177, Andrea Campi)
284 * glib/gkeyfile.c: Add a parser for desktop entries and
285 similar files with a .ini-like syntax. (#139974, Ray Strode)
287 * glib/glib.h: Include gkeyfile.h
289 * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
290 (glibsubinclude_HEADERS): Add gkeyfile.h
292 * glib/gutils.c (_g_compute_locale_variants): Make this
293 non-static and use it in gkeyfile.c
295 2004-10-22 Matthias Clasen <mclasen@redhat.com>
297 * tests/uri-test.c (run_uri_list_tests): Add some
301 * glib/gconvert.c (g_uri_list_extract_uris): New function to
302 split a text/uri-list data into individual uris and strip comments.
304 2004-10-20 Matthias Clasen <mclasen@redhat.com>
306 * glib/goption.c (get_change): Don't return the wrong
307 change. (#155856, Lucas Rocha)
309 2004-10-17 Matthias Clasen <mclasen@redhat.com>
311 * glib/gutils.h (G_IS_DIR_SEPARATOR):
312 * glib/gutils.c: Make public. (#155589, Tim-Philipp MĆ¼ller)
314 2004-10-08 Matthias Clasen <mclasen@redhat.com>
316 * glib/gmain.c (g_child_watch_add_full):
317 * glib/gmain.c (g_child_watch_add): Document that GLib supports only
318 a single callback per pid. (#154828, Gustavo Carneiro)
320 2004-10-06 Matthias Clasen <mclasen@redhat.com>
322 * glib/gfileutils.c: Fix some C99isms. (#154676, Kjartan Maraas)
324 2004-10-05 Anders Carlsson <andersca@gnome.org>
326 * glib/goption.c: (g_option_context_parse):
327 Add check for if argc is 0.
329 * tests/option-test.c: (empty_test3), (main):
332 2004-10-05 Matthias Clasen <mclasen@redhat.com>
336 2004-10-04 Matthias Clasen <mclasen@redhat.com>
338 * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
339 vtable is set. (#154352, Philippe Blain)
341 2004-10-03 Anders Carlsson <andersca@gnome.org>
343 * glib/goption.c: (parse_arg):
344 Set arg_data on filenames. (Discovered by Mats-Ola Persson).
346 * tests/option-test.c: (arg_test3), (ignore_test3), (main):
347 Add test for filename args.
349 2004-10-01 Tor Lillqvist <tml@iki.fi>
351 * glib/goption.c (g_option_context_parse): Use
352 g_path_get_basename() instead of strrchr(), so that either slash
353 is accepted on Windows.
355 2004-09-30 Matthias Clasen <mclasen@redhat.com>
357 * glib/gfileutils.c: Convert filenames to UTF-8 before
358 putting them in GErrors. (#154078, Morten Welinder)
360 2004-09-29 Matthias Clasen <mclasen@redhat.com>
362 * glib/glib.symbols: Add g_assert_warning.
365 * glib/gmessages.c (g_assert_warning): Treat g_assert
366 in the same way as g_return_if_fail and move the string
367 constants into a helper function, which also takes
368 care of removing the "IA__" prefix from internal aliases.
370 * glib/gmessages.h: Move the declaration of
371 g_return_if_fail_warning() out of the ifdefs, so that
372 building with G_DISABLE_ASSERT works.
374 2004-09-27 Murray Cumming <murrayc@murrayc.com>
376 * glib/goptions.[h|c], glib/glib.symbols: Rename
377 g_context_option_error_quark() to g_option_error_quark(), because that
378 is consistent with normal naming conventions, and what bindings expect.
380 .2004-09-26 Matthias Clasen <mclasen@redhat.com>
382 Fix #153649, Hidetaka Iwai:
384 * glib/goption.c (parse_long_option): Don't forget to set parsed
385 to TRUE when parsing a long ARG_NONE option.
386 (free_changes_list): Fix the memory management for string
389 2004-09-22 Tor Lillqvist <tml@iki.fi>
391 * glib/gmessages.c: [Win32] Don't ever open a console
392 window. (Which we used to do if standard output or standard error
393 are invalid, as they are for GUI applications.) These console
394 windows that open up unexpectedly have caused endless amounts of
395 confusion among end-users. (#141102, #151175)
397 Don't output the process id on Windows. Only output the program
398 name. If not set with g_set_prgname(), fetch the application
399 executable's name and use that.
401 Mon Sep 20 00:35:14 2004 Matthias Clasen <maclas@gmx.de>
403 * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
404 convert UTF-16 byte stream of ambiguous endianness. (#152954,
407 Mon Sep 20 00:17:37 2004 Matthias Clasen <maclas@gmx.de>
409 * tests/option-test.c (error_test3_post_parse):
410 * tests/option-test.c (error_test2_post_parse):
411 * tests/option-test.c (error_test1_post_parse): Don't call
412 g_set_error () with a NULL format. (#153103, Robert Ćgren)
414 Mon Sep 20 00:13:48 2004 Matthias Clasen <maclas@gmx.de>
416 Make GOption remove long options completely. (#153113, Robert Ćgren)
418 * glib/goption.c (parse_long_option): Fix a wrong index.
420 * tests/option-test.c (ignore_test3): Test handling of unknown
423 Sun Sep 19 23:56:15 2004 Matthias Clasen <maclas@gmx.de>
425 * glib/goption.c (g_option_context_parse): Call error_func
426 on error, not post_parse_func again. (#153107, Robert Ćgren)
428 Sun Sep 19 23:52:35 2004 Matthias Clasen <maclas@gmx.de>
430 * glib/gmessages.c (mklevel_prefix):
431 * glib/gmessages.c (g_logv): Fix the types of some variables
432 to be GLogLevelFlags instead of guint. (#153042, Philippe Blain)
434 2004-09-18 Matthias Clasen <mclasen@redhat.com>
438 * === Released 2.5.3 ===
440 2004-09-17 Matthias Clasen <mclasen@redhat.com>
442 * NEWS: More updates.
444 Thu Sep 16 18:42:46 2004 Manish Singh <yosh@gimp.org>
446 * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
449 Thu Sep 16 18:15:32 2004 Manish Singh <yosh@gimp.org>
451 * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
452 of characters, instead of a gsize. Technically this is incorrect,
453 but this makes it match the prototype, and this is a deprecated
456 2004-09-16 Matthias Clasen <mclasen@redhat.com>
458 * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
460 Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
462 Implement the same PLT reduction technique used in GTK+:
464 * glib/glib.symbols: Master list of symbols
466 * glib/makegalias.pl: Perl script which creates galias.h
468 * glib/abicheck.sh: Compares actual exports against glib.symbols
470 * glib/glib.def: Removed. This file is now generated from
473 * glib/Makefile.am: Add rules to generate galias.h and glib.def,
474 and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
476 * configure.in: Add --disable-visibility to suppress the
477 use of ELF visibility attributes.
479 * glib/*.c: Include galias.h
481 2004-09-15 Tor Lillqvist <tml@iki.fi>
483 * glib/gwin32.c (g_win32_error_message): Convert message to
484 UTF-8. Technically this breaks API, but the actual use cases in
485 gdk/win32 have assumed it is UTF-8 anyway. Fix
486 documentation. (#152618, Kazuki Iwamoto)
488 * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
489 good idea, and it clashes with newest mingw headers, which have a
490 ftruncate implementation as an inline function. Thanks to Dominik R.
492 * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
493 call _chsize() in the C library.
495 2004-09-15 Matthias Clasen <mclasen@redhat.com>
499 2004-09-09 Matthias Clasen <mclasen@redhat.com>
501 * glib/gmessages.c (g_return_if_fail_warning): Strip the
502 prefix "IA__" from function names, since that is what
503 GTK+ uses for the PLT-reduction aliases.
505 Thu Sep 9 13:52:26 2004 Owen Taylor <otaylor@redhat.com>
507 * glib/gmessages.c (g_return_if_fail_warning):
508 Include implementation of g_return_if_fail_internal().
510 Thu Sep 9 10:37:41 2004 Owen Taylor <otaylor@redhat.com>
512 * glib/gmessages.h (g_return_[val_]if_fail): Use
513 a helper function to reduce code size; omit FILE/LINE
514 when we have __PRETTY_FUNCTION__.
516 2004-09-09 Matthias Clasen <mclasen@redhat.com>
518 * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
520 Thu Sep 9 00:10:40 2004 Matthias Clasen <maclas@gmx.de>
523 * glib/gstrfuncs.c (g_strv_length): Add a function to
524 calculate the length of a NULL-terminated string
525 array. (#150455, Tim-Philipp MĆ¼ller)
527 * tests/strfunc-test.c (main): Add a test for g_strv_length().
529 2004-09-08 Tor Lillqvist <tml@iki.fi>
531 * glib/gutils.c (guess_category_value): On Win32, as last resort
532 call g_win32_getlocale() to get the current thread locale. There
533 usually aren't any POSIXish LANG or LC_* environment variables
534 present on Windows machines.
536 * glib/glib.def: Add g_get_language_names.
538 2004-09-07 Matthias Clasen <mclasen@redhat.com>
541 * glib/gutils.c (g_get_language_names): Add a function to
542 return a list of applicable locale names. (#95587,
544 (guess_category_value, compute_locale_variants):
545 (explode_locale, unalias_lang, read_aliases): Helper
546 functions for g_get_language_names()
548 * tests/testglib.c (main): Show the results of
549 g_get_language_names()
551 Sun Sep 5 01:46:11 2004 Matthias Clasen <maclas@gmx.de>
555 * glib/gmessages.c (g_log_set_default_handler): New
556 function to install an alternate default log
557 handler. (#66387, Darin Adler)
559 2004-09-03 Tor Lillqvist <tml@iki.fi>
561 * glib/glib.def: Update.
563 Wed Sep 1 20:22:39 2004 Matthias Clasen <maclas@gmx.de>
566 * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
567 a function to calculate the ISO 8601 week number of
568 a date. (#92579, Niklas Lundell)
570 2004-09-01 Anders Carlsson <andersca@gnome.org>
572 * glib/goption.c: (g_option_context_parse):
573 Set program name before calling the pre-parse hooks.
575 2004-09-01 Anders Carlsson <andersca@gnome.org>
577 * glib/goption.c: (g_option_context_free), (print_help),
578 (g_option_context_parse):
579 Handle option contexts without a main group.
581 * tests/option-test.c: (empty_test2), (main):
582 Add test case for that.
584 2004-08-30 Anders Carlsson <andersca@gnome.org>
586 * glib/goption.c: (g_option_context_parse):
587 Set prgname to <unknown> if argc and argv are NULL.
589 * tests/option-test.c: (empty_test1), (main):
590 Add test case for that.
592 Sun Aug 29 23:58:38 2004 Matthias Clasen <maclas@gmx.de>
594 * glib/ghash.c (g_hash_table_lookup): Point to
595 g_hash_table_lookup_extended() for differentiation between
596 not-found and value-is-NULL. (#150960, Morten Welinder)
598 2004-08-27 Matthias Clasen <mclasen@redhat.com>
600 Fix #151193, Stepan Kasal:
602 * glib/gfileutils.c (g_file_error_from_errno):
603 * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
605 Fri Aug 27 00:45:41 2004 Matthias Clasen <maclas@gmx.de>
607 * glib/goption.c (g_option_context_parse): Set the program name
608 from argv[0], noticed by Masatake YAMATO.
610 2004-08-26 Tor Lillqvist <tml@iki.fi>
612 * tests/testglib.c (main): Test the new XDG basedir functions.
614 2004-08-25 Tor Lillqvist <tml@iki.fi>
616 * glib/gwin32.c (g_win32_get_windows_version): New
617 function. Returns the Windows version code like GetVersion(),
618 except that one can pretend to be running on Win9x by setting the
619 G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
622 * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED
623 and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
625 2004-08-25 Matthias Clasen <mclasen@redhat.com>
627 * configure.in: Post-release version bump.
629 * === Released 2.5.2 ===
631 Wed Aug 25 00:25:08 2004 Matthias Clasen <maclas@gmx.de>
633 * NEWS: Update for 2.5.2
635 2004-08-25 Tor Lillqvist <tml@iki.fi>
637 Win32 equivalences of the XDG folders
639 * glib/gutils.c (get_special_folder): New function, calls
640 SHGetSpecialFolderLocation() to get path to places like the My
642 (g_get_any_init): Use CSIDL_PROFILE as HOME if not
643 overridden by env vars.
644 (g_get_user_data_dir): Use CSIDL_PERSONAL.
645 (g_get_user_config_dir): Use CSIDL_APPDATA.
646 (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
647 (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
648 CSIDL_COMMON_DOCUMENTS.
649 (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
651 * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
653 * glib/glib.def: Add the new functions.
655 Mon Aug 23 16:16:35 2004 Manish Singh <yosh@gimp.org>
657 * glib/goption.c (g_option_group_add_entries): remove unused
660 Mon Aug 23 01:35:18 2004 Matthias Clasen <maclas@gmx.de>
662 * glib/gutils.c (g_get_user_cache_dir):
663 * glib/gutils.c (g_get_user_config_dir):
664 * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
665 while holding the g_utils_global lock, simply use g_home_dir.
666 (#150695, Jody Goldberg)
668 2004-08-21 Tor Lillqvist <tml@iki.fi>
670 * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
671 break out of its loop. Prevents a thread leak. (#147392, Peter
674 * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
675 return value from strxfrm(). For instance Microsoft's strxfrm()
676 returns INT_MAX on errors. (#141124)
678 2004-08-19 Tor Lillqvist <tml@iki.fi>
680 * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
681 source and destination charset parameter order in g_convert()
682 call. (#150394, possibly also #141124)
684 2004-08-20 Jon K Hellan <hellan@acm.org>
686 * glib/goption.h: Remove trailing commas.
688 2004-08-17 Matthias Clasen <mclasen@redhat.com>
690 * configure.in: Check for all four values of the
691 visibility attribute; gcc 2.96 seems to miss
692 "default". (#150379, Vincent Noel)
694 2004-08-16 Christian Rose <menthos@menthos.com>
696 * configure.in: Added "bs" to ALL_LINGUAS.
698 2004-08-11 Ray Strode <rstrode@redhat.com>
700 * docs/reference/glib/glib-sections.txt:
701 * glib/gutils.[ch] (g_get_user_data_dir),
702 (g_get_user_config_dir), (g_get_user_cache_dir),
703 (g_get_system_data_dirs), (g_get_system_config_dirs):
704 Add new XDG basedir API (bug 139973).
706 2004-08-10 Matthias Clasen <mclasen@redhat.com>
708 * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
709 * configure.in: Check whether the visibility attribute
710 works and define G_HAVE_GNUC_VISIBILITY and
711 G_GNUC_INTERNAL in glibconfig.h correspondingly.
713 Mon Aug 9 17:37:56 2004 Matthias Clasen <maclas@gmx.de>
715 * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
717 2004-08-06 Hans Breuer <hans@breuer.org>
719 * glib/makefile.msc.in glib/glib.def : updated
721 * glib/gutils.c : avoid 'inconsitent dll linkage' by not
722 defining extern char** environ with msvc
724 2004-08-06 Matthias Clasen <mclasen@redhat.com>
726 * m4macros/glib-gettext.m4: Require ngettext. (#123847,
729 Thu Aug 5 20:53:00 2004 Ray Strode <rstrode@redhat.com>
731 * glib/gutils.h (g_get_codeset): strdup result so caller
732 doesn't free internally managed memory.
734 2004-08-04 Tor Lillqvist <tml@iki.fi>
736 * glib/glib.def: Add glib_check_version.
738 * config.h.win32.in: Update to match what configure produces. Add
739 the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
740 HAVE_INT64_AND_I64 to where the configure script puts it. Add
741 HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
743 Tue Aug 3 16:19:44 2004 Matthias Clasen <maclas@gmx.de>
745 * glib/goption.c: Mark user visible strings for translation.
747 Tue Aug 3 15:50:55 2004 Matthias Clasen <maclas@gmx.de>
749 * glib/goption.[hc]: Pedantically use g types throughout.
751 Tue Aug 3 14:58:20 2004 Matthias Clasen <maclas@gmx.de>
754 * glib/gutils.c (glib_check_version): New function to
755 check the version of GLib at runtime. (#149175, Michael Natterer)
757 2004-08-03 Anders Carlsson <andersca@gnome.org>
761 Move GTranslateFunc to gtypes.h
763 2004-08-02 Anders Carlsson <andersca@gnome.org>
771 * tests/option-test.c:
774 2004-08-02 Matthias Clasen <mclasen@redhat.com>
776 * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
777 declarations as internal and avoid PLT indirections for
778 them. (#145465, Arjan van de Ven)
780 * glib/gunicodeprivate.h:
781 * glib/gthreadinit.h:
784 * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
785 _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
786 _g_messages_thread_init(), _g_convert_thread_init(),
787 _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
788 _g_mem_thread_private_init(), _g_messages_thread_private_init(),
789 _g_utf8_normalize_wc() and _g_unichar_combining_class().
791 * glib/gatomic.c: Include gthreadinit.h here to see the declaration
792 for _g_atomic_thread_init().
794 Sun Aug 1 13:19:18 2004 Manish Singh <yosh@gimp.org>
796 * tests/uri-test.c: move newline printing from run_from_uri_tests()
797 to run_roundtrip_tests().
799 2004-08-01 Matthias Clasen <mclasen@redhat.com>
801 * Post-release version bump
803 * === Released 2.5.1 ===
805 Sat Jul 31 23:17:05 2004 Matthias Clasen <maclas@gmx.de>
809 Sat Jul 31 20:33:07 2004 Matthias Clasen <maclas@gmx.de>
811 * tests/shell-test.c: Include a test involving consecutive
812 backslashes followed by a non-escaped doublequote.
814 * glib/gshell.c (tokenize_command_line): Count consecutive
815 backslashes mod 2 to detect escaped doubleqotes. (#127306)
817 2004-07-30 Matthias Clasen <mclasen@redhat.com>
819 * glib/gconvert.c (g_unescape_uri_string): Don't validate
820 for UTF-8 here. (#148420, Robert Ćgren)
822 * tests/uri-test.c (run_roundtrip_tests): Add tests for
823 roundtrip compatibility. Going from filename to uri and
824 back should always give you the same filename back.
826 2004-07-28 Matthias Clasen <mclasen@redhat.com>
828 * tests/markups/valid-{9,10,11}.gmarkup:
829 * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
830 of whitespace inside tags.
832 * glib/gmarkup.c (enum GMarkupParseState): Add
833 STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
834 (g_markup_parse_context_parse): Accept whitespace between
835 attribute names, '=' and attribute values and between
836 close tag name and '>'. (#148646, Hiroyuki Ikezoe)
838 Tue Jul 27 02:01:31 2004 Matthias Clasen <maclas@gmx.de>
840 * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
843 Sat Jul 24 17:50:07 2004 Soeren Sandmann <sandmann@daimi.au.dk>
845 * glib/gstrfuncs.c (g_strsplit_set):
846 s/g_strtokenize/g_strsplit_set/ in docs.
848 Fri Jul 23 10:37:50 2004 Matthias Clasen <maclas@gmx.de>
850 * tests/type-test.c (main): Actually test G_MAXSIZE with
853 2004-07-21 Matthias Clasen <mclasen@redhat.com>
855 Fix #132858, Sven Neumann, patch by James Henstridge:
857 * glib-gettextize.in: modify so that mkinstalldirs will
858 get installed into auxdir.
860 * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
862 2004-07-21 Matthias Clasen <mclasen@redhat.com>
864 Fix #147651, reported by Oliver Guntermann:
866 * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
867 _g_gnulib_vasprintf() in a macro, since they behave
868 differently wrt. to memory allocation.
870 * glib/gprintf.c (g_vasprintf): Instead, differentiate
871 here between the three cases: system vasprintf(),
872 _g_gnulib_vasprintf(), no vasprintf().
874 2004-07-20 Crispin Flowerday <gnome@flowerday.cx>
876 * NEWS: Fix a typo in my name
878 Tue Jul 20 04:31:40 2004 Soeren Sandmann <sandmann@daimi.au.dk>
880 * configure.in: Bump version number
882 Sun Jul 18 19:40:30 2004 Soeren Sandmann <sandmann@daimi.au.dk>
884 * === Released 2.5.0 ===
886 * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
888 Sun Jul 18 01:40:28 2004 Matthias Clasen <maclas@gmx.de>
890 * NEWS: Updates for 2.5.0
892 Mon Jul 12 00:02:40 2004 Matthias Clasen <maclas@gmx.de>
894 * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
896 2004-07-09 Matthias Clasen <mclasen@redhat.com>
898 * glib/gdir.c (g_dir_open): Convert filename to UTF-8
899 before using it in the error message. (#146054, Federico
902 Thu Jul 8 00:54:32 2004 Matthias Clasen <maclas@gmx.de>
904 * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
905 be built without anyway. (#135899, Murray Cumming)
907 Mon Jul 5 18:50:27 2004 Matthias Clasen <maclas@gmx.de>
909 * glib/gmessages.h (g_debug): Complete the g_log()
910 family. (#135730, Sven Herzberg)
912 Mon Jul 5 18:42:30 2004 Matthias Clasen <maclas@gmx.de>
914 * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to
915 make srcdir != . work. (#145166, Kaz Sasayama)
917 Sun Jul 4 01:52:18 2004 Matthias Clasen <maclas@gmx.de>
919 * configure.in: Use a small test library instead of
920 libpthread.so for testing RTLD_GLOBAL brokenness. (#139567,
921 Julio M. Merino Vidal)
923 2004-07-02 Sebastian Wilhelmi <seppi@seppi.de>
925 * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
926 __volatile__ to make the file consistent. Spotted by Benoit
927 Carpentier <gtkool_2kx@yahoo.fr>.
929 2004-07-01 John Ehresman <jpe@wingide.com>
931 * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
932 Initialize reset_send & reset_recv fields and don't close
933 sockets unless they were created. (#145153)
935 Fri Jun 11 22:56:46 2004 Matthias Clasen <maclas@gmx.de>
937 * glib/gscanner.c (g_scanner_get_token_ll): Ignore a
938 missing newline at EOF for single line comments.
939 (#83674, Sven Neumann)
941 Thu Jun 10 23:38:02 2004 Matthias Clasen <maclas@gmx.de>
943 * tests/printf-test.c (TEST): Actually set any_failed on
944 failure. (#143552, Philippe Blain)
946 2004-06-09 Federico Mena Quintero <federico@ximian.com>
948 * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
949 for URIs that *should* have been invalid, or viceversa.
950 (from_uri_tests): Likewise.
952 2004-06-07 Federico Mena Quintero <federico@ximian.com>
956 * glib/gconvert.c (is_asciialphanum): Renamed from
957 is_escalphanum(); ensures that this is an ASCII character.
958 (is_asciiescalpha): Renamed from is_escalpha().
959 (hostname_validate): Use the two functions above.
960 (g_filename_to_uri): Don't convert the filename to UTF-8.
961 (g_filename_from_uri): Don't convert the filename from UTF-8.
963 Mon Jun 7 22:25:24 2004 Matthias Clasen <maclas@gmx.de>
965 * tests/run-markup-tests.sh: Default to silence, but support
966 a -v argument to get the old output back.
968 2004-06-06 Tor Lillqvist <tml@iki.fi>
970 * glib/gutils.c (g_get_any_init): Check home for being
971 NULL. (#143812, Ivan Wong)
973 Sun Jun 6 15:23:00 2004 Pawan Chitrakr <pawan@nplinu.org>
975 * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
977 Fri Jun 4 19:26:47 2004 Manish Singh <yosh@gimp.org>
979 * glib/galloca.h: cpp #directives should always have the "#" in the
980 first column of the the line. Do that for "#pragma alloca". Fixes
983 Wed Jun 2 00:57:16 2004 Matthias Clasen <maclas@gmx.de>
985 * glib/gtypes.h: Use higher precision for the mathematical
986 constants. (#141941, Morten Welinder)
988 Tue Jun 1 22:01:40 2004 Matthias Clasen <maclas@gmx.de>
990 * glib/gmarkup.c (advance_char): Fix an off-by-one error
991 in g_markup_parse_context_parse(). (#142794, Morten Welinder)
993 Sun May 16 23:23:29 2004 Matthias Clasen <maclas@gmx.de>
997 * glib/gcompletion.c (g_completion_add_items):
998 (g_completion_remove_items): Remove unnecessary
999 checks. (#142559, Morten Welinder)
1001 2004-05-15 Tor Lillqvist <tml@iki.fi>
1003 * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
1004 is an absolute path and exists. (#138618)
1006 2004-05-14 Tor Lillqvist <tml@iki.fi>
1008 * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
1009 for precision correctly. (#142400)
1011 For backward compatibility with the Trio implementation, make "ll"
1012 format modifer work on Win32, too. Change into "I64" before
1013 passing to the system printf. (#142433)
1015 * tests/printf-test.c (main): Add tests for the above.
1017 2004-05-10 Matthias Clasen <mclasen@redhat.com>
1021 * glib/gmain.c (block_source, unblock_source): Make these
1022 static. (#142230, Morten Welinder)
1024 2004-05-10 Tor Lillqvist <tml@iki.fi>
1026 * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
1027 lines. Thanks to BenoƮt Carpentier.
1029 Sun May 9 02:04:14 2004 Matthias Clasen <maclas@gmx.de>
1033 * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
1034 memleak. (#141998, Nikolai Weibull)
1036 Sat May 8 23:02:26 2004 Matthias Clasen <maclas@gmx.de>
1040 * glib/gutils.h: Remove vestigial g_get_codeset().
1041 * glib/gutils.c (g_get_codeset): Call g_get_charset().
1042 (#137703, Owen Taylor)
1044 2004-05-06 Matthias Clasen <mclasen@redhat.com>
1046 * configure.in: Bump version number to 2.5.0.
1048 Wed May 5 23:35:44 2004 Matthias Clasen <maclas@gmx.de>
1050 * glib/gconvert.c (g_filename_from_uri): Quote the file
1051 scheme to mark it as untranslatable. String change.
1052 (#133144, Danilo Segan)
1054 2004-05-03 Pablo Saratxaga <pablo@mandrakesoft.com>
1056 * configure.in: Added Walloon (wa) to ALL_LINGUAS
1058 Sun May 2 03:51:59 2004 Manish Singh <yosh@gimp.org>
1060 * glib/gtypes.h: check for __pentium4__ when deciding whether to
1061 use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
1063 2004-05-01 Hans Breuer <hans@breuer.org>
1065 * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
1066 fixes #141563, Steve Lhomme
1068 2004-04-30 Matthias Clasen <mclasen@redhat.com>
1070 * === Released 2.4.1 ===
1072 * configure.in: Version 2.4.1, interface age 1.
1076 2004-04-25 Tor Lillqvist <tml@iki.fi>
1078 * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1079 Plug memory leak. (#140770, John Ehresman)
1081 2004-04-23 Matthias Clasen <mclasen@redhat.com>
1083 * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
1084 Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
1085 point. (#139134, Piotr Klaban)
1087 * glib/gconvert.c (open_converter): Don't call g_strerror() here,
1088 since it can lead to infinite recursion. (#139133, Piotr Klaban)
1090 2004-04-22 Matthias Clasen <mclasen@redhat.com>
1092 * tests/testglib.c (main): Trivial warning fix. (#140345)
1094 * tests/queue-test.c (main): Add some tests for off-by-one errors.
1096 * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one
1097 error. (#139703, Philippe Blain)
1099 * tests/testglib.c (main): Add testcases for g_message() involving
1100 non-printable and unsafe characters.
1102 * glib/gmessages.c (escape_string): Don't assume that
1103 string->str remains unchanged over g_string_insert()
1104 calls. (#139030, Christophe Saout)
1106 * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a
1107 locale-specific decimal separator directly follows a
1108 number. (#138424, Nickolay V. Shmyrev)
1110 * tests/strtod-test.c (main): Add some more testcases.
1112 * glib/gmain.c (g_main_context_query): Only set time_is_current to
1113 FALSE if context->timeout is not zero. (#137795, Christian Krause)
1115 2004-04-21 Matthias Clasen <mclasen@redhat.com>
1117 * tests/printf-test.c (main): Comment out a nonessential testcase
1118 which fails on HP-UX. (#136283, Jonas Jonsson)
1120 2004-04-15 Matthias Clasen <mclasen@redhat.com>
1122 * tests/patterntest.c (main): Add tests for the empty pattern.
1124 * glib/gpattern.c (g_pattern_spec_new): Don't read and write out
1125 of bounds when the pattern is empty. (#140032, Stanislav Brabec,
1128 2004-04-10 Tor Lillqvist <tml@iki.fi>
1130 * glib/gwin32.c (g_win32_getlocale): Add new language and
1131 sublanguage codes, from GNU gettext. (#137958)
1136 * glib/gthread.c: Decorating variable definitions with
1137 __declspec(dllexport) causes problems on Cygwin build, and isn't
1138 really needed for a native Win32 build with mingw or MSVC, so
1139 remove. (#138402, Roger Leigh)
1141 * glib/libcharset/localcharset.c: Use Win32-specific code also on
1143 * tests/uri-test.c: Don't assume that local filenames are in UTF-8
1144 on Cygwin, either. (#138412, Roger Leigh)
1146 2004-04-08 Guntupalli Karunakar <karunakar@freedomink.org>
1148 * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1150 2004-04-03 Tor Lillqvist <tml@iki.fi>
1152 * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
1153 found on Cygwin, they don't work. (#138401, Roger Leigh)
1155 2004-03-31 Tor Lillqvist <tml@iki.fi>
1157 * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
1160 * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
1161 on Cygwin. (#138423, Roger Leigh)
1163 2004-03-30 Adam Weinberger <adamw@gnome.org>
1165 * configure.in: Added en_CA to ALL_LINGUAS.
1167 2004-03-21 Tor Lillqvist <tml@iki.fi>
1169 * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
1170 cases where a drive letter is present. For 'a:' or 'a:foo', return
1171 'a:.'. This is mostly just for consistency with the behaviour
1172 without a drive letter. But very important is to for 'a:\foo' or
1173 'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
1174 instead of backslashes.) (#137316)
1176 * tests/dirname-test.c (main): More complete testing on Win32. If
1177 a test fails, include expected and actual result in error message.
1179 Fri Mar 19 15:21:09 2004 Owen Taylor <otaylor@redhat.com>
1181 * glib/gmain.c: Fix the accidental revert of the
1182 fixes from #112222 that happened when the GChildWatch
1183 code was added. (Caught by Christian Persch)
1185 Fri Mar 19 11:07:06 2004 Owen Taylor <otaylor@redhat.com>
1187 * tests/atomic-test.c (main): Make computation
1188 of "biggest_pointer" vaguely more portable.
1189 (#137498, Jonas Jonsson)
1191 2004-03-16 Tor Lillqvist <tml@iki.fi>
1193 * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1194 on Win32) case, where the 64-bit type is called long long, but the
1195 system printf/scanf format modifier for 64-bit integers is still I64.
1197 2004-03-16 Gareth Owen <gowen72@yahoo.com>
1199 * configure.in: Added en_GB to ALL_LINGUAS