Make this function thread-safe in the GLib style.
[platform/upstream/glib.git] / ChangeLog.pre-2-6
1 2004-10-26  Matthias Clasen  <mclasen@redhat.com>
2
3         * glib/gwin32.c (g_win32_get_windows_version): Make this
4         function thread-safe in the GLib style.
5         * glib/gthreadinit.h: 
6         * glib/gwin32.c (_g_win32_thread_init): New function to
7         initialize the version.
8         * glib/gthread.c (g_thread_init_glib): Call 
9         _g_win32_thread_init() from here.
10
11 2004-10-26  Ray Strode  <rstrode@redhat.com>
12
13         * glib/gkeyfile.c: Add Matthias to "Written by" lines
14          (GKeyFileGroup): add field to hold comments about groups
15          (g_key_file_load_from_fd): return TRUE on success and
16          FALSE on failure.  Don't close fd's opened by other
17          parent function.  
18          (g_key_file_load_from_file): run FILE_IS_REGULAR test
19          before trying to open file, to save an fd from being
20          leaked (would probably be better to use fstat()). Close
21          fd when done with it. Return TRUE on success and FALSE
22          on failure.
23          (g_key_file_load_from_data): Return TRUE on success and
24          FALSE on failure.
25          (g_key_file_load_from_data_dirs): remove superfluous
26          const modifier.  Return TRUE on success and FALSE on
27          failure.  Stop trying to load files when one succeeds.
28          (g_key_file_parse_key_value_pair): don't validate input
29          for UTF-8 until users uses a getter that does
30          validation.  Don't leak copy of start_group_name.
31          (g_key_file_to_data): serialize new comment field for
32          groups.
33          (g_key_file_get_keys): Remove convenience code to let
34          NULL group mean start group.  Get rid of unneeded NULL
35          check before g_strdup.
36          (g_key_file_get_groups): Reverse groups list before
37          sending to user because it is maintained in backward
38          order internally. 
39          (g_key_file_get_value),
40          (g_key_file_set_value): add g_return checks at top of
41          public functions.
42          (g_key_file_get_string), 
43          (g_key_file_get_string_list): validate key value is UTF-8.
44          (g_key_file_[sg]et_*comment): new functions for
45          setting/getting comments
46          (g_key_file_remove_comment): new function to remove
47          comment block
48          (g_key_file_remove_key_value_pair_node): new function to
49          pull a key-value pair out of the list and free it.
50          (g_key_file_remove_group_node): call
51          g_key_file_remove_key_value_pair_node instead of 
52          freeing the list immediately to get better statistics
53          for approximate_size.
54          (g_key_file_remove_group): use lookup_group_node instead
55          of lookup_group to prevent a g_list_find call.
56          (g_key_file_add_key): report group also when unable to
57          find key.
58          (g_key_file_lookup_group_node): new function to make
59          getting the group node from a group name easier.
60          (g_key_file_lookup_group): use lookup_group_node under
61          the hood.
62          (g_key_file_lookup_key_value_pair_node): new function to
63          make getting the key-value pair from a group and key
64          name eaiser.
65          (g_key_file_parse_comment_as_value): new function to add '#' to the
66          beginning of every line.
67          (g_key_file_parse_value_as_comment): new function that
68          attempts to be the inverse of comment as value.
69
70 2004-10-26  Matthias Clasen  <mclasen@redhat.com>
71
72         * glib/gutils.c: 
73         * glib/gkeyfile.c: Don't include ctype.h needlessly.  (#156424,
74         Morten Welinder)
75
76         * tests/strtod-test.c (test_string): Improve error reporting.
77
78 Mon Oct 25 15:05:18 2004  Manish Singh  <yosh@gimp.org>
79
80         * autogen.sh: rm autom4te.cache, since it might interfere with
81         differing autoconf versions.
82
83         * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
84         user data.
85
86         * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
87         don't redefine it here.
88
89 2004-10-24  Matthias Clasen  <mclasen@redhat.com>
90
91         * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
92         destroy the lookup map if it is NULL.
93
94 2004-10-23  Matthias Clasen  <mclasen@redhat.com>
95
96         * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c, 
97         glib/giochannel.c, glib/gmain.c, glib/gspawn.c, 
98         glib/libcharset/localcharset.c: Apply a patch to fix
99         sparse warnings. (#154696, Kjartan Maraas)
100
101         * glib/gnulib/g-gnulib.h: Undef libc functions before defining
102         them, since they may also be macros.  (#155177, Andrea Campi)
103
104         * glib/gkeyfile.h: 
105         * glib/gkeyfile.c: Add a parser for desktop entries and
106         similar files with a .ini-like syntax.  (#139974, Ray Strode)
107
108         * glib/glib.h: Include gkeyfile.h
109
110         * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
111         (glibsubinclude_HEADERS): Add gkeyfile.h
112
113         * glib/gutils.c (_g_compute_locale_variants): Make this 
114         non-static and use it in gkeyfile.c
115
116 2004-10-22  Matthias Clasen  <mclasen@redhat.com>
117
118         * tests/uri-test.c (run_uri_list_tests): Add some
119         uri list tests.c.
120
121         * glib/gconvert.h:
122         * glib/gconvert.c (g_uri_list_extract_uris): New function to
123         split a text/uri-list data into individual uris and strip comments.
124
125 2004-10-20  Matthias Clasen  <mclasen@redhat.com>
126
127         * glib/goption.c (get_change): Don't return the wrong 
128         change.  (#155856, Lucas Rocha)
129
130 2004-10-17  Matthias Clasen  <mclasen@redhat.com>
131
132         * glib/gutils.h (G_IS_DIR_SEPARATOR): 
133         * glib/gutils.c: Make public.  (#155589, Tim-Philipp Müller) 
134
135 2004-10-08  Matthias Clasen  <mclasen@redhat.com>
136
137         * glib/gmain.c (g_child_watch_add_full): 
138         * glib/gmain.c (g_child_watch_add): Document that GLib supports only
139         a single callback per pid. (#154828, Gustavo Carneiro)
140
141 2004-10-06  Matthias Clasen  <mclasen@redhat.com>
142
143         * glib/gfileutils.c: Fix some C99isms.  (#154676, Kjartan Maraas)
144
145 2004-10-05  Anders Carlsson  <andersca@gnome.org>
146
147         * glib/goption.c: (g_option_context_parse):
148         Add check for if argc is 0.
149         
150         * tests/option-test.c: (empty_test3), (main):
151         Add test case.
152         
153 2004-10-05  Matthias Clasen  <mclasen@redhat.com>
154
155         * NEWS: Update
156
157 2004-10-04  Matthias Clasen  <mclasen@redhat.com>
158
159         * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
160         vtable is set.  (#154352, Philippe Blain)
161
162 2004-10-03  Anders Carlsson  <andersca@gnome.org>
163
164         * glib/goption.c: (parse_arg):
165         Set arg_data on filenames. (Discovered by Mats-Ola Persson).
166         
167         * tests/option-test.c: (arg_test3), (ignore_test3), (main):
168         Add test for filename args.
169         
170 2004-10-01  Tor Lillqvist  <tml@iki.fi>
171
172         * glib/goption.c (g_option_context_parse): Use
173         g_path_get_basename() instead of strrchr(), so that either slash
174         is accepted on Windows.
175
176 2004-09-30  Matthias Clasen  <mclasen@redhat.com>
177
178         * glib/gfileutils.c: Convert filenames to UTF-8 before 
179         putting them in GErrors.  (#154078, Morten Welinder)
180
181 2004-09-29  Matthias Clasen  <mclasen@redhat.com>
182
183         * glib/glib.symbols: Add g_assert_warning.
184
185         * glib/gmessages.h:
186         * glib/gmessages.c (g_assert_warning): Treat g_assert 
187         in the same way as g_return_if_fail and move the string 
188         constants into a helper function, which also takes 
189         care of removing the "IA__" prefix from internal aliases.
190
191         * glib/gmessages.h: Move the declaration of 
192         g_return_if_fail_warning() out of the ifdefs, so that
193         building with G_DISABLE_ASSERT works.
194
195 2004-09-27  Murray Cumming  <murrayc@murrayc.com>
196
197         * glib/goptions.[h|c], glib/glib.symbols: Rename 
198         g_context_option_error_quark() to g_option_error_quark(), because that 
199         is consistent with normal naming conventions, and what bindings expect.
200
201 .2004-09-26  Matthias Clasen  <mclasen@redhat.com>
202
203         Fix #153649, Hidetaka Iwai:
204         
205         * glib/goption.c (parse_long_option): Don't forget to set parsed
206         to TRUE when parsing a long ARG_NONE option. 
207         (free_changes_list): Fix the memory management for string
208         and filename arrays.
209
210 2004-09-22  Tor Lillqvist  <tml@iki.fi>
211
212         * glib/gmessages.c: [Win32] Don't ever open a console
213         window. (Which we used to do if standard output or standard error
214         are invalid, as they are for GUI applications.) These console
215         windows that open up unexpectedly have caused endless amounts of
216         confusion among end-users. (#141102, #151175)
217
218         Don't output the process id on Windows. Only output the program
219         name. If not set with g_set_prgname(), fetch the application
220         executable's name and use that.
221
222 Mon Sep 20 00:35:14 2004  Matthias Clasen  <maclas@gmx.de>
223
224         * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
225         convert UTF-16 byte stream of ambiguous endianness.  (#152954,
226         Linus Walleij)
227
228 Mon Sep 20 00:17:37 2004  Matthias Clasen  <maclas@gmx.de>
229
230         * tests/option-test.c (error_test3_post_parse): 
231         * tests/option-test.c (error_test2_post_parse): 
232         * tests/option-test.c (error_test1_post_parse): Don't call 
233         g_set_error () with a NULL format.  (#153103, Robert Ögren) 
234
235 Mon Sep 20 00:13:48 2004  Matthias Clasen  <maclas@gmx.de>
236
237         Make GOption remove long options completely. (#153113, Robert Ögren)
238
239         * glib/goption.c (parse_long_option): Fix a wrong index.
240
241         * tests/option-test.c (ignore_test3): Test handling of unknown
242         options some more.
243
244 Sun Sep 19 23:56:15 2004  Matthias Clasen  <maclas@gmx.de>
245
246         * glib/goption.c (g_option_context_parse): Call error_func
247         on error, not post_parse_func again.  (#153107, Robert Ögren)
248
249 Sun Sep 19 23:52:35 2004  Matthias Clasen  <maclas@gmx.de>
250
251         * glib/gmessages.c (mklevel_prefix): 
252         * glib/gmessages.c (g_logv): Fix the types of some variables
253         to be GLogLevelFlags instead of guint.  (#153042, Philippe Blain)
254
255 2004-09-18  Matthias Clasen  <mclasen@redhat.com>
256
257         * Version bump
258
259         * === Released 2.5.3 ===
260
261 2004-09-17  Matthias Clasen  <mclasen@redhat.com>
262
263         * NEWS: More updates.
264
265 Thu Sep 16 18:42:46 2004  Manish Singh  <yosh@gimp.org>
266
267         * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
268         the third field.
269
270 Thu Sep 16 18:15:32 2004  Manish Singh  <yosh@gimp.org>
271
272         * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
273         of characters, instead of a gsize. Technically this is incorrect,
274         but this makes it match the prototype, and this is a deprecated
275         function anyway.
276
277 2004-09-16  Matthias Clasen  <mclasen@redhat.com>
278
279         * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
280
281 Thu Sep 16 02:03:15 2004  Matthias Clasen  <maclas@gmx.de>
282
283         Implement the same PLT reduction technique used in GTK+:
284         
285         * glib/glib.symbols: Master list of symbols
286
287         * glib/makegalias.pl: Perl script which creates galias.h
288
289         * glib/abicheck.sh: Compares actual exports against glib.symbols 
290
291         * glib/glib.def: Removed. This file is now generated from
292         glib.symbols
293         
294         * glib/Makefile.am: Add rules to generate galias.h and glib.def,
295         and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
296         
297         * configure.in: Add --disable-visibility to suppress the 
298         use of ELF visibility attributes.
299
300         * glib/*.c: Include galias.h
301
302 2004-09-15  Tor Lillqvist  <tml@iki.fi>
303
304         * glib/gwin32.c (g_win32_error_message): Convert message to
305         UTF-8. Technically this breaks API, but the actual use cases in
306         gdk/win32 have assumed it is UTF-8 anyway. Fix
307         documentation. (#152618, Kazuki Iwamoto)
308
309         * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
310         good idea, and it clashes with newest mingw headers, which have a
311         ftruncate implementation as an inline function. Thanks to Dominik R.
312
313         * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
314         call _chsize() in the C library.
315
316 2004-09-15  Matthias Clasen  <mclasen@redhat.com>
317
318         * NEWS: Update.
319
320 2004-09-09  Matthias Clasen  <mclasen@redhat.com>
321
322         * glib/gmessages.c (g_return_if_fail_warning): Strip the
323         prefix "IA__" from function names, since that is what
324         GTK+ uses for the PLT-reduction aliases. 
325
326 Thu Sep  9 13:52:26 2004  Owen Taylor  <otaylor@redhat.com>
327
328         * glib/gmessages.c (g_return_if_fail_warning): 
329         Include implementation of g_return_if_fail_internal().
330
331 Thu Sep  9 10:37:41 2004  Owen Taylor  <otaylor@redhat.com>
332
333         * glib/gmessages.h (g_return_[val_]if_fail): Use
334         a helper function to reduce code size; omit FILE/LINE
335         when we have __PRETTY_FUNCTION__.
336
337 2004-09-09  Matthias Clasen  <mclasen@redhat.com>
338
339         * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
340
341 Thu Sep  9 00:10:40 2004  Matthias Clasen  <maclas@gmx.de>
342
343         * glib/gstrfuncs.h: 
344         * glib/gstrfuncs.c (g_strv_length): Add a function to 
345         calculate the length of a NULL-terminated string 
346         array.  (#150455, Tim-Philipp Müller)
347
348         * tests/strfunc-test.c (main): Add a test for g_strv_length().
349
350 2004-09-08  Tor Lillqvist  <tml@iki.fi>
351
352         * glib/gutils.c (guess_category_value): On Win32, as last resort
353         call g_win32_getlocale() to get the current thread locale. There
354         usually aren't any POSIXish LANG or LC_* environment variables
355         present on Windows machines.
356
357         * glib/glib.def: Add g_get_language_names.
358
359 2004-09-07  Matthias Clasen  <mclasen@redhat.com>
360
361         * glib/gutils.h: 
362         * glib/gutils.c (g_get_language_names): Add a function to
363         return a list of applicable locale names.  (#95587, 
364         Hidetoshi Tajima)
365         (guess_category_value, compute_locale_variants):
366         (explode_locale, unalias_lang, read_aliases): Helper 
367         functions for g_get_language_names()
368
369         * tests/testglib.c (main): Show the results of 
370         g_get_language_names()
371
372 Sun Sep  5 01:46:11 2004  Matthias Clasen  <maclas@gmx.de>
373
374         * glib/glib.def: 
375         * glib/gmessages.h: 
376         * glib/gmessages.c (g_log_set_default_handler): New
377         function to install an alternate default log 
378         handler.  (#66387, Darin Adler)
379
380 2004-09-03  Tor Lillqvist  <tml@iki.fi>
381
382         * glib/glib.def: Update.
383
384 Wed Sep  1 20:22:39 2004  Matthias Clasen  <maclas@gmx.de>
385
386         * glib/gdate.h:
387         * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
388         a function to calculate the ISO 8601 week number of 
389         a date.  (#92579, Niklas Lundell)
390
391 2004-09-01  Anders Carlsson  <andersca@gnome.org>
392
393         * glib/goption.c: (g_option_context_parse):
394         Set program name before calling the pre-parse hooks.
395         
396 2004-09-01  Anders Carlsson  <andersca@gnome.org>
397
398         * glib/goption.c: (g_option_context_free), (print_help),
399         (g_option_context_parse):
400         Handle option contexts without a main group.
401         
402         * tests/option-test.c: (empty_test2), (main):
403         Add test case for that.
404         
405 2004-08-30  Anders Carlsson  <andersca@gnome.org>
406
407         * glib/goption.c: (g_option_context_parse):
408         Set prgname to <unknown> if argc and argv are NULL.
409         
410         * tests/option-test.c: (empty_test1), (main):
411         Add test case for that.
412         
413 Sun Aug 29 23:58:38 2004  Matthias Clasen  <maclas@gmx.de>
414
415         * glib/ghash.c (g_hash_table_lookup): Point to 
416         g_hash_table_lookup_extended() for differentiation between
417         not-found and value-is-NULL.  (#150960, Morten Welinder)
418
419 2004-08-27  Matthias Clasen  <mclasen@redhat.com>
420
421         Fix #151193, Stepan Kasal:
422         
423         * glib/gfileutils.c (g_file_error_from_errno): 
424         * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
425
426 Fri Aug 27 00:45:41 2004  Matthias Clasen  <maclas@gmx.de>
427
428         * glib/goption.c (g_option_context_parse): Set the program name
429         from argv[0], noticed by Masatake YAMATO.
430
431 2004-08-26  Tor Lillqvist  <tml@iki.fi>
432
433         * tests/testglib.c (main): Test the new XDG basedir functions.
434
435 2004-08-25  Tor Lillqvist  <tml@iki.fi>
436
437         * glib/gwin32.c (g_win32_get_windows_version): New
438         function. Returns the Windows version code like GetVersion(),
439         except that one can pretend to be running on Win9x by setting the
440         G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
441         debugging purposed.
442
443         * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED 
444         and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
445
446 2004-08-25  Matthias Clasen  <mclasen@redhat.com>
447
448         * configure.in: Post-release version bump.
449
450         * === Released 2.5.2 ===
451
452 Wed Aug 25 00:25:08 2004  Matthias Clasen  <maclas@gmx.de>
453
454         * NEWS: Update for 2.5.2
455
456 2004-08-25  Tor Lillqvist  <tml@iki.fi>
457
458         Win32 equivalences of the XDG folders
459         
460         * glib/gutils.c (get_special_folder): New function, calls
461         SHGetSpecialFolderLocation() to get path to places like the My
462         Documents folder.
463         (g_get_any_init): Use CSIDL_PROFILE as HOME if not
464         overridden by env vars.
465         (g_get_user_data_dir): Use CSIDL_PERSONAL.
466         (g_get_user_config_dir): Use CSIDL_APPDATA.
467         (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
468         (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
469         CSIDL_COMMON_DOCUMENTS.
470         (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
471
472         * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
473
474         * glib/glib.def: Add the new functions.
475
476 Mon Aug 23 16:16:35 2004  Manish Singh  <yosh@gimp.org>
477
478         * glib/goption.c (g_option_group_add_entries): remove unused
479         variable.
480
481 Mon Aug 23 01:35:18 2004  Matthias Clasen  <maclas@gmx.de>
482
483         * glib/gutils.c (g_get_user_cache_dir): 
484         * glib/gutils.c (g_get_user_config_dir): 
485         * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
486         while holding the g_utils_global lock, simply use g_home_dir. 
487         (#150695, Jody Goldberg)
488
489 2004-08-21  Tor Lillqvist  <tml@iki.fi>
490
491         * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
492         break out of its loop. Prevents a thread leak. (#147392, Peter
493         Zelezny)
494
495         * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
496         return value from strxfrm(). For instance Microsoft's strxfrm()
497         returns INT_MAX on errors. (#141124)
498
499 2004-08-19  Tor Lillqvist  <tml@iki.fi>
500
501         * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
502         source and destination charset parameter order in g_convert()
503         call. (#150394, possibly also #141124)
504
505 2004-08-20  Jon K Hellan  <hellan@acm.org>
506
507         * glib/goption.h: Remove trailing commas.
508
509 2004-08-17  Matthias Clasen  <mclasen@redhat.com>
510
511         * configure.in: Check for all four values of the
512         visibility attribute; gcc 2.96 seems to miss 
513         "default".  (#150379, Vincent Noel)
514
515 2004-08-16  Christian Rose  <menthos@menthos.com>
516
517         * configure.in: Added "bs" to ALL_LINGUAS.
518
519 2004-08-11  Ray Strode  <rstrode@redhat.com>
520
521         * docs/reference/glib/glib-sections.txt: 
522         * glib/gutils.[ch] (g_get_user_data_dir),
523         (g_get_user_config_dir), (g_get_user_cache_dir),
524         (g_get_system_data_dirs), (g_get_system_config_dirs): 
525         Add new XDG basedir API (bug 139973).
526
527 2004-08-10  Matthias Clasen  <mclasen@redhat.com>
528
529         * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
530         * configure.in: Check whether the visibility attribute
531         works and define G_HAVE_GNUC_VISIBILITY and 
532         G_GNUC_INTERNAL in glibconfig.h correspondingly.
533
534 Mon Aug  9 17:37:56 2004  Matthias Clasen  <maclas@gmx.de>
535
536         * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
537
538 2004-08-06  Hans Breuer  <hans@breuer.org>
539
540         * glib/makefile.msc.in glib/glib.def : updated
541
542         * glib/gutils.c : avoid 'inconsitent dll linkage' by not
543         defining extern char** environ with msvc
544
545 2004-08-06  Matthias Clasen  <mclasen@redhat.com>
546
547         * m4macros/glib-gettext.m4: Require ngettext.  (#123847,
548         Danilo Segan)
549
550 Thu Aug  5 20:53:00 2004  Ray Strode  <rstrode@redhat.com>
551
552         * glib/gutils.h (g_get_codeset): strdup result so caller
553         doesn't free internally managed memory.
554
555 2004-08-04  Tor Lillqvist  <tml@iki.fi>
556
557         * glib/glib.def: Add glib_check_version.
558
559         * config.h.win32.in: Update to match what configure produces. Add
560         the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
561         HAVE_INT64_AND_I64 to where the configure script puts it. Add
562         HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
563
564 Tue Aug  3 16:19:44 2004  Matthias Clasen  <maclas@gmx.de>
565
566         * glib/goption.c: Mark user visible strings for translation.
567
568 Tue Aug  3 15:50:55 2004  Matthias Clasen  <maclas@gmx.de>
569
570         * glib/goption.[hc]: Pedantically use g types throughout.
571
572 Tue Aug  3 14:58:20 2004  Matthias Clasen  <maclas@gmx.de>
573
574         * glib/gutils.h: 
575         * glib/gutils.c (glib_check_version): New function to
576         check the version of GLib at runtime.  (#149175, Michael Natterer)
577
578 2004-08-03  Anders Carlsson  <andersca@gnome.org>
579
580         * glib/goption.h:
581         * glib/gtypes.h:
582         Move GTranslateFunc to gtypes.h
583         
584 2004-08-02  Anders Carlsson  <andersca@gnome.org>
585
586         * glib/Makefile.am:
587         * glib/glib.h:
588         * glib/goption.c:
589         * glib/goption.h:
590         * tests/.cvsignore:
591         * tests/Makefile.am:
592         * tests/option-test.c: 
593         Add GOption.
594
595 2004-08-02  Matthias Clasen  <mclasen@redhat.com>
596
597         * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
598         declarations as internal and avoid PLT indirections for 
599         them.  (#145465, Arjan van de Ven)
600
601         * glib/gunicodeprivate.h: 
602         * glib/gthreadinit.h: 
603         * glib/gmessages.h: 
604         * glib/gdebug.h: 
605         * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
606         _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
607         _g_messages_thread_init(), _g_convert_thread_init(), 
608         _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
609         _g_mem_thread_private_init(), _g_messages_thread_private_init(),
610         _g_utf8_normalize_wc() and _g_unichar_combining_class().
611
612         * glib/gatomic.c: Include gthreadinit.h here to see the declaration
613         for _g_atomic_thread_init().
614
615 Sun Aug  1 13:19:18 2004  Manish Singh  <yosh@gimp.org>
616
617         * tests/uri-test.c: move newline printing from run_from_uri_tests()
618         to run_roundtrip_tests().
619
620 2004-08-01 Matthias Clasen  <mclasen@redhat.com>
621
622         * Post-release version bump
623
624         * === Released 2.5.1 ===
625
626 Sat Jul 31 23:17:05 2004  Matthias Clasen  <maclas@gmx.de>
627
628         * NEWS: Updates.
629
630 Sat Jul 31 20:33:07 2004  Matthias Clasen  <maclas@gmx.de>
631
632         * tests/shell-test.c: Include a test involving consecutive
633         backslashes followed by a non-escaped doublequote.
634         
635         * glib/gshell.c (tokenize_command_line): Count consecutive
636         backslashes mod 2 to detect escaped doubleqotes.  (#127306)
637
638 2004-07-30  Matthias Clasen  <mclasen@redhat.com>
639
640         * glib/gconvert.c (g_unescape_uri_string): Don't validate
641         for UTF-8 here.  (#148420, Robert Ögren)
642
643         * tests/uri-test.c (run_roundtrip_tests): Add tests for 
644         roundtrip compatibility. Going from filename to uri and 
645         back should always give you the same filename back. 
646
647 2004-07-28  Matthias Clasen  <mclasen@redhat.com>
648
649         * tests/markups/valid-{9,10,11}.gmarkup: 
650         * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
651         of whitespace inside tags.
652
653         * glib/gmarkup.c (enum GMarkupParseState): Add 
654         STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
655         (g_markup_parse_context_parse): Accept whitespace between
656         attribute names, '=' and attribute values and between
657         close tag name and '>'. (#148646, Hiroyuki Ikezoe)
658
659 Tue Jul 27 02:01:31 2004  Matthias Clasen  <maclas@gmx.de>
660
661         * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
662         as well.
663
664 Sat Jul 24 17:50:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
665
666         * glib/gstrfuncs.c (g_strsplit_set):
667         s/g_strtokenize/g_strsplit_set/ in docs.
668
669 Fri Jul 23 10:37:50 2004  Matthias Clasen  <maclas@gmx.de>
670
671         * tests/type-test.c (main): Actually test G_MAXSIZE with
672         a gsize variable.
673
674 2004-07-21  Matthias Clasen  <mclasen@redhat.com>
675
676         Fix #132858, Sven Neumann, patch by James Henstridge:
677         
678         * glib-gettextize.in: modify so that mkinstalldirs will 
679         get installed into auxdir.
680
681         * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
682
683 2004-07-21  Matthias Clasen  <mclasen@redhat.com>
684
685         Fix #147651, reported by Oliver Guntermann:
686
687         * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
688         _g_gnulib_vasprintf() in a macro, since they behave 
689         differently wrt. to memory allocation.
690
691         * glib/gprintf.c (g_vasprintf): Instead, differentiate 
692         here between the three cases: system vasprintf(), 
693         _g_gnulib_vasprintf(), no vasprintf().  
694
695 2004-07-20  Crispin Flowerday  <gnome@flowerday.cx>
696
697         * NEWS: Fix a typo in my name
698
699 Tue Jul 20 04:31:40 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
700
701         * configure.in: Bump version number
702
703 Sun Jul 18 19:40:30 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
704
705         * === Released 2.5.0 ===
706
707         * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
708
709 Sun Jul 18 01:40:28 2004  Matthias Clasen  <maclas@gmx.de>
710
711         * NEWS: Updates for 2.5.0
712
713 Mon Jul 12 00:02:40 2004  Matthias Clasen  <maclas@gmx.de>
714
715         * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
716
717 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
718
719         * glib/gdir.c (g_dir_open): Convert filename to UTF-8 
720         before using it in the error message.  (#146054, Federico
721         Mena Quintero)
722
723 Thu Jul  8 00:54:32 2004  Matthias Clasen  <maclas@gmx.de>
724
725         * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
726         be built without anyway.  (#135899, Murray Cumming)
727
728 Mon Jul  5 18:50:27 2004  Matthias Clasen  <maclas@gmx.de>
729
730         * glib/gmessages.h (g_debug): Complete the g_log() 
731         family.  (#135730, Sven Herzberg)
732
733 Mon Jul  5 18:42:30 2004  Matthias Clasen  <maclas@gmx.de>
734
735         * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to 
736         make srcdir != . work.  (#145166, Kaz Sasayama)
737
738 Sun Jul  4 01:52:18 2004  Matthias Clasen  <maclas@gmx.de>
739
740         * configure.in: Use a small test library instead of
741         libpthread.so for testing RTLD_GLOBAL brokenness.  (#139567,
742         Julio M. Merino Vidal)
743         
744 2004-07-02  Sebastian Wilhelmi  <seppi@seppi.de>
745
746         * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
747         __volatile__ to make the file consistent. Spotted by Benoit
748         Carpentier <gtkool_2kx@yahoo.fr>.
749
750 2004-07-01  John Ehresman  <jpe@wingide.com>
751
752         * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
753         Initialize reset_send & reset_recv fields and don't close
754         sockets unless they were created.  (#145153)
755
756 Fri Jun 11 22:56:46 2004  Matthias Clasen  <maclas@gmx.de>
757
758         * glib/gscanner.c (g_scanner_get_token_ll): Ignore a 
759         missing newline at EOF for single line comments.  
760         (#83674, Sven Neumann)
761
762 Thu Jun 10 23:38:02 2004  Matthias Clasen  <maclas@gmx.de>
763
764         * tests/printf-test.c (TEST): Actually set any_failed on 
765         failure.  (#143552, Philippe Blain)
766
767 2004-06-09  Federico Mena Quintero  <federico@ximian.com>
768
769         * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
770         for URIs that *should* have been invalid, or viceversa.
771         (from_uri_tests): Likewise.
772
773 2004-06-07  Federico Mena Quintero  <federico@ximian.com>
774
775         Fixes #140532.
776
777         * glib/gconvert.c (is_asciialphanum): Renamed from
778         is_escalphanum(); ensures that this is an ASCII character.
779         (is_asciiescalpha): Renamed from is_escalpha().
780         (hostname_validate): Use the two functions above.
781         (g_filename_to_uri): Don't convert the filename to UTF-8.
782         (g_filename_from_uri): Don't convert the filename from UTF-8.
783
784 Mon Jun  7 22:25:24 2004  Matthias Clasen  <maclas@gmx.de>
785
786         * tests/run-markup-tests.sh: Default to silence, but support
787         a -v argument to get the old output back. 
788
789 2004-06-06  Tor Lillqvist  <tml@iki.fi>
790
791         * glib/gutils.c (g_get_any_init): Check home for being
792         NULL. (#143812, Ivan Wong)
793
794 Sun Jun  6 15:23:00 2004  Pawan Chitrakr  <pawan@nplinu.org>
795
796         * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
797
798 Fri Jun  4 19:26:47 2004  Manish Singh  <yosh@gimp.org>
799
800         * glib/galloca.h: cpp #directives should always have the "#" in the
801         first column of the the line. Do that for "#pragma alloca". Fixes
802         bug #143744.
803
804 Wed Jun  2 00:57:16 2004  Matthias Clasen  <maclas@gmx.de>
805
806         * glib/gtypes.h: Use higher precision for the mathematical
807         constants.  (#141941, Morten Welinder)
808
809 Tue Jun  1 22:01:40 2004  Matthias Clasen  <maclas@gmx.de>
810
811         * glib/gmarkup.c (advance_char): Fix an off-by-one error 
812         in g_markup_parse_context_parse().  (#142794, Morten Welinder)
813
814 Sun May 16 23:23:29 2004  Matthias Clasen  <maclas@gmx.de>
815
816         Merged from 2.4:
817         
818         * glib/gcompletion.c (g_completion_add_items):
819         (g_completion_remove_items): Remove unnecessary 
820         checks.  (#142559, Morten Welinder)
821
822 2004-05-15  Tor Lillqvist  <tml@iki.fi>
823
824         * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
825         is an absolute path and exists. (#138618)
826
827 2004-05-14  Tor Lillqvist  <tml@iki.fi>
828
829         * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
830         for precision correctly. (#142400)
831
832         For backward compatibility with the Trio implementation, make "ll"
833         format modifer work on Win32, too. Change into "I64" before
834         passing to the system printf. (#142433)
835
836         * tests/printf-test.c (main): Add tests for the above.
837
838 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
839
840         Merge from 2.4:
841         
842         * glib/gmain.c (block_source, unblock_source): Make these 
843         static.  (#142230, Morten Welinder)
844
845 2004-05-10  Tor Lillqvist  <tml@iki.fi>
846
847         * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
848         lines. Thanks to Benoît Carpentier.
849
850 Sun May  9 02:04:14 2004  Matthias Clasen  <maclas@gmx.de>
851
852         Merge from 2.4:
853         
854         * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
855         memleak.  (#141998, Nikolai Weibull)
856
857 Sat May  8 23:02:26 2004  Matthias Clasen  <maclas@gmx.de>
858
859         Merge from 2.4:
860         
861         * glib/gutils.h: Remove vestigial g_get_codeset().
862         * glib/gutils.c (g_get_codeset): Call g_get_charset().
863         (#137703, Owen Taylor)
864
865 2004-05-06  Matthias Clasen  <mclasen@redhat.com>
866
867         * configure.in: Bump version number to 2.5.0.
868
869 Wed May  5 23:35:44 2004  Matthias Clasen  <maclas@gmx.de>
870
871         * glib/gconvert.c (g_filename_from_uri): Quote the file
872         scheme to mark it as untranslatable. String change.  
873         (#133144, Danilo Segan)
874
875 2004-05-03  Pablo Saratxaga  <pablo@mandrakesoft.com>
876
877         * configure.in: Added Walloon (wa) to ALL_LINGUAS
878
879 Sun May  2 03:51:59 2004  Manish Singh  <yosh@gimp.org>
880
881         * glib/gtypes.h: check for __pentium4__ when deciding whether to
882         use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
883
884 2004-05-01  Hans Breuer  <hans@breuer.org>
885
886         * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
887         fixes #141563, Steve Lhomme
888
889 2004-04-30  Matthias Clasen  <mclasen@redhat.com>
890
891         * === Released 2.4.1 ===
892
893         * configure.in: Version 2.4.1, interface age 1. 
894
895         * NEWS: Updates
896         
897 2004-04-25  Tor Lillqvist  <tml@iki.fi>
898
899         * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
900         Plug memory leak. (#140770, John Ehresman)
901
902 2004-04-23  Matthias Clasen  <mclasen@redhat.com>
903
904         * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases): 
905         Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
906         point.  (#139134, Piotr Klaban)
907
908         * glib/gconvert.c (open_converter): Don't call g_strerror() here, 
909         since it can lead to infinite recursion.  (#139133, Piotr Klaban)
910
911 2004-04-22  Matthias Clasen  <mclasen@redhat.com>
912
913         * tests/testglib.c (main): Trivial warning fix.  (#140345)
914
915         * tests/queue-test.c (main): Add some tests for off-by-one errors.
916
917         * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one 
918         error.  (#139703, Philippe Blain)
919
920         * tests/testglib.c (main): Add testcases for g_message() involving
921         non-printable and unsafe characters.
922
923         * glib/gmessages.c (escape_string): Don't assume that
924         string->str remains unchanged over g_string_insert() 
925         calls.  (#139030, Christophe Saout)
926
927         * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a 
928         locale-specific decimal separator directly follows a 
929         number.  (#138424, Nickolay V. Shmyrev)
930
931         * tests/strtod-test.c (main): Add some more testcases.
932
933         * glib/gmain.c (g_main_context_query): Only set time_is_current to 
934         FALSE if context->timeout is not zero.  (#137795, Christian Krause)
935
936 2004-04-21  Matthias Clasen  <mclasen@redhat.com>
937
938         * tests/printf-test.c (main): Comment out a nonessential testcase
939         which fails on HP-UX.  (#136283, Jonas Jonsson)
940
941 2004-04-15  Matthias Clasen  <mclasen@redhat.com>
942
943         * tests/patterntest.c (main): Add tests for the empty pattern.
944
945         * glib/gpattern.c (g_pattern_spec_new): Don't read and write out 
946         of bounds when the pattern is empty.  (#140032, Stanislav Brabec,
947         Stefan Fent)
948
949 2004-04-10  Tor Lillqvist  <tml@iki.fi>
950
951         * glib/gwin32.c (g_win32_getlocale): Add new language and
952         sublanguage codes, from GNU gettext. (#137958)
953         
954         * glib/giowin32.c
955         * glib/gmain.c
956         * glib/gstrfuncs.c
957         * glib/gthread.c: Decorating variable definitions with
958         __declspec(dllexport) causes problems on Cygwin build, and isn't
959         really needed for a native Win32 build with mingw or MSVC, so
960         remove. (#138402, Roger Leigh)
961
962         * glib/libcharset/localcharset.c: Use Win32-specific code also on
963         Cygwin.
964         * tests/uri-test.c: Don't assume that local filenames are in UTF-8
965         on Cygwin, either. (#138412, Roger Leigh)
966
967 2004-04-08  Guntupalli Karunakar  <karunakar@freedomink.org>
968
969         * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
970
971 2004-04-03  Tor Lillqvist  <tml@iki.fi>
972
973         * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
974         found on Cygwin, they don't work. (#138401, Roger Leigh)
975
976 2004-03-31  Tor Lillqvist  <tml@iki.fi>
977
978         * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
979         Leigh)
980
981         * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
982         on Cygwin. (#138423, Roger Leigh)
983
984 2004-03-30  Adam Weinberger  <adamw@gnome.org>
985
986         * configure.in: Added en_CA to ALL_LINGUAS.
987
988 2004-03-21  Tor Lillqvist  <tml@iki.fi>
989
990         * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
991         cases where a drive letter is present. For 'a:' or 'a:foo', return
992         'a:.'. This is mostly just for consistency with the behaviour
993         without a drive letter. But very important is to for 'a:\foo' or
994         'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
995         instead of backslashes.) (#137316)
996
997         * tests/dirname-test.c (main): More complete testing on Win32. If
998         a test fails, include expected and actual result in error message.
999
1000 Fri Mar 19 15:21:09 2004  Owen Taylor  <otaylor@redhat.com>
1001
1002         * glib/gmain.c: Fix the accidental revert of the
1003         fixes from #112222 that happened when the GChildWatch
1004         code was added. (Caught by Christian Persch)
1005
1006 Fri Mar 19 11:07:06 2004  Owen Taylor  <otaylor@redhat.com>
1007
1008         * tests/atomic-test.c (main): Make computation
1009         of "biggest_pointer" vaguely more portable.
1010         (#137498, Jonas Jonsson)
1011
1012 2004-03-16  Tor Lillqvist  <tml@iki.fi>
1013
1014         * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1015         on Win32) case, where the 64-bit type is called long long, but the
1016         system printf/scanf format modifier for 64-bit integers is still I64.
1017
1018 2004-03-16  Gareth Owen  <gowen72@yahoo.com>
1019
1020         * configure.in: Added en_GB to ALL_LINGUAS
1021