7044e027184ec3da06169af0b408ff71ed4df70a
[platform/upstream/glib.git] / ChangeLog.pre-2-8
1 2005-08-01  Tor Lillqvist  <tml@novell.com>
2
3         * tests/uri-test.c: Make it pass on Win32.
4         (from_uri_tests[]): Take into consideration that on Win32 we don't
5         return "localhost" hostnames.
6         (safe_strcmp_filename): New function that considers slash and
7         backslash equal on Win32.
8         (safe_strcmp_hostname): New function that considers "localhost"
9         equal NULL on Win32.
10         (run_roundtrip_tests): Use safe_strcmp_filename() and
11         safe_strcmp_hostname().
12
13 Sun Jul 31 01:50:20 2005  Tim Janik  <timj@gtk.org>
14
15         * glib/gdataset.c:
16         moved G_DATALIST_*_POINTER() macros here, because proper use requires
17         the global g_dataset_global mutex to be acquired.
18         g_datalist_id_get_data():
19         g_datalist_unset_flags():
20         g_datalist_set_flags(): properly acquire and release dataset mutex.
21
22         * glib/gdatasetprivate.h: implement G_DATALIST_GET_FLAGS() via atomic
23         pointer access to account for memory barriers. moved all other macros.
24
25 2005-07-26  Matthias Clasen  <mclasen@redhat.com>
26
27         * glib/goption.c: Include glibintl.h, not gi18n.h, noticed
28         by Dan Winship.
29
30         * configure.in: Try -mt as compiler flag for threads, needed
31         for the HP C compiler on HP-UX.  (#163051, Paul Cornett)
32
33         * glib/ghash.c (g_hash_table_foreach): Fix a typo in the 
34         docs.  (#311569, Ross Burton)
35
36 2005-07-21  Matthias Clasen  <mclasen@redhat.com>
37
38         * configure.in: Bump version 
39
40         * === Released 2.7.4 ===
41
42         * NEWS: Updates
43
44 2005-07-20  Manish Singh  <yosh@gimp.org>
45
46         * tests/refcount/signals.c: use G_CALLBACK for signal connections.
47
48 2005-07-20  Matthias Clasen  <mclasen@redhat.com>
49
50         * glib/gthreadpool.c (g_thread_pool_free): Don't get
51         stuck in here if immediate is TRUE.  (#310954, 
52         Hong Jen Yee)
53
54         * tests/threadpool-test.c (main): Test immediate == TRUE.
55
56 2005-07-20  Tor Lillqvist  <tml@novell.com>
57
58         * glib/gutils.h (g_win32_get_system_data_dirs): Make this an
59         inline function. Define it only if G_CAN_INLINE and not
60         C++. (#173098)
61
62 2005-07-19  Matthias Clasen  <mclasen@redhat.com>
63
64         * glib/gstring.c (g_string_chunk_insert_len): Avoid
65         an unnecessary strlen if len is -1.  (#169692, 
66         Benoit Dejean)
67
68         * glib/gatomic.c (g_atomic_pointer_compare_and_exchange): 
69         Fix g_atomic_pointer_compare_and_exchange on sparc64.
70         (#167572, Gert Doering)
71
72 2005-07-15  Matthias Clasen  <mclasen@redhat.com>
73
74         * configure.in: Bump version
75
76         * === Released 2.7.3 ===
77         
78 2005-07-15  Matthias Clasen  <mclasen@redhat.com>
79
80         * tests/Makefile.am (SUBDIRS): Add tests/refcount
81
82         * configure.in: Add tests/refcount
83
84         * tests/refcount/properties.c: Test property changes
85         from multiple threads.
86
87         * tests/refcount/signals.c: Test signal emission from
88         multiple threads.
89
90         * tests/refcount/objects.c: Test refcounting from 
91         multiple threads.
92
93         * tests/refcount/objects2.c: 
94         * tests/refcount/properties2.c: Tests to measure the 
95         overhead of threadsafe refcounting.
96         
97         * glib/giochannel.c (g_io_channel_ref, g_io_channel_unref): 
98         Use atomic operations to make refcounting
99         threadsafe.  (#166020, Wim Taymans)
100
101         * NEWS: Updates
102
103 2005-07-14  Matthias Clasen  <mclasen@redhat.com>
104
105         * tests/spawn-test.c: 
106         * tests/uri-test.c: 
107         * tests/thread-test.c: 
108         * tests/queue-test.c: 
109         * tests/mainloop-test.c: 
110         * tests/iochannel-test.c: 
111         * tests/gio-test.c: 
112         * tests/child-test.c: Make the tests silent on success.
113
114 2005-07-13  Matthias Clasen  <mclasen@redhat.com>
115
116         * glib/gfileutils.c (g_mkdir_with_parents): Fix a 
117         typo.  (#310243, Richard Laager)
118
119         * glib/goption.c (g_option_group_add_entries): Warn if a
120         short name is not acceptable.
121
122 2005-07-12  Matthias Clasen  <mclasen@redhat.com>
123
124         * glib/goption.h (G_OPTION_FLAG_NOALIAS): 
125         * glib/goption.c: Add and implement a new flag
126         to turn off the automatic <groupname>- prefixing
127         for conflict resolution of long option names. (#171840,
128         Adam McLaurin)
129         
130         All optional callback arguments  (#308886, Pawel
131         Sliwowski)
132
133         * glib/goption.h (G_OPTION_FLAG_OPTIONAL_ARG): 
134         * glib/goption.c: Add and implement a new flag
135         to indicate that a callback *optionally* takes another
136         argument.
137
138         * tests/option-test.c: Add tests for optional arguments.
139
140 2005-07-12  Matthias Clasen  <mclasen@redhat.com>
141
142         * glib/gthread.c (g_static_rec_mutex_lock_full): Don't lock
143         if depth is zero.  (#310148, Wim Taymans)
144
145 2005-07-10  Matthias Clasen  <mclasen@redhat.com>
146
147         * glib/gutils.c (g_listenv): Ignore anomalous environment
148         entries which are not of the form variable=value.  (#309859,
149         Morten Welinder)
150
151 2005-07-09  Tor Lillqvist  <tml@novell.com>
152
153         * glib/giowin32.c: Totally rewritten socket channel
154         implementation. See discussion in bug #147392.
155
156         * configure.in: Don't use autoconf variables for the resource
157         object files on Win32 any longer. Instead handle that in the
158         Makefile.am files. Check for windres.
159
160         * glibconfig.h.win32.in: Minor tuning to match the
161         configure-produced glibconfig.h closely.
162
163         * glib/Makefile.am: Don't use the scripts in build/win32 to
164         compile glib.rc into a resource object file. (This means we lose
165         the build number increment magic, but I doubt it was that useful
166         anyway.) Instead use windres directly. To pass the normal .o file
167         produced by windres through libtool, which wants .lo files, pass
168         it directly to the linker using a -Wl option.
169
170         * glib/glib.rc.in: Thus replace BUILDNUMBER with 0.
171
172 2005-07-08  Matthias Clasen  <mclasen@redhat.com>
173
174         * configure.in: Bump version
175         
176         * === Released 2.7.2 ===
177
178         * NEWS: Updates
179
180 2005-07-07  Matthias Clasen  <mclasen@redhat.com>
181
182         * configure.in: Make the size_t size detection work on AIX. 
183         (#309725)
184
185 2005-07-06  Matthias Clasen  <mclasen@redhat.com>
186
187         * configure.in: Require a newer gtk-doc.
188
189 2005-07-01  Hans Breuer  <hans@breuer.org>
190
191         * glib/gmessages.c : include <process.h> for getpid()
192         * glib/gmappedfile.c : include <io.h> for close() etc.
193         * glib/makefile.msc.in : add    gmappedfile.obj
194
195 2005-07-01  Matthias Clasen  <mclasen@redhat.com>
196
197         * glib/gkeyfile.c (g_key_file_get_key_comment): 
198         (g_key_file_get_top_comment): Don't reverse the order of multiline 
199         comments.
200         (g_key_file_get_group_comment): Actually get the group comment.
201
202         * tests/keyfile-test.c (test_comments): Test that comments are
203         handled properly.  (#309263, Mikael Magnusson)
204
205 2005-06-30  Matthias Clasen  <mclasen@redhat.com>
206
207         * configure.in: Bump version
208
209         * === Released 2.7.1 ===
210
211 2005-06-30  Matthias Clasen  <mclasen@redhat.com>
212
213         * glib/gstring.c (g_str_hash): Fix portability issues.  
214         (#307064, Morten Welinder)
215
216         Apply a patch which may make GLib work on BeOS again.  
217         (#309157, Kian Duffy)
218
219         * glib/gmain.c: Update the BeOS includes.
220
221         * glib/gstdio.c: 
222         * glib/gutils.c (g_find_program_in_path): 
223         * glib/gbacktrace.c (g_on_error_stack_trace): Use the UNIX
224         implementation on BeOS, as well.
225
226         * configure.in: Don't put glib 1.0 into G_MODULE_LIBS, even
227         on BeOS.
228
229         * NEWS: Updates
230
231 2005-06-26  Tor Lillqvist  <tml@novell.com>
232
233         * glib/Makefile.am: libtool installs/uninstalls the import
234         library, no need to do it ourselves. Do still install/uninstall
235         the .def file, though.
236
237         * glib/gmappedfile.c: Add Win32 implementation.
238         (g_mapped_file_free): Don't mention writable shared mappings in
239         the doc comment. Free the GMappedFile struct.
240
241         * tests/mapping-test.c (main): No kill() or SIGUSR1 on Win32, use
242         a flag file instead to stop the child. Use g_usleep() instead of
243         sleep().
244
245 2005-06-24  Matthias Clasen  <mclasen@redhat.com>
246
247         Add an mmap() wrapper called GMappedFile. (#148218,
248         David Schleef, Behdad Esfahbod)
249         
250         * glib/gmappedfile.[hc]: New files.
251
252         * configure.in: Check for mmap.
253         
254         * glib/Makefile.am: Add new files.
255         
256         * glib/glib.symbols: Add new functions.
257
258         * glib/glib.h: Include gmappedfile.h
259
260         * tests/mapping-test.c: Tests for GMappedFile.
261
262         * tests/Makefile.am: Add new file.
263
264         * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Add --enable-man.
265
266 2005-06-24  Tor Lillqvist  <tml@novell.com>
267
268         * glib/Makefile.am (install-libtool-import-lib): Current GNU tools
269         do understand the PRIVATE keyword.
270
271         * glib/gfileutils.c (g_mkdir_with_parents): Return error with
272         EINVAL also for empty pathnames.
273         (g_build_pathname_va): Fix typo.
274
275 Thu Jun 23 15:52:08 2005  Manish Singh  <yosh@gimp.org>
276
277         * glib/gfileutils.c: g_build_filename_va is only use in the G_OS_WIN32
278         case, so compile it conditionally.
279
280 2005-06-23  Matthias Clasen  <mclasen@redhat.com>
281
282         * tests/keyfile-test.c (test_group_remove): Don't leak
283         memory here.
284
285         * glib/gkeyfile.c (g_key_file_load_from_data_dirs): Don't
286         leak output_path.  (#308546, Kjartan Maraas)
287
288         * glib/glib.symbols: 
289         * glib/gfileutils.h: 
290         * glib/gfileutils.c (g_build_pathv, g_build_filenamev): 
291         Variants of g_build_path() and g_build_filename()
292         which take a string array instead of varargs.  
293         (#149092, Todd A. Fisher)
294
295         * tests/strfunc-test.c: Add tests for g_build_pathv() 
296         and g_build_filenamev().
297
298 2005-06-22  Tor Lillqvist  <tml@novell.com>
299
300         * glib/gfileutils.c
301         * glib/gfileutils.h
302         * glib/glib.symbols
303         * tests/testglib.c: Rename g_makepath() to g_mkdir_with_parents().
304
305 2005-06-22  Matthias Clasen  <mclasen@redhat.com>
306
307         * glib/goption.c (parse_short_option, parse_long_option): 
308         Pass the option name also in the NO_ARG case.  (#308602,
309         Masatake YAMATO)
310         (parse_arg): Properly store changes for arrays.  (#308528,
311         Roger Leigh)
312
313 2005-06-22  Tor Lillqvist  <tml@novell.com>
314
315         * glib/gfileutils.c (g_makepath): New function. Creates a
316         directory including intermediate parent directories as
317         needed. (#60509)
318
319         * glib/gfileutils.h: Declare it.
320
321         * glib/gutils.c (g_get_host_name): New function. Returns the
322         machine's name, or one of its names. Document that it is
323         best-effort only, and not guaranteed to be unique or anything.
324         (g_get_any_init): Get the host name here. On Unix use
325         gethostname(), on Windows use GetComputerName(). (#5200)
326
327         * glib/gutils.h: Declare it.
328
329         * glib/glib.symbols: Add new functions.
330
331         * tests/testglib.c: Test g_makepath() and g_get_host_name().
332         
333 2005-06-18  Matthias Clasen  <mclasen@redhat.com>
334
335         * glib/goption.h: 
336         * glib/goption.c: Add G_OPTION_FLAG_NO_ARG and
337         G_OPTION_FLAG_FILENAME to allow greater control of
338         G_OPTION_ARG_CALLBACK options. (#302632, Dan Winship)
339
340         * tests/option-test.c: test callback args
341
342 2005-06-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>
343
344         * configure.in: Added 'th' (Thai) to ALL_LINGUAS.
345
346 2005-06-10  Matthias Clasen  <mclasen@redhat.com>
347
348         * configure.in: Bump version
349
350         * === Released 2.7.0 ===
351
352         * NEWS: Updates
353
354 2005-06-09  Matthias Clasen  <mclasen@redhat.com>
355
356         * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Better
357         error checking. (#306389, Morten Welinder)
358
359         * glib/goption.c (parse_int): Set errno to 0 before calling
360         strtol.  (#306388, Morten Welinder)
361
362 2005-06-09  Tor Lillqvist  <tml@novell.com>
363
364         * glib/gstdio.h
365         * glib/gstdio.c
366         * glib/glib.symbols: Add a chdir() wrapper, too.
367
368         * glib/glib.symbols: Add g_win32_locale_filename_from_utf8().
369
370         * glib/gwin32.c (g_win32_locale_filename_from_utf8): Clarify doc
371         comment.
372
373 2005-06-08  Tor Lillqvist  <tml@novell.com>
374
375         * glib/gutils.c (get_windows_directory_root): New helper function
376         on Win32, returns the root of the drive (or possibly share) where
377         the Windows directory is. (In the case of Terminal Server sessions
378         the Windows directory is a per-user folder.)
379         (g_get_any_init): Use get_windows_directory_root() as last resort
380         for both temp directory and home directory. g_get_home_dir() now
381         never returns NULL on Win32. Don't look at HOMEDRIVE and
382         HOMEPATH. HOME, USERPROFILE, CSIDL_PROFILE and Windows directory
383         drive root should be enough.
384
385 2005-06-08  Matthias Clasen  <mclasen@redhat.com>
386
387         * glib/glib.symbols: 
388         * glib/gunicode.h: 
389         * glib/gunicollate.c (g_utf8_collate_key_for_filename): 
390         New function to calculate collation keys which are more
391         suitable for sorting filenames.  (#172690, Ole Laursen)
392
393 Fri May 27 17:18:00 2005  Manish Singh  <yosh@gimp.org>
394
395         * glib/goption.c (parse_short_option): initialize option_name
396         before using it.
397
398 2005-05-27  Matthias Clasen  <mclasen@redhat.com>
399
400         * glib/goption.c (parse_short_option, parse_long_option):
401         Return an error if an option is missing its argument.  (#305576,
402         Björn Lindqvist)
403
404         * tests/option-test.c (missing_arg_test): Add a testcase.
405
406 Wed May 25 15:33:51 2005  Manish Singh  <yosh@gimp.org>
407
408         * glib/goption.c (print_help): rest_description should be const.
409
410 2005-05-25  Matthias Clasen  <mclasen@redhat.com>
411
412         * glib/gunidecomp.c (combine_hangul): Don't eat Hangul 
413         when normalizing.  (#301742, reported by Christian Biere,
414         patch by Noah Levitt)
415
416 2005-05-24  Matthias Clasen  <mclasen@redhat.com>
417
418         * glib/goption.c (print_help): If the remaining argument
419         has an arg_description, display the synopsis as
420         PROGNAME [OPTION...] REST  (#305346, Noah Levitt)
421
422 2005-05-20  Federico Mena Quintero  <federico@ximian.com>
423
424         Merged from glib-2-6:
425
426         * glib/gspawn.c (g_spawn_command_line_sync): Clarify the meaning
427         of exit_status(); it's not the return code from the child, but
428         rather the waitpid() status.
429
430 2005-05-18  Matthias Clasen  <mclasen@redhat.com>
431
432         * glib/gunidecomp.c: Correct the end of the Hangul 
433         Syllables range, from 0xd7af to 0xd7a3, in several
434         places.  (#301984, Changwoo Ryu)
435
436 2005-05-17  Matthias Clasen  <mclasen@redhat.com>
437
438         * tests/tree-test.c (main): Check the return values of
439         g_tree_remove().
440
441         * glib/gtree.c (g_tree_remove, g_tree_steal): Return
442         a boolean indicating wether the key was found.  (#302545,
443         Matthew F. Barnes)
444
445 2005-05-06  Brian Cameron  <brian.cameron@sun.com>
446
447         * configure.in, gmodule-no-export-2.0-uninstalled.pc.in,
448           Makefile.am:  Added gmodule-no-export-2.0-uninstalled.pc.in
449           to allow building of other libraries like pango when 
450           glib is uninstalled.
451
452 2005-05-06  Matthias Clasen  <mclasen@redhat.com>
453
454         * tests/option-test.c: Add a testcase.
455         
456         * glib/goption.c (g_option_context_parse): Treat '-'
457         on its own as a non-option argument.  (#168008, Tim Musson,
458         Thomas Leonard and others)
459
460 2005-05-05  Owen Taylor  <otaylor@redhat.com>
461
462         * glib/gdataset.[ch] glib/gdatasetprivate.h: Add 
463         g_datalist_set/unset_flags(), g_datalist_get_flags() functions
464         to squeeze some bits into a GDataSet... this is needed for
465         efficient implementation of toggle references in GObject.
466
467         * tests/gobject/references.c tests/gobject/Makefile.am:
468         Add a test case for weak and toggle references.
469
470         * glib/gfileutils.[ch]: Rename g_file_replace() back
471         to g_file_set_contents().
472
473         * glib/glib.symbols: Update.
474
475 2005-05-02  Matthias Clasen  <mclasen@redhat.com>
476
477         * glib/gstring.c (g_str_equal, g_str_hash): Move docs
478         inline.
479
480 2005-05-01  Matthias Clasen  <mclasen@redhat.com>
481
482         * glib/ghash.h: Rename some parameters to make gtk-doc
483         happy.
484
485         * glib/gutils.c: 
486         * glib/gwin32.c: 
487         * glib/gstdio.c: Fix some typos, mark new API as "Since 2.8".
488
489 2005-04-29  Matthias Clasen  <mclasen@redhat.com>
490
491         * glib/gtree.c: Clarify some docs. (#302062, Matthew F. Barnes)
492
493 2005-04-28  Matthias Clasen  <mclasen@redhat.com>
494
495         * glib/gstrfuncs.c (g_strcompress): Warn and don't crash
496         when meeting a trailing \\.  (#301373, Benjamin Otte)
497
498 2005-04-27  Tor Lillqvist  <tml@novell.com>
499
500         * glib/gconvert.c (open_converter, g_convert_with_iconv): Don't
501         call g_set_error() unless the GError pointer is non-NULL. This
502         avoids infinite recursion problems in certain rare situations on
503         Windows, when g_locale_from_utf8() is called from
504         _glib_get_locale_dir() after the change below. It's the
505         _glib_gettext() calls to translate error messages that are
506         parameters to g_set_error() that cause the recursion, not
507         g_set_error() itself.
508
509         * glib/gwin32.c (g_win32_locale_filename_from_utf8): New
510         function. Converts a filename to the system codepage, and if a
511         straight conversion isn't possible (because the filename contains
512         characters not in the system codepage), try looking up the
513         filename (which should refer to an existing file for this to
514         succeed) with short (8.3) pathname components.
515
516         * glib/gutils.c (_glib_get_locale_dir): No need to cache the
517         result, this function is normally called only once. Return the
518         path to the locale directory in system codepage, not UTF-8. The
519         path is passed to bindtextdomain(), which doesn't use UTF-8 file
520         names. Use g_win32_locale_filename_from_utf8(). (#301772)
521
522         Don't do run-time lookup of message catalog directory on
523         Cygwin. Cygwin is supposed to look and feel like Unix, and on Unix
524         we use paths fixed at configure time.
525
526 2005-04-19  Tor Lillqvist  <tml@novell.com>
527
528         * glib/gutils.h: Minor comment improvement.
529
530 2005-04-18  Tor Lillqvist  <tml@novell.com>
531
532         * glib/gfileutils.c: No <sys/wait.h> on Win32. Definition of
533         save_errno was missing in one place.
534
535 Sat Apr 16 20:15:44 2005  Soeren Sandmann  <sandmann@redhat.com>
536
537         * glib/gfileutils.c (g_file_replace): Save the errno in various
538         places
539
540         * glib/gfileutils.c (set_umask_permissions): Fork a child and do
541         chmod() to the umask() permissions there.
542
543 2005-04-10  Matthias Clasen  <mclasen@redhat.com>
544
545         * glib/gmessages.h (g_debug): Use G_LOG_LEVEL_DEBUG in
546         both definitions.  (#300071, Tommi Komulainen)
547
548 2005-04-09  Tor Lillqvist  <tml@novell.com>
549
550         * glib/gutils.c: Include <process.h> on Win32 for getpid(). (#173094)
551
552 2005-04-08  Tor Lillqvist  <tml@novell.com>
553
554         * glib/gstdio.h
555         * glib/gstdio.c
556         * glib/glib.symbols (g_access, g_chmod, g_creat): Wrap also
557         access(), chmod() and creat(). (#169623, #171285)
558
559 2005-04-08  Tor Lillqvist  <tml@novell.com>
560
561         Improve g_get_system_data_dirs() on Windows. A library that calls
562         g_get_system_data_dirs() might be installed in a different
563         top-level prefix than GLib or the application being run.
564
565         * glib/gutils.h (g_win32_get_system_data_dirs): New static
566         function defined in this header. Calls
567         g_win32_get_system_data_dirs_for_module() passing the address of
568         itself as parameter. g_get_system_data_dirs() is #defined as this
569         function.
570
571         * glib/gutils.c (g_win32_get_system_data_dirs_for_module): New
572         function. If the address parameter is non-NULL, the corresponding
573         module's installation location is used for one of the returned
574         path names, in addition to the COMMON_APPDATA, COMMON_DOCUMENTS,
575         glib top-level and application top-level folders.
576         (g_get_system_data_dirs): Now just for backward compatibility on
577         Win32. Just call g_win32_get_system_data_dirs_for_module(NULL).
578
579         * glib/glib.symbols: Add g_win32_get_system_data_dirs_for_module.
580
581         * glib/gutils.c (read_aliases): Not used on Windows.
582         (unalias_lang): Don't do anything on Windows, there is no
583         /usr/share/locale/locale.alias file..
584         
585 Thu Apr  7 22:51:15 2005  <yosh@gimp.org>
586
587         * glib/gutils.c (g_get_system_data_dirs): Declare glib_top_share_dir
588         and exe_top_share_dir only in G_OS_WIN32.
589
590 2005-04-08  Tor Lillqvist  <tml@novell.com>
591
592         * glib/gutils.c (g_get_system_data_dirs): After investigating more
593         closely the actual use cases of this function, I understand better
594         what it needs to do on Windows. In addition to the Windows
595         COMMON_APPDATA and COMMON_DOCUMENTS folders, also return the
596         "share" subfolders of GLib's installation location and the
597         application .exe's installation location, hoping that either
598         matches what the function's caller is looking for.
599
600         * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME): Use wide char API
601         if available, and store dll name in UTF-8.
602
603 2005-04-05  Matthias Clasen  <mclasen@redhat.com>
604
605         * glib/gfileutils.c (get_contents_stdio): Avoid memory 
606         leaks in borderline cases.  (#172612, Morten Welinder)
607
608 2005-04-04  Matthias Clasen  <mclasen@redhat.com>
609
610         * glib/gconvert.c: Clarify docs in some places. (#172404, 
611         Morten Welinder)
612
613 2005-04-03  Matthias Clasen  <mclasen@redhat.com>
614
615         * glib/gutils.h: Undef G_CAN_INLINE if G_IMPLEMENT_INLINES is 
616         defined. This was the pre-2.6 behaviour, and without it,
617         G_IMPLEMENT_INLINES cannot be used in multiple .c files
618         at all.  (#165852, Dave Benson)
619
620 2005-04-01  Matthias Clasen  <mclasen@redhat.com>
621
622         * glib/gmain.c (g_child_watch_source_new): Add a note regarding
623         waitpid(-1).
624         (g_child_watch_source_init_multi_threaded): 
625         (g_child_watch_source_init_single): Don't use SA_RESTART,
626         since it causes problems on at least one platform. (#168352)
627
628 2005-03-30  Steve Murphy  <murf@e-tools.com>
629
630         * configure.in: Added "rw" to ALL_LINGUAS.
631
632 2005-03-30  Sven Neumann  <sven@gimp.org>
633
634         * glib/gfileutils.c (get_contents_stdio): handle the unlikely case
635         that no bytes are read from the file and allocate an empty string.
636
637 2005-03-30  Tor Lillqvist  <tml@novell.com>
638
639         * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Always claim
640         file descriptors open to devices are readable, since we can't
641         know. fstat() doesn't give any useful information. (#145326)
642
643 2005-03-29  Tor Lillqvist  <tml@novell.com>
644
645         * glib/gmain.c (g_poll): [Win32] If the event fired, assign
646         f->revents=f->events. We can't know whether the upper layer using
647         the event actually is readable, writeable or what, so say that all
648         the conditions hold. Remove the ResetEvent() call that has been
649         ifdeffed out anyway for a long time. Remove an "#ifdef 1" and
650         #endif pair of lines, that code is not optional.
651         (g_get_current_time): [Win32] Use GetSystemTimeAsFileTime()
652         instead of time() and GetTickCount(). Much simpler.
653
654 2005-03-28  Matthias Clasen  <mclasen@redhat.com>
655
656         * tests/date-test.c: 
657         * tests/testgdate.c: Add tests for 
658         g_date_get_iso8601_week_of_year().
659
660         * glib/gdate.c (g_date_get_iso8601_week_of_year): 
661         Fix the calculation.  (#169858, Jon-Kare Hellan)
662
663 2005-03-27  Tor Lillqvist  <tml@novell.com>
664
665         * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
666         after all, and in fact necessary with HEAD libtool.
667
668 2005-03-23  Tor Lillqvist  <tml@novell.com>
669
670         * glib/gutils.c (g_getenv): [Win32] Fix corner case bug when
671         environment variable value is exactly one character.
672
673 2005-03-21  Matthias Clasen  <mclasen@redhat.com>
674
675         * glib/glib.symbols: Add g_try_malloc0
676
677         * glib/gmem.h: Add g_try_new, g_try_new0, g_try_renew and
678         g_try_malloc0.  (#169611, Stefan Kost)
679
680         * glib/gmem.c: Implement g_try_malloc0.
681
682 2005-03-20  Tor Lillqvist  <tml@novell.com>
683
684         * glib/gspawn-win32.c (do_spawn_with_pipes): Close the process
685         handle if the caller doesn't want it also in the case without a
686         helper process.
687         (g_spawn_sync): Don't ask for a child pid which we don't need.
688
689         * glib/gtimer.c: On Win32, use GetSystemTimeAsFileTime() instead
690         of GetTickCount(). (#159507)
691
692         * glib/gmessages.c (g_log_default_handler)
693         * glib/gutils.c (g_get_prgname): Move the Win32 code that asks the
694         program name from the system to g_get_prgname(). Do output the pid
695         also on Win32 (useful in case there are several instances of the
696         same program running).
697
698         * tests/testglib.c (main): Print more detailled output from the
699         timer tests. Don't print home directory twice. Test
700         g_win32_error_message().
701
702         * tests/spawn-test.c (run_tests): On Win32, run netstat instead of
703         ipconfig. On Windows XP collecting output from ipconfig doesn't
704         seem to work for some reason.
705
706 2005-03-18  Hans Breuer  <hans@breuer.org>
707
708         * glib/makefile.msc.in : handle galiasdef.c (although completely 
709         useless for msvc build)
710
711         * glib/gbacktrace.c glib/gmessage.c : need at least _WIN_VER 0x0401
712         for IsDebuggerPresent()
713
714 2005-03-17  Matthias Clasen  <mclasen@redhat.com>
715
716         * glib/gkeyfile.c: Update the documentation, reflecting the
717         fact that the special case for !group_name --> start_group
718         got removed.  (#170566, Tim-Philipp Müller)
719
720 2005-03-15  Matthias Clasen  <mclasen@redhat.com>
721
722         * glib/goption.c (g_option_context_set_main_group): Warn 
723         if there already is a main group.  (#170445, Jeff Franks)
724
725 Sun Mar 13 22:01:17 2005  Manish Singh  <yosh@gimp.org>
726
727         * tests/array-test.c: delete a bunch of dead code.
728
729 Sun Mar 13 21:28:47 2005  Manish Singh  <yosh@gimp.org>
730
731         * glib/gdataset.c: remove spurious IA prefix from g_quark_try_string.
732
733 2005-03-13  Matthias Clasen  <mclasen@redhat.com>
734
735         * glib/gatomic.c:
736         * glib/gcache.c: Small fixes to the previous commit.
737
738 2005-03-13  Matthias Clasen  <mclasen@redhat.com>
739
740         Make PLT-reduction work with gcc4, and don't include
741         everything in galias.h:
742         
743         * glib/glib.symbols: Group symbols by header and source file.
744         * glib/makegalias.pl: Protect definitions by the same 
745         preprocessor symbols used to guard the headers. Move
746         the alias declarations to a separate file which is 
747         produced when calling makegalias.pl -def
748         * glib/Makefile.am (galiasdef.c): Add a rule to generate this
749         file.
750         * glib/*.c: Include galias.h after the other GLib headers,
751         include galiasdef.c at the bottom.
752
753         * glib/glib.symbols: Add g_listenv and g_file_replace.
754
755 Fri Mar 11 23:51:12 2005  Soeren Sandmann  <sandmann@redhat.com>
756
757         * glib/gfileutils.c (write_to_temp_file): Don't try and generate
758         a dotfile from the name -- it doesn't work with absolute
759         paths. Also make documentation indicate that symlinks will be
760         overwritten. Both pointed out by Alexis S. L. Carvalho.
761
762 2005-03-11  Matthias Clasen  <mclasen@redhat.com>
763
764         * m4macros/glib-gettext.m4: Avoid stupid compiler complaints
765         about precision loss.
766
767 2005-03-10  Matthias Clasen  <mclasen@redhat.com>
768
769         * glib/gdate.c: Remove a lot of pointless g_return_if_fail()
770         checks.  (#169859, Morten Welinder)
771
772 2005-03-10  Sven Neumann  <sven@gimp.org>
773
774         * tests/file-test.c: include <gstdio.h>.
775
776 2005-03-10  Sven Neumann  <sven@gimp.org>
777
778         * glib/gfileutils.c (get_contents_stdio): delay memory allocation
779         until after the first read. Saves a bunch of reallocs. Also
780         increased the buffer size to 4096 bytes. (bug #165954)
781
782         * tests/file-test.c (test_get_contents): added a (very basic) test
783         for g_file_get_contents().
784
785 Wed Mar  9 19:06:45 2005  Manish Singh  <yosh@gimp.org>
786
787         * glib/glib.symbols: Add g_file_replace.
788
789 2005-03-09  Matthias Clasen  <mclasen@redhat.com>
790
791         * configure.in: Bump version
792
793 2005-03-09  Sven Neumann  <sven@gimp.org>
794
795         * glib/gfileutils.c (g_file_replace): avoid unnecessary filename
796         conversions.
797
798 2005-03-09  Tor Lillqvist  <tml@novell.com>
799
800         * glib/gutils.c (g_get_user_data_dir, g_get_user_config_dir,
801         g_get_user_cache_dir, g_get_system_data_dirs,
802         g_get_system_config_dirs): [Win32] Don't leak return value from
803         get_special_folder(). (#169348, Daniel Atallah) Guard against
804         g_home_dir being NULL, use g_tmp_dir/g_user_name in that case.
805
806 Tue Mar  8 15:46:54 2005  Søren Sandmann  <sandmann@redhat.com>
807
808         * glib/gfileutils.c (g_file_replace): New API. A function to
809         atomically create a file.
810
811 2005-03-08  Matthias Clasen  <mclasen@redhat.com>
812
813         * glib/glib.symbols: Add the new attributes here too.
814
815         * glib/gmacros.h: Define G_GNUC_NULL_TERMINATED.
816         (#164706, Marc Meissner)
817
818         * glib/gstrfuncs.h: 
819         * glib/gfileutils.h: Use G_GNUC_NULL_TERMINATED where
820         appropriate.
821
822         * glib/goption.c (parse_int): Fix an error message.  
823         (#168751, Hazael Maldonado Torres)
824
825 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
826
827         * glib/gdebug.h: Small cleanup (use G_BEGIN/END_DECLS).
828         (#168474, Fabricio Barros Cabral)
829
830 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
831
832         * glib/gutils.c (g_find_program_in_path): Mark the last
833         paragraph of the docs as Windows-specific.  (#169433)
834
835 2005-03-06  Matthias Clasen  <mclasen@redhat.com>
836
837         * glib/gmarkup.c: Add G_GNUC_PRINTF attribute
838         to set_error.
839         (g_markup_parse_context_end_parse): Fix an
840         error message, noticed by Tim Janik.
841
842 2005-02-24  Tor Lillqvist  <tml@novell.com>
843
844         * glib/Makefile.am (BUILT_EXTRA_DIST): Don't distribute
845         glib.def. (#167496, J. Ali Harlow)
846
847         * glib/gfileutils.c (get_contents_win32): Use g_fopen(). (#168341,
848         Daniel Atallah)
849
850 2005-02-23  Matthias Clasen  <mclasen@redhat.com>
851
852         * configure.in: Don't forget to set G_THREAD_LIBS_FOR_GTHREAD 
853         on non-linux platforms.  (#168177, Michael Banck)
854
855         * tests/keyfile-test.c (test_locale_string): Set LANGUAGE 
856         instead of LC_ALL to shield against LANGUAGE being set in 
857         the environment.  (#168311, Suren A. Chilingaryan)
858
859 Tue Feb 22 22:03:38 2005  Manish Singh  <yosh@gimp.org>
860
861         * glib/gstdio.h: On G_OS_UNIX, simple #define g_open and co. as
862         aliases for their respective C library functions, instead of
863         using the function wrappers. This avoids library users having to
864         care about matching large file support with whatever glib has been
865         built with. Fixes bug #167942.
866
867         * glib/gstdio.c
868         * glib/abicheck.sh
869         * glib/glib.symbols
870         * glib/makegalias.pl: Logic to make the gstdio wrappers still
871         available for compatibility, but not used in new code.
872
873 Tue Feb 22 18:33:07 2005  Manish Singh  <yosh@gimp.org>
874
875         * glib/gtimer.c (g_usleep): Simplify the loop for the fix below.
876
877 2005-02-20  Matthias Clasen  <mclasen@redhat.com>
878
879         * glib/gqueue.c (g_queue_new): Use a memchunk for
880         sizeof(GQueue)-sized chunks.  (#167984, Fabrício Barros Cabral)
881
882         * glib/gtimer.c (g_usleep): Fix usage of 
883         nanosleep().  (#163039, Bastien Nocera)
884
885 2005-02-16  Adi Attar  <aattar@cvs.gnome.org>
886
887         * configure.in: Added "xh" to ALL_LINGUAS.
888
889 2005-02-11  Tor Lillqvist  <tml@novell.com>
890
891         * glib/giowin32.c: Include winsock2.h before windows.h, to avoid
892         compilation errors with MSVC. (#167105)
893
894 2005-02-10  Matthias Clasen  <mclasen@redhat.com>
895
896         * glib/goption.c (print_help): Take main group options into
897         account when calculating column size.  (#166921)
898         (g_option_context_parse): Accept -? as documented.  (#166977)
899
900 2005-02-09  Matthias Clasen  <mclasen@redhat.com>
901         * glib/gkeyfile.c (find_file_in_data_dirs): Don't leak path
902         here.  (#166801, Kjartan Maraas)
903
904 2005-02-08  Matthias Clasen  <mclasen@redhat.com>
905
906         * glib/gkeyfile.c (g_key_file_parse_value_as_string): Don't
907         write out of bounds.
908
909         * glib/goption.c (g_option_context_parse): Fix a 
910         one-too-short memory allocation.  (#166609, Nicolas Laurent)
911
912         * tests/Makefile.am (TESTS_ENVIRONMENT): Add tests with
913         MALLOC_CHECK_.
914
915         * tests/option-test.c: Add a test for unkown short options.
916
917 2005-02-07  Matthias Clasen  <mclasen@redhat.com>
918
919         * glib/glib.symbols: 
920         * glib/gutils.h: 
921         * glib/gutils.c (g_listenv): New function to list all 
922         environment variables.  (#166327, Hans Petter Jansson)
923
924 2005-02-07  Tor Lillqvist  <tml@novell.com>
925
926         * glib-zip.in: Add gmodule-no-export-2.0.pc.
927
928 Sun Feb  6 21:59:09 2005  Manish Singh  <yosh@gimp.org>
929
930         * glib/abicheck.sh: feed the contents of config.h and glibconfig.h
931         into the preprocessor, since glib.symbols could need #defines
932         from them.
933
934 Sun Feb  6 12:09:55 2005  Manish Singh  <yosh@gimp.org>
935
936         * glib/gatomic.c: Don't use matching constraints for asm mem
937         parameters. This makes the code match with current glibc, and
938         quiets some warnings with gcc 3.4.
939
940 2005-02-05  Tor Lillqvist  <tml@novell.com>
941
942         * configure.in (G_LIBS_EXTRA)
943         * glib/giowin32.c: I think we can include <winsock2.h> and link
944         with -lws2_32. Only Windows 95 originally didn't have Winsock 2,
945         and it's available as an update for it. Not that we use any actual
946         Winsock 2 -only features, but still, simpler to link directly with
947         ws2_32.dll instead of going through wsock32.dll.
948
949         * glib/gfileutils.c (g_file_get_contents): In the Win32 ABI
950         stability version, call g_file_get_contents_utf8(), not
951         itself. (#166386, Bill Skaggs)
952
953 2005-02-04  Matthias Clasen  <mclasen@redhat.com>
954
955         * configure.in: Remove the --enable-ansi option  (#160469)
956
957         * configure.in: Define a HAVE_GNUC_VISIBILITY automake
958         conditional.
959
960         * glib/Makefile.am (TESTS): Only check the abi if
961         the compiler supports visibility, otherwise we
962         know there will be (harmless) extra symbols.  
963         (#166181, Ed Avis)
964
965 2005-02-02  Tor Lillqvist  <tml@novell.com>
966
967         * glib/gwin32.h: Remove unnecessary MSVC-only typedef for
968         pid_t. (#165910) GLib does not pretend to be a POSIX emulation
969         library.
970
971         * glib/gstdio.c: In the Win32 part of all functions, handle
972         invalid UTF-8 more robustly. Don't pass the resulting NULL
973         wide-char or codepage strings on to C library functions, but bail
974         out early. (#166084)
975
976         * glib/gfileutils.c: Don't use potentially incorrect errno in
977         several places. (#165951)
978         (g_mkstemp): Set errno appropriately.
979
980 2005-02-02  Matthias Clasen  <mclasen@redhat.com>
981
982         * glib/gutils.c: Move doc comments inline.
983
984         * glib/ghash.h: Adjust some argument names.
985
986         * configure.in: Give meaningful names to g_memmove() 
987         arguments.
988
989 2005-02-01  Matthias Clasen  <mclasen@redhat.com>
990
991         * tests/keyfile-test.c (test_key_remove): Add test case for
992         key removal.
993
994         * glib/gkeyfile.c (g_key_file_remove_key): Actually remove 
995         the key from the list of pairs.  (#165980, David Hoover)
996
997         * glib/gkeyfile.c: Doc clarifications.  (#165907, Vincent Untz)
998
999         * tests/keyfile-test.c (test_group_remove): Add test case for
1000         group removal.
1001
1002         * glib/gkeyfile.c (g_key_file_remove_group): Don't segfault
1003         if the group doesn't exist.  (#165887, Mathias Hasselmann)
1004
1005 2005-01-30  Matthias Clasen  <mclasen@redhat.com>
1006
1007         * tests/keyfile-test.c: Some more unit tests.
1008
1009 2005-01-28  Christian Rose  <menthos@menthos.com>
1010
1011         * configure.in: Added "tl" to ALL_LINGUAS.
1012
1013 2005-01-24  Matthias Clasen  <mclasen@redhat.com>
1014
1015         * tests/run-markup-tests.sh: Let $srcdir default to .
1016
1017         * tests/markups/fail-40.gmarkup: Add a test with a long entity
1018         name.
1019
1020         * glib/gmarkup.c (unescape_text_state_inside_entity_name): Don't
1021         copy the entity name into a short buffer of fixed length. Instead,
1022         compare it in place with strncmp(), and do a full strdup() in the
1023         error path.  (#165100, Simon Budig)
1024
1025 2005-01-22  Tor Lillqvist  <tml@novell.com>
1026
1027         * glib/gdate.c (g_date_set_time): Don't g_assert that localtime()
1028         returns non-NULL. It does return NULL at least on Win32 if you
1029         pass it a negative time_t, which although wrong, shouldn't cause
1030         an application to abort. Instead return 2000-01-01 as a default
1031         date. Print a warning unless G_DISABLE_CHECKS. (#164622)
1032
1033 2005-01-20  Matthias Clasen  <mclasen@redhat.com>
1034
1035         * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Don't
1036         interpret leading zeros as octal. The specification requires
1037         %f parsing, and %f doesn't allow octal.  
1038
1039         * tests/keyfile-test.c: Add some more tests.
1040
1041         * glib/gkeyfile.c (g_key_file_get_keys): Return keys in
1042         the order found in the file, rather than the opposite.
1043         (g_key_file_parse_value_as_string): Fix error reporting.
1044
1045 2005-01-19  Matthias Clasen  <mclasen@redhat.com>
1046
1047         * glib/gkeyfile.c (g_key_file_parse_data): Accept \r\n as 
1048         line end.  (#163030, Bastian Nocera)
1049         (g_key_file_load_from_data): Make -1 work as a size.
1050         
1051         * tests/keyfile-test.c: Some unit tests for the keyfile
1052         parser.  
1053
1054         * tests/Makefile.am (test_programs): Add keyfile-test.
1055
1056 2005-01-19  Tor Lillqvist  <tml@novell.com>
1057
1058         * glib/gbacktrace.c (g_on_error_stack_trace): On Win32 call
1059         G_BREAKPOINT() if being debugged.
1060
1061         * glib/gmessages.c (g_logv): For fatal messages on Win32, use
1062         G_BREAKPOINT() also without G_ENABLE_DEBUG, but only if being
1063         debugged. Suggestion by Ulf Lamping.
1064
1065 2005-01-18  Matthias Clasen  <mclasen@redhat.com>
1066
1067         * glib/gqsort.c: Don't include alloca.h. It is not needed,
1068         and does not exist on win32.  (#164468, Kazuki IWAMOTO)
1069
1070         * glib/gkeyfile.c (g_key_file_get_boolean_list): Fix a
1071         sparse warning.  (#164467, Kjartan Maraas)
1072
1073 2005-01-17  Matthias Clasen  <mclasen@redhat.com>
1074
1075         * glib/gconvert.c (g_get_filename_charsets): Don't crash
1076         if G_FILENAME_ENCODING is empty.  (#164330, Pawel Sakowski)
1077
1078 2005-01-15  Tor Lillqvist  <tlillqvist@novell.com>
1079
1080         * configure.in: sh portability fix. Use "test" and not [.
1081         (#163144, Robert Ögren)
1082
1083 2005-01-13  Matthias Clasen  <mclasen@redhat.com>
1084
1085         * glib/gqsort.c: Sync to glibc.  (#133994, Morten Welinder, 
1086         patch by Kjartan Maraas)
1087
1088 2005-01-11  Owen Taylor <otaylor@redhat.com>
1089
1090         * configure.in: Add gmodule-export-2.0.pc to AC_CONFIG_FILES.
1091
1092         * glib/Makefile.am gobject/Makefile.am gthread/Makefile.am:
1093         Use grep | head -n 1 instead of grep -m 1 which doesn't work
1094         with slightly older versions of GNU grep in 
1095         install-libtool-import-lib rule.
1096
1097 2005-01-11  Matthias Clasen  <mclasen@redhat.com>
1098
1099         * glib/gdir.c (g_dir_open): Typo fix.
1100
1101 2005-01-10  Owen Taylor  <otaylor@redhat.com>
1102
1103         * Makefile.am (EXTRA_DIST): Add missing ChangeLog.pre*
1104
1105 2005-01-09  Hans Breuer  <hans@breuer.org>
1106
1107         * glib/gfileutils.c : make it compile with mvc6 default sdk,
1108         (#define INVALID_FILE_ATTRIBUTES, FILE_ATTRIBUTE_DEVICE)
1109
1110 2005-01-09  Tor Lillqvist  <tlillqvist@novell.com>
1111
1112         * glib/gwin32.c: Include also wchar.h for wcslen on
1113         Cygwin.
1114         (g_win32_error_message): Fix cast. (#163133, Roger Leigh)
1115
1116         * glib/gfileutils.c: Include <io.h> on Windows for
1117         prototypes. (#163390, Kazuki Iwamoto)
1118
1119 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
1120
1121         * NEWS: Typo fixes.
1122
1123         * configure.in: Bump version
1124
1125         * === Released 2.6.1 ===
1126
1127 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
1128
1129         * configure.in: 
1130         * Makefile.am: Generate and distribute gmodule-export-2.0.pc,
1131         which is currently just a copy of gmodule-2.0.pc, but makes
1132         it explicit that it adds --export-dynamic.
1133         
1134         * gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
1135
1136 2005-01-06  Tor Lillqvist  <tml@iki.fi>
1137
1138         * glib/Makefile.am
1139         * gobject/Makefile.am: glib.def and gobject.def are generated, not
1140         in $(srcdir). (#163143, J. Ali Harlow)
1141
1142         * configure.in
1143         * glib/Makefile.am
1144         * gobject/Makefile.am: Win32 cross-compilation fixes. (#163144,
1145         J. Ali Harlow)
1146
1147 2005-01-05  Matthias Clasen  <mclasen@redhat.com>
1148
1149         * glib/gutils.h: Simplify the inlining magic to make it
1150         work at Oh zero.  (#162990, Kalpesh Shah) 
1151
1152 2005-01-04  Tor Lillqvist  <tml@iki.fi>
1153
1154         * glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
1155         instead of setlocale() on Windows. setlocale() returns strings
1156         like "Turkish_Turkey".
1157
1158 2005-01-04  Matthias Clasen  <mclasen@redhat.com>
1159
1160         Fix the inlining magic.  (#157536, Jens Hatlak, and
1161         #149907, Morten Welinder)
1162         
1163         * configure.in: Define G_CAN_INLINE in glibconfig.h
1164
1165         * glib/gutils.h: Streamline the inlining magic a bit,
1166         don't use extern when implementing the non-inlined 
1167         version.
1168
1169 2005-01-03  Matthias Clasen  <mclasen@redhat.com>
1170
1171         * glib/gutils.c (g_find_program_in_path): Don't return
1172         directories.  (#160738, Tommi Komulainen)
1173
1174         * glib/gfileutils.c (g_file_get_contents): Clarify the 
1175         documentation.  (#162251, Mariano Suárez-Alvarez)
1176
1177 2005-01-02  Matthias Clasen  <mclasen@redhat.com>
1178
1179         * glib/gutils.c (g_setenv, g_unsetenv): Clarify the 
1180         docs.  (#162747, Crispin Flowerday)
1181
1182 2005-01-01  J. Ali Harlow  <ali@juiblex.co.uk>
1183
1184         * configure.in: Don't use AC_TRY_RUN to test for long long format
1185         when using the MSVCRT.DLL runtime since we know the answer anyway
1186         and it causes some mild inconvience when cross compiling.
1187
1188         * README.win32: Add a reference to the cross compiling section
1189         of the reference manual.
1190
1191         * docs/reference/glib/cross.sgml: MinGW uses MSVCRT.DLL which
1192         requires %I64i instead of %lli. (#161306)
1193
1194 2005-01-01  Tor Lillqvist  <tml@iki.fi>
1195
1196         * glib/gutils.c: Make the g_getenv() ABI backward compatibility
1197         wrapper more robust.
1198
1199 2005-01-01  Tor Lillqvist  <tml@iki.fi>
1200
1201         * glib/glib.symbols
1202         * glib/gutils.h
1203         * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
1204         and g_find_program_in_path() take and return UTF-8 strings on
1205         Win32. Implement DLL ABI backward compatility for them, too. Move
1206         all the DLL ABI stability wrappers to the end of the file. Use
1207         wide character API when available in inner_find_program_in_path().
1208
1209         * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
1210         use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
1211         to consider somebody actually having anything else than ASCII
1212         in PATHEXT, but...)
1213
1214 2004-12-31  Tor Lillqvist  <tml@iki.fi>
1215
1216         * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
1217         use GetFileAttributes() instead of stat(). stat() is unreliable
1218         for corner cases like '\\server\share' or '.\'. Part of fixing
1219         #161797. When testing for executability, in addition to the fixed
1220         set of executable file name extensions also check the PATHEXT
1221         environment variable.
1222
1223 2004-12-30  Tor Lillqvist  <tml@iki.fi>
1224
1225         * glib/gutils.c (g_get_current_dir): In the Win32 version, use
1226         GetCurrentDirectory() directly for simpler buffer length
1227         management. I don't trust getcwd() getting it right all the time.
1228
1229 2004-12-30  Matthias Clasen  <mclasen@redhat.com>
1230
1231         * glib/gfileutils.c (g_file_test): Typo fix.
1232
1233 2004-12-30  Tor Lillqvist  <tml@iki.fi>
1234
1235         * glib/gutils.c (g_path_skip_root): Require UNC paths to start
1236         with exactly two slashes.
1237         (g_get_current_dir): Use wide character API when available.
1238         (g_path_get_dirname): Handle UNC paths better. Part of fix for
1239         #161797.
1240
1241 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
1242
1243         * configure.in: Add an OS_LINUX conditional.
1244
1245         * glib/Makefile.am (TESTS): Only check the ABI on 
1246         linux, since the shell script is not portable, and libtool
1247         deficiencies may distort the ABI on other platforms.  (#161741)
1248
1249 2004-12-21  Matthias Clasen  <mclasen@redhat.com>
1250
1251         * glib/goption.c (print_entry): Don't show
1252         the special G_OPTION_REMAINING entry.  (#161934,
1253         Matthew F. Barnes)
1254
1255 2004-12-20  Tor Lillqvist  <tml@iki.fi>
1256
1257         * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
1258         docs.
1259
1260 2004-12-20  Matthias Clasen  <mclasen@redhat.com>
1261
1262         * tests/option-test.c: Add some tests for '--' 
1263         stripping.
1264
1265         * glib/goption.c (g_option_context_parse): Don't
1266         strip '--' if it would be needed by a second option
1267         parser.  (#161701)
1268
1269         * glib/gunicollate.c (g_utf8_collate): Make docs 
1270         more accurate.  (#161683, Marcin Krzyzanowski)
1271
1272 2004-12-19  Matthias Clasen  <mclasen@redhat.com>
1273
1274         * glib/goption.c (g_option_context_parse): Call
1275         post-parse hooks also if argv is NULL.  (#161668,
1276         Marcin Krzyzanowski)
1277