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