glib/gstdio.h glib/gstdio.c Add a chdir() wrapper, too.
[platform/upstream/glib.git] / ChangeLog.pre-2-8
1 2005-06-09  Tor Lillqvist  <tml@novell.com>
2
3         * glib/gstdio.h
4         * glib/gstdio.c
5         * glib/glib.symbols: Add a chdir() wrapper, too.
6
7         * glib/glib.symbols: Add g_win32_locale_filename_from_utf8().
8
9         * glib/gwin32.c (g_win32_locale_filename_from_utf8): Clarify doc
10         comment.
11
12 2005-06-08  Tor Lillqvist  <tml@novell.com>
13
14         * glib/gutils.c (get_windows_directory_root): New helper function
15         on Win32, returns the root of the drive (or possibly share) where
16         the Windows directory is. (In the case of Terminal Server sessions
17         the Windows directory is a per-user folder.)
18         (g_get_any_init): Use get_windows_directory_root() as last resort
19         for both temp directory and home directory. g_get_home_dir() now
20         never returns NULL on Win32. Don't look at HOMEDRIVE and
21         HOMEPATH. HOME, USERPROFILE, CSIDL_PROFILE and Windows directory
22         drive root should be enough.
23
24 2005-06-08  Matthias Clasen  <mclasen@redhat.com>
25
26         * glib/glib.symbols: 
27         * glib/gunicode.h: 
28         * glib/gunicollate.c (g_utf8_collate_key_for_filename): 
29         New function to calculate collation keys which are more
30         suitable for sorting filenames.  (#172690, Ole Laursen)
31
32 Fri May 27 17:18:00 2005  Manish Singh  <yosh@gimp.org>
33
34         * glib/goption.c (parse_short_option): initialize option_name
35         before using it.
36
37 2005-05-27  Matthias Clasen  <mclasen@redhat.com>
38
39         * glib/goption.c (parse_short_option, parse_long_option):
40         Return an error if an option is missing its argument.  (#305576,
41         Björn Lindqvist)
42
43         * tests/option-test.c (missing_arg_test): Add a testcase.
44
45 Wed May 25 15:33:51 2005  Manish Singh  <yosh@gimp.org>
46
47         * glib/goption.c (print_help): rest_description should be const.
48
49 2005-05-25  Matthias Clasen  <mclasen@redhat.com>
50
51         * glib/gunidecomp.c (combine_hangul): Don't eat Hangul 
52         when normalizing.  (#301742, reported by Christian Biere,
53         patch by Noah Levitt)
54
55 2005-05-24  Matthias Clasen  <mclasen@redhat.com>
56
57         * glib/goption.c (print_help): If the remaining argument
58         has an arg_description, display the synopsis as
59         PROGNAME [OPTION...] REST  (#305346, Noah Levitt)
60
61 2005-05-20  Federico Mena Quintero  <federico@ximian.com>
62
63         Merged from glib-2-6:
64
65         * glib/gspawn.c (g_spawn_command_line_sync): Clarify the meaning
66         of exit_status(); it's not the return code from the child, but
67         rather the waitpid() status.
68
69 2005-05-18  Matthias Clasen  <mclasen@redhat.com>
70
71         * glib/gunidecomp.c: Correct the end of the Hangul 
72         Syllables range, from 0xd7af to 0xd7a3, in several
73         places.  (#301984, Changwoo Ryu)
74
75 2005-05-17  Matthias Clasen  <mclasen@redhat.com>
76
77         * tests/tree-test.c (main): Check the return values of
78         g_tree_remove().
79
80         * glib/gtree.c (g_tree_remove, g_tree_steal): Return
81         a boolean indicating wether the key was found.  (#302545,
82         Matthew F. Barnes)
83
84 2005-05-06  Brian Cameron  <brian.cameron@sun.com>
85
86         * configure.in, gmodule-no-export-2.0-uninstalled.pc.in,
87           Makefile.am:  Added gmodule-no-export-2.0-uninstalled.pc.in
88           to allow building of other libraries like pango when 
89           glib is uninstalled.
90
91 2005-05-06  Matthias Clasen  <mclasen@redhat.com>
92
93         * tests/option-test.c: Add a testcase.
94         
95         * glib/goption.c (g_option_context_parse): Treat '-'
96         on its own as a non-option argument.  (#168008, Tim Musson,
97         Thomas Leonard and others)
98
99 2005-05-05  Owen Taylor  <otaylor@redhat.com>
100
101         * glib/gdataset.[ch] glib/gdatasetprivate.h: Add 
102         g_datalist_set/unset_flags(), g_datalist_get_flags() functions
103         to squeeze some bits into a GDataSet... this is needed for
104         efficient implementation of toggle references in GObject.
105
106         * tests/gobject/references.c tests/gobject/Makefile.am:
107         Add a test case for weak and toggle references.
108
109         * glib/gfileutils.[ch]: Rename g_file_replace() back
110         to g_file_set_contents().
111
112         * glib/glib.symbols: Update.
113
114 2005-05-02  Matthias Clasen  <mclasen@redhat.com>
115
116         * glib/gstring.c (g_str_equal, g_str_hash): Move docs
117         inline.
118
119 2005-05-01  Matthias Clasen  <mclasen@redhat.com>
120
121         * glib/ghash.h: Rename some parameters to make gtk-doc
122         happy.
123
124         * glib/gutils.c: 
125         * glib/gwin32.c: 
126         * glib/gstdio.c: Fix some typos, mark new API as "Since 2.8".
127
128 2005-04-29  Matthias Clasen  <mclasen@redhat.com>
129
130         * glib/gtree.c: Clarify some docs. (#302062, Matthew F. Barnes)
131
132 2005-04-28  Matthias Clasen  <mclasen@redhat.com>
133
134         * glib/gstrfuncs.c (g_strcompress): Warn and don't crash
135         when meeting a trailing \\.  (#301373, Benjamin Otte)
136
137 2005-04-27  Tor Lillqvist  <tml@novell.com>
138
139         * glib/gconvert.c (open_converter, g_convert_with_iconv): Don't
140         call g_set_error() unless the GError pointer is non-NULL. This
141         avoids infinite recursion problems in certain rare situations on
142         Windows, when g_locale_from_utf8() is called from
143         _glib_get_locale_dir() after the change below. It's the
144         _glib_gettext() calls to translate error messages that are
145         parameters to g_set_error() that cause the recursion, not
146         g_set_error() itself.
147
148         * glib/gwin32.c (g_win32_locale_filename_from_utf8): New
149         function. Converts a filename to the system codepage, and if a
150         straight conversion isn't possible (because the filename contains
151         characters not in the system codepage), try looking up the
152         filename (which should refer to an existing file for this to
153         succeed) with short (8.3) pathname components.
154
155         * glib/gutils.c (_glib_get_locale_dir): No need to cache the
156         result, this function is normally called only once. Return the
157         path to the locale directory in system codepage, not UTF-8. The
158         path is passed to bindtextdomain(), which doesn't use UTF-8 file
159         names. Use g_win32_locale_filename_from_utf8(). (#301772)
160
161         Don't do run-time lookup of message catalog directory on
162         Cygwin. Cygwin is supposed to look and feel like Unix, and on Unix
163         we use paths fixed at configure time.
164
165 2005-04-19  Tor Lillqvist  <tml@novell.com>
166
167         * glib/gutils.h: Minor comment improvement.
168
169 2005-04-18  Tor Lillqvist  <tml@novell.com>
170
171         * glib/gfileutils.c: No <sys/wait.h> on Win32. Definition of
172         save_errno was missing in one place.
173
174 Sat Apr 16 20:15:44 2005  Soeren Sandmann  <sandmann@redhat.com>
175
176         * glib/gfileutils.c (g_file_replace): Save the errno in various
177         places
178
179         * glib/gfileutils.c (set_umask_permissions): Fork a child and do
180         chmod() to the umask() permissions there.
181
182 2005-04-10  Matthias Clasen  <mclasen@redhat.com>
183
184         * glib/gmessages.h (g_debug): Use G_LOG_LEVEL_DEBUG in
185         both definitions.  (#300071, Tommi Komulainen)
186
187 2005-04-09  Tor Lillqvist  <tml@novell.com>
188
189         * glib/gutils.c: Include <process.h> on Win32 for getpid(). (#173094)
190
191 2005-04-08  Tor Lillqvist  <tml@novell.com>
192
193         * glib/gstdio.h
194         * glib/gstdio.c
195         * glib/glib.symbols (g_access, g_chmod, g_creat): Wrap also
196         access(), chmod() and creat(). (#169623, #171285)
197
198 2005-04-08  Tor Lillqvist  <tml@novell.com>
199
200         Improve g_get_system_data_dirs() on Windows. A library that calls
201         g_get_system_data_dirs() might be installed in a different
202         top-level prefix than GLib or the application being run.
203
204         * glib/gutils.h (g_win32_get_system_data_dirs): New static
205         function defined in this header. Calls
206         g_win32_get_system_data_dirs_for_module() passing the address of
207         itself as parameter. g_get_system_data_dirs() is #defined as this
208         function.
209
210         * glib/gutils.c (g_win32_get_system_data_dirs_for_module): New
211         function. If the address parameter is non-NULL, the corresponding
212         module's installation location is used for one of the returned
213         path names, in addition to the COMMON_APPDATA, COMMON_DOCUMENTS,
214         glib top-level and application top-level folders.
215         (g_get_system_data_dirs): Now just for backward compatibility on
216         Win32. Just call g_win32_get_system_data_dirs_for_module(NULL).
217
218         * glib/glib.symbols: Add g_win32_get_system_data_dirs_for_module.
219
220         * glib/gutils.c (read_aliases): Not used on Windows.
221         (unalias_lang): Don't do anything on Windows, there is no
222         /usr/share/locale/locale.alias file..
223         
224 Thu Apr  7 22:51:15 2005  <yosh@gimp.org>
225
226         * glib/gutils.c (g_get_system_data_dirs): Declare glib_top_share_dir
227         and exe_top_share_dir only in G_OS_WIN32.
228
229 2005-04-08  Tor Lillqvist  <tml@novell.com>
230
231         * glib/gutils.c (g_get_system_data_dirs): After investigating more
232         closely the actual use cases of this function, I understand better
233         what it needs to do on Windows. In addition to the Windows
234         COMMON_APPDATA and COMMON_DOCUMENTS folders, also return the
235         "share" subfolders of GLib's installation location and the
236         application .exe's installation location, hoping that either
237         matches what the function's caller is looking for.
238
239         * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME): Use wide char API
240         if available, and store dll name in UTF-8.
241
242 2005-04-05  Matthias Clasen  <mclasen@redhat.com>
243
244         * glib/gfileutils.c (get_contents_stdio): Avoid memory 
245         leaks in borderline cases.  (#172612, Morten Welinder)
246
247 2005-04-04  Matthias Clasen  <mclasen@redhat.com>
248
249         * glib/gconvert.c: Clarify docs in some places. (#172404, 
250         Morten Welinder)
251
252 2005-04-03  Matthias Clasen  <mclasen@redhat.com>
253
254         * glib/gutils.h: Undef G_CAN_INLINE if G_IMPLEMENT_INLINES is 
255         defined. This was the pre-2.6 behaviour, and without it,
256         G_IMPLEMENT_INLINES cannot be used in multiple .c files
257         at all.  (#165852, Dave Benson)
258
259 2005-04-01  Matthias Clasen  <mclasen@redhat.com>
260
261         * glib/gmain.c (g_child_watch_source_new): Add a note regarding
262         waitpid(-1).
263         (g_child_watch_source_init_multi_threaded): 
264         (g_child_watch_source_init_single): Don't use SA_RESTART,
265         since it causes problems on at least one platform. (#168352)
266
267 2005-03-30  Steve Murphy  <murf@e-tools.com>
268
269         * configure.in: Added "rw" to ALL_LINGUAS.
270
271 2005-03-30  Sven Neumann  <sven@gimp.org>
272
273         * glib/gfileutils.c (get_contents_stdio): handle the unlikely case
274         that no bytes are read from the file and allocate an empty string.
275
276 2005-03-30  Tor Lillqvist  <tml@novell.com>
277
278         * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Always claim
279         file descriptors open to devices are readable, since we can't
280         know. fstat() doesn't give any useful information. (#145326)
281
282 2005-03-29  Tor Lillqvist  <tml@novell.com>
283
284         * glib/gmain.c (g_poll): [Win32] If the event fired, assign
285         f->revents=f->events. We can't know whether the upper layer using
286         the event actually is readable, writeable or what, so say that all
287         the conditions hold. Remove the ResetEvent() call that has been
288         ifdeffed out anyway for a long time. Remove an "#ifdef 1" and
289         #endif pair of lines, that code is not optional.
290         (g_get_current_time): [Win32] Use GetSystemTimeAsFileTime()
291         instead of time() and GetTickCount(). Much simpler.
292
293 2005-03-28  Matthias Clasen  <mclasen@redhat.com>
294
295         * tests/date-test.c: 
296         * tests/testgdate.c: Add tests for 
297         g_date_get_iso8601_week_of_year().
298
299         * glib/gdate.c (g_date_get_iso8601_week_of_year): 
300         Fix the calculation.  (#169858, Jon-Kare Hellan)
301
302 2005-03-27  Tor Lillqvist  <tml@novell.com>
303
304         * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
305         after all, and in fact necessary with HEAD libtool.
306
307 2005-03-23  Tor Lillqvist  <tml@novell.com>
308
309         * glib/gutils.c (g_getenv): [Win32] Fix corner case bug when
310         environment variable value is exactly one character.
311
312 2005-03-21  Matthias Clasen  <mclasen@redhat.com>
313
314         * glib/glib.symbols: Add g_try_malloc0
315
316         * glib/gmem.h: Add g_try_new, g_try_new0, g_try_renew and
317         g_try_malloc0.  (#169611, Stefan Kost)
318
319         * glib/gmem.c: Implement g_try_malloc0.
320
321 2005-03-20  Tor Lillqvist  <tml@novell.com>
322
323         * glib/gspawn-win32.c (do_spawn_with_pipes): Close the process
324         handle if the caller doesn't want it also in the case without a
325         helper process.
326         (g_spawn_sync): Don't ask for a child pid which we don't need.
327
328         * glib/gtimer.c: On Win32, use GetSystemTimeAsFileTime() instead
329         of GetTickCount(). (#159507)
330
331         * glib/gmessages.c (g_log_default_handler)
332         * glib/gutils.c (g_get_prgname): Move the Win32 code that asks the
333         program name from the system to g_get_prgname(). Do output the pid
334         also on Win32 (useful in case there are several instances of the
335         same program running).
336
337         * tests/testglib.c (main): Print more detailled output from the
338         timer tests. Don't print home directory twice. Test
339         g_win32_error_message().
340
341         * tests/spawn-test.c (run_tests): On Win32, run netstat instead of
342         ipconfig. On Windows XP collecting output from ipconfig doesn't
343         seem to work for some reason.
344
345 2005-03-18  Hans Breuer  <hans@breuer.org>
346
347         * glib/makefile.msc.in : handle galiasdef.c (although completely 
348         useless for msvc build)
349
350         * glib/gbacktrace.c glib/gmessage.c : need at least _WIN_VER 0x0401
351         for IsDebuggerPresent()
352
353 2005-03-17  Matthias Clasen  <mclasen@redhat.com>
354
355         * glib/gkeyfile.c: Update the documentation, reflecting the
356         fact that the special case for !group_name --> start_group
357         got removed.  (#170566, Tim-Philipp Müller)
358
359 2005-03-15  Matthias Clasen  <mclasen@redhat.com>
360
361         * glib/goption.c (g_option_context_set_main_group): Warn 
362         if there already is a main group.  (#170445, Jeff Franks)
363
364 Sun Mar 13 22:01:17 2005  Manish Singh  <yosh@gimp.org>
365
366         * tests/array-test.c: delete a bunch of dead code.
367
368 Sun Mar 13 21:28:47 2005  Manish Singh  <yosh@gimp.org>
369
370         * glib/gdataset.c: remove spurious IA prefix from g_quark_try_string.
371
372 2005-03-13  Matthias Clasen  <mclasen@redhat.com>
373
374         * glib/gatomic.c:
375         * glib/gcache.c: Small fixes to the previous commit.
376
377 2005-03-13  Matthias Clasen  <mclasen@redhat.com>
378
379         Make PLT-reduction work with gcc4, and don't include
380         everything in galias.h:
381         
382         * glib/glib.symbols: Group symbols by header and source file.
383         * glib/makegalias.pl: Protect definitions by the same 
384         preprocessor symbols used to guard the headers. Move
385         the alias declarations to a separate file which is 
386         produced when calling makegalias.pl -def
387         * glib/Makefile.am (galiasdef.c): Add a rule to generate this
388         file.
389         * glib/*.c: Include galias.h after the other GLib headers,
390         include galiasdef.c at the bottom.
391
392         * glib/glib.symbols: Add g_listenv and g_file_replace.
393
394 Fri Mar 11 23:51:12 2005  Soeren Sandmann  <sandmann@redhat.com>
395
396         * glib/gfileutils.c (write_to_temp_file): Don't try and generate
397         a dotfile from the name -- it doesn't work with absolute
398         paths. Also make documentation indicate that symlinks will be
399         overwritten. Both pointed out by Alexis S. L. Carvalho.
400
401 2005-03-11  Matthias Clasen  <mclasen@redhat.com>
402
403         * m4macros/glib-gettext.m4: Avoid stupid compiler complaints
404         about precision loss.
405
406 2005-03-10  Matthias Clasen  <mclasen@redhat.com>
407
408         * glib/gdate.c: Remove a lot of pointless g_return_if_fail()
409         checks.  (#169859, Morten Welinder)
410
411 2005-03-10  Sven Neumann  <sven@gimp.org>
412
413         * tests/file-test.c: include <gstdio.h>.
414
415 2005-03-10  Sven Neumann  <sven@gimp.org>
416
417         * glib/gfileutils.c (get_contents_stdio): delay memory allocation
418         until after the first read. Saves a bunch of reallocs. Also
419         increased the buffer size to 4096 bytes. (bug #165954)
420
421         * tests/file-test.c (test_get_contents): added a (very basic) test
422         for g_file_get_contents().
423
424 Wed Mar  9 19:06:45 2005  Manish Singh  <yosh@gimp.org>
425
426         * glib/glib.symbols: Add g_file_replace.
427
428 2005-03-09  Matthias Clasen  <mclasen@redhat.com>
429
430         * configure.in: Bump version
431
432 2005-03-09  Sven Neumann  <sven@gimp.org>
433
434         * glib/gfileutils.c (g_file_replace): avoid unnecessary filename
435         conversions.
436
437 2005-03-09  Tor Lillqvist  <tml@novell.com>
438
439         * glib/gutils.c (g_get_user_data_dir, g_get_user_config_dir,
440         g_get_user_cache_dir, g_get_system_data_dirs,
441         g_get_system_config_dirs): [Win32] Don't leak return value from
442         get_special_folder(). (#169348, Daniel Atallah) Guard against
443         g_home_dir being NULL, use g_tmp_dir/g_user_name in that case.
444
445 Tue Mar  8 15:46:54 2005  Søren Sandmann  <sandmann@redhat.com>
446
447         * glib/gfileutils.c (g_file_replace): New API. A function to
448         atomically create a file.
449
450 2005-03-08  Matthias Clasen  <mclasen@redhat.com>
451
452         * glib/glib.symbols: Add the new attributes here too.
453
454         * glib/gmacros.h: Define G_GNUC_NULL_TERMINATED.
455         (#164706, Marc Meissner)
456
457         * glib/gstrfuncs.h: 
458         * glib/gfileutils.h: Use G_GNUC_NULL_TERMINATED where
459         appropriate.
460
461         * glib/goption.c (parse_int): Fix an error message.  
462         (#168751, Hazael Maldonado Torres)
463
464 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
465
466         * glib/gdebug.h: Small cleanup (use G_BEGIN/END_DECLS).
467         (#168474, Fabricio Barros Cabral)
468
469 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
470
471         * glib/gutils.c (g_find_program_in_path): Mark the last
472         paragraph of the docs as Windows-specific.  (#169433)
473
474 2005-03-06  Matthias Clasen  <mclasen@redhat.com>
475
476         * glib/gmarkup.c: Add G_GNUC_PRINTF attribute
477         to set_error.
478         (g_markup_parse_context_end_parse): Fix an
479         error message, noticed by Tim Janik.
480
481 2005-02-24  Tor Lillqvist  <tml@novell.com>
482
483         * glib/Makefile.am (BUILT_EXTRA_DIST): Don't distribute
484         glib.def. (#167496, J. Ali Harlow)
485
486         * glib/gfileutils.c (get_contents_win32): Use g_fopen(). (#168341,
487         Daniel Atallah)
488
489 2005-02-23  Matthias Clasen  <mclasen@redhat.com>
490
491         * configure.in: Don't forget to set G_THREAD_LIBS_FOR_GTHREAD 
492         on non-linux platforms.  (#168177, Michael Banck)
493
494         * tests/keyfile-test.c (test_locale_string): Set LANGUAGE 
495         instead of LC_ALL to shield against LANGUAGE being set in 
496         the environment.  (#168311, Suren A. Chilingaryan)
497
498 Tue Feb 22 22:03:38 2005  Manish Singh  <yosh@gimp.org>
499
500         * glib/gstdio.h: On G_OS_UNIX, simple #define g_open and co. as
501         aliases for their respective C library functions, instead of
502         using the function wrappers. This avoids library users having to
503         care about matching large file support with whatever glib has been
504         built with. Fixes bug #167942.
505
506         * glib/gstdio.c
507         * glib/abicheck.sh
508         * glib/glib.symbols
509         * glib/makegalias.pl: Logic to make the gstdio wrappers still
510         available for compatibility, but not used in new code.
511
512 Tue Feb 22 18:33:07 2005  Manish Singh  <yosh@gimp.org>
513
514         * glib/gtimer.c (g_usleep): Simplify the loop for the fix below.
515
516 2005-02-20  Matthias Clasen  <mclasen@redhat.com>
517
518         * glib/gqueue.c (g_queue_new): Use a memchunk for
519         sizeof(GQueue)-sized chunks.  (#167984, Fabrício Barros Cabral)
520
521         * glib/gtimer.c (g_usleep): Fix usage of 
522         nanosleep().  (#163039, Bastien Nocera)
523
524 2005-02-16  Adi Attar  <aattar@cvs.gnome.org>
525
526         * configure.in: Added "xh" to ALL_LINGUAS.
527
528 2005-02-11  Tor Lillqvist  <tml@novell.com>
529
530         * glib/giowin32.c: Include winsock2.h before windows.h, to avoid
531         compilation errors with MSVC. (#167105)
532
533 2005-02-10  Matthias Clasen  <mclasen@redhat.com>
534
535         * glib/goption.c (print_help): Take main group options into
536         account when calculating column size.  (#166921)
537         (g_option_context_parse): Accept -? as documented.  (#166977)
538
539 2005-02-09  Matthias Clasen  <mclasen@redhat.com>
540         * glib/gkeyfile.c (find_file_in_data_dirs): Don't leak path
541         here.  (#166801, Kjartan Maraas)
542
543 2005-02-08  Matthias Clasen  <mclasen@redhat.com>
544
545         * glib/gkeyfile.c (g_key_file_parse_value_as_string): Don't
546         write out of bounds.
547
548         * glib/goption.c (g_option_context_parse): Fix a 
549         one-too-short memory allocation.  (#166609, Nicolas Laurent)
550
551         * tests/Makefile.am (TESTS_ENVIRONMENT): Add tests with
552         MALLOC_CHECK_.
553
554         * tests/option-test.c: Add a test for unkown short options.
555
556 2005-02-07  Matthias Clasen  <mclasen@redhat.com>
557
558         * glib/glib.symbols: 
559         * glib/gutils.h: 
560         * glib/gutils.c (g_listenv): New function to list all 
561         environment variables.  (#166327, Hans Petter Jansson)
562
563 2005-02-07  Tor Lillqvist  <tml@novell.com>
564
565         * glib-zip.in: Add gmodule-no-export-2.0.pc.
566
567 Sun Feb  6 21:59:09 2005  Manish Singh  <yosh@gimp.org>
568
569         * glib/abicheck.sh: feed the contents of config.h and glibconfig.h
570         into the preprocessor, since glib.symbols could need #defines
571         from them.
572
573 Sun Feb  6 12:09:55 2005  Manish Singh  <yosh@gimp.org>
574
575         * glib/gatomic.c: Don't use matching constraints for asm mem
576         parameters. This makes the code match with current glibc, and
577         quiets some warnings with gcc 3.4.
578
579 2005-02-05  Tor Lillqvist  <tml@novell.com>
580
581         * configure.in (G_LIBS_EXTRA)
582         * glib/giowin32.c: I think we can include <winsock2.h> and link
583         with -lws2_32. Only Windows 95 originally didn't have Winsock 2,
584         and it's available as an update for it. Not that we use any actual
585         Winsock 2 -only features, but still, simpler to link directly with
586         ws2_32.dll instead of going through wsock32.dll.
587
588         * glib/gfileutils.c (g_file_get_contents): In the Win32 ABI
589         stability version, call g_file_get_contents_utf8(), not
590         itself. (#166386, Bill Skaggs)
591
592 2005-02-04  Matthias Clasen  <mclasen@redhat.com>
593
594         * configure.in: Remove the --enable-ansi option  (#160469)
595
596         * configure.in: Define a HAVE_GNUC_VISIBILITY automake
597         conditional.
598
599         * glib/Makefile.am (TESTS): Only check the abi if
600         the compiler supports visibility, otherwise we
601         know there will be (harmless) extra symbols.  
602         (#166181, Ed Avis)
603
604 2005-02-02  Tor Lillqvist  <tml@novell.com>
605
606         * glib/gwin32.h: Remove unnecessary MSVC-only typedef for
607         pid_t. (#165910) GLib does not pretend to be a POSIX emulation
608         library.
609
610         * glib/gstdio.c: In the Win32 part of all functions, handle
611         invalid UTF-8 more robustly. Don't pass the resulting NULL
612         wide-char or codepage strings on to C library functions, but bail
613         out early. (#166084)
614
615         * glib/gfileutils.c: Don't use potentially incorrect errno in
616         several places. (#165951)
617         (g_mkstemp): Set errno appropriately.
618
619 2005-02-02  Matthias Clasen  <mclasen@redhat.com>
620
621         * glib/gutils.c: Move doc comments inline.
622
623         * glib/ghash.h: Adjust some argument names.
624
625         * configure.in: Give meaningful names to g_memmove() 
626         arguments.
627
628 2005-02-01  Matthias Clasen  <mclasen@redhat.com>
629
630         * tests/keyfile-test.c (test_key_remove): Add test case for
631         key removal.
632
633         * glib/gkeyfile.c (g_key_file_remove_key): Actually remove 
634         the key from the list of pairs.  (#165980, David Hoover)
635
636         * glib/gkeyfile.c: Doc clarifications.  (#165907, Vincent Untz)
637
638         * tests/keyfile-test.c (test_group_remove): Add test case for
639         group removal.
640
641         * glib/gkeyfile.c (g_key_file_remove_group): Don't segfault
642         if the group doesn't exist.  (#165887, Mathias Hasselmann)
643
644 2005-01-30  Matthias Clasen  <mclasen@redhat.com>
645
646         * tests/keyfile-test.c: Some more unit tests.
647
648 2005-01-28  Christian Rose  <menthos@menthos.com>
649
650         * configure.in: Added "tl" to ALL_LINGUAS.
651
652 2005-01-24  Matthias Clasen  <mclasen@redhat.com>
653
654         * tests/run-markup-tests.sh: Let $srcdir default to .
655
656         * tests/markups/fail-40.gmarkup: Add a test with a long entity
657         name.
658
659         * glib/gmarkup.c (unescape_text_state_inside_entity_name): Don't
660         copy the entity name into a short buffer of fixed length. Instead,
661         compare it in place with strncmp(), and do a full strdup() in the
662         error path.  (#165100, Simon Budig)
663
664 2005-01-22  Tor Lillqvist  <tml@novell.com>
665
666         * glib/gdate.c (g_date_set_time): Don't g_assert that localtime()
667         returns non-NULL. It does return NULL at least on Win32 if you
668         pass it a negative time_t, which although wrong, shouldn't cause
669         an application to abort. Instead return 2000-01-01 as a default
670         date. Print a warning unless G_DISABLE_CHECKS. (#164622)
671
672 2005-01-20  Matthias Clasen  <mclasen@redhat.com>
673
674         * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Don't
675         interpret leading zeros as octal. The specification requires
676         %f parsing, and %f doesn't allow octal.  
677
678         * tests/keyfile-test.c: Add some more tests.
679
680         * glib/gkeyfile.c (g_key_file_get_keys): Return keys in
681         the order found in the file, rather than the opposite.
682         (g_key_file_parse_value_as_string): Fix error reporting.
683
684 2005-01-19  Matthias Clasen  <mclasen@redhat.com>
685
686         * glib/gkeyfile.c (g_key_file_parse_data): Accept \r\n as 
687         line end.  (#163030, Bastian Nocera)
688         (g_key_file_load_from_data): Make -1 work as a size.
689         
690         * tests/keyfile-test.c: Some unit tests for the keyfile
691         parser.  
692
693         * tests/Makefile.am (test_programs): Add keyfile-test.
694
695 2005-01-19  Tor Lillqvist  <tml@novell.com>
696
697         * glib/gbacktrace.c (g_on_error_stack_trace): On Win32 call
698         G_BREAKPOINT() if being debugged.
699
700         * glib/gmessages.c (g_logv): For fatal messages on Win32, use
701         G_BREAKPOINT() also without G_ENABLE_DEBUG, but only if being
702         debugged. Suggestion by Ulf Lamping.
703
704 2005-01-18  Matthias Clasen  <mclasen@redhat.com>
705
706         * glib/gqsort.c: Don't include alloca.h. It is not needed,
707         and does not exist on win32.  (#164468, Kazuki IWAMOTO)
708
709         * glib/gkeyfile.c (g_key_file_get_boolean_list): Fix a
710         sparse warning.  (#164467, Kjartan Maraas)
711
712 2005-01-17  Matthias Clasen  <mclasen@redhat.com>
713
714         * glib/gconvert.c (g_get_filename_charsets): Don't crash
715         if G_FILENAME_ENCODING is empty.  (#164330, Pawel Sakowski)
716
717 2005-01-15  Tor Lillqvist  <tlillqvist@novell.com>
718
719         * configure.in: sh portability fix. Use "test" and not [.
720         (#163144, Robert Ögren)
721
722 2005-01-13  Matthias Clasen  <mclasen@redhat.com>
723
724         * glib/gqsort.c: Sync to glibc.  (#133994, Morten Welinder, 
725         patch by Kjartan Maraas)
726
727 2005-01-11  Owen Taylor <otaylor@redhat.com>
728
729         * configure.in: Add gmodule-export-2.0.pc to AC_CONFIG_FILES.
730
731         * glib/Makefile.am gobject/Makefile.am gthread/Makefile.am:
732         Use grep | head -n 1 instead of grep -m 1 which doesn't work
733         with slightly older versions of GNU grep in 
734         install-libtool-import-lib rule.
735
736 2005-01-11  Matthias Clasen  <mclasen@redhat.com>
737
738         * glib/gdir.c (g_dir_open): Typo fix.
739
740 2005-01-10  Owen Taylor  <otaylor@redhat.com>
741
742         * Makefile.am (EXTRA_DIST): Add missing ChangeLog.pre*
743
744 2005-01-09  Hans Breuer  <hans@breuer.org>
745
746         * glib/gfileutils.c : make it compile with mvc6 default sdk,
747         (#define INVALID_FILE_ATTRIBUTES, FILE_ATTRIBUTE_DEVICE)
748
749 2005-01-09  Tor Lillqvist  <tlillqvist@novell.com>
750
751         * glib/gwin32.c: Include also wchar.h for wcslen on
752         Cygwin.
753         (g_win32_error_message): Fix cast. (#163133, Roger Leigh)
754
755         * glib/gfileutils.c: Include <io.h> on Windows for
756         prototypes. (#163390, Kazuki Iwamoto)
757
758 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
759
760         * NEWS: Typo fixes.
761
762         * configure.in: Bump version
763
764         * === Released 2.6.1 ===
765
766 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
767
768         * configure.in: 
769         * Makefile.am: Generate and distribute gmodule-export-2.0.pc,
770         which is currently just a copy of gmodule-2.0.pc, but makes
771         it explicit that it adds --export-dynamic.
772         
773         * gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
774
775 2005-01-06  Tor Lillqvist  <tml@iki.fi>
776
777         * glib/Makefile.am
778         * gobject/Makefile.am: glib.def and gobject.def are generated, not
779         in $(srcdir). (#163143, J. Ali Harlow)
780
781         * configure.in
782         * glib/Makefile.am
783         * gobject/Makefile.am: Win32 cross-compilation fixes. (#163144,
784         J. Ali Harlow)
785
786 2005-01-05  Matthias Clasen  <mclasen@redhat.com>
787
788         * glib/gutils.h: Simplify the inlining magic to make it
789         work at Oh zero.  (#162990, Kalpesh Shah) 
790
791 2005-01-04  Tor Lillqvist  <tml@iki.fi>
792
793         * glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
794         instead of setlocale() on Windows. setlocale() returns strings
795         like "Turkish_Turkey".
796
797 2005-01-04  Matthias Clasen  <mclasen@redhat.com>
798
799         Fix the inlining magic.  (#157536, Jens Hatlak, and
800         #149907, Morten Welinder)
801         
802         * configure.in: Define G_CAN_INLINE in glibconfig.h
803
804         * glib/gutils.h: Streamline the inlining magic a bit,
805         don't use extern when implementing the non-inlined 
806         version.
807
808 2005-01-03  Matthias Clasen  <mclasen@redhat.com>
809
810         * glib/gutils.c (g_find_program_in_path): Don't return
811         directories.  (#160738, Tommi Komulainen)
812
813         * glib/gfileutils.c (g_file_get_contents): Clarify the 
814         documentation.  (#162251, Mariano Suárez-Alvarez)
815
816 2005-01-02  Matthias Clasen  <mclasen@redhat.com>
817
818         * glib/gutils.c (g_setenv, g_unsetenv): Clarify the 
819         docs.  (#162747, Crispin Flowerday)
820
821 2005-01-01  J. Ali Harlow  <ali@juiblex.co.uk>
822
823         * configure.in: Don't use AC_TRY_RUN to test for long long format
824         when using the MSVCRT.DLL runtime since we know the answer anyway
825         and it causes some mild inconvience when cross compiling.
826
827         * README.win32: Add a reference to the cross compiling section
828         of the reference manual.
829
830         * docs/reference/glib/cross.sgml: MinGW uses MSVCRT.DLL which
831         requires %I64i instead of %lli. (#161306)
832
833 2005-01-01  Tor Lillqvist  <tml@iki.fi>
834
835         * glib/gutils.c: Make the g_getenv() ABI backward compatibility
836         wrapper more robust.
837
838 2005-01-01  Tor Lillqvist  <tml@iki.fi>
839
840         * glib/glib.symbols
841         * glib/gutils.h
842         * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
843         and g_find_program_in_path() take and return UTF-8 strings on
844         Win32. Implement DLL ABI backward compatility for them, too. Move
845         all the DLL ABI stability wrappers to the end of the file. Use
846         wide character API when available in inner_find_program_in_path().
847
848         * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
849         use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
850         to consider somebody actually having anything else than ASCII
851         in PATHEXT, but...)
852
853 2004-12-31  Tor Lillqvist  <tml@iki.fi>
854
855         * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
856         use GetFileAttributes() instead of stat(). stat() is unreliable
857         for corner cases like '\\server\share' or '.\'. Part of fixing
858         #161797. When testing for executability, in addition to the fixed
859         set of executable file name extensions also check the PATHEXT
860         environment variable.
861
862 2004-12-30  Tor Lillqvist  <tml@iki.fi>
863
864         * glib/gutils.c (g_get_current_dir): In the Win32 version, use
865         GetCurrentDirectory() directly for simpler buffer length
866         management. I don't trust getcwd() getting it right all the time.
867
868 2004-12-30  Matthias Clasen  <mclasen@redhat.com>
869
870         * glib/gfileutils.c (g_file_test): Typo fix.
871
872 2004-12-30  Tor Lillqvist  <tml@iki.fi>
873
874         * glib/gutils.c (g_path_skip_root): Require UNC paths to start
875         with exactly two slashes.
876         (g_get_current_dir): Use wide character API when available.
877         (g_path_get_dirname): Handle UNC paths better. Part of fix for
878         #161797.
879
880 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
881
882         * configure.in: Add an OS_LINUX conditional.
883
884         * glib/Makefile.am (TESTS): Only check the ABI on 
885         linux, since the shell script is not portable, and libtool
886         deficiencies may distort the ABI on other platforms.  (#161741)
887
888 2004-12-21  Matthias Clasen  <mclasen@redhat.com>
889
890         * glib/goption.c (print_entry): Don't show
891         the special G_OPTION_REMAINING entry.  (#161934,
892         Matthew F. Barnes)
893
894 2004-12-20  Tor Lillqvist  <tml@iki.fi>
895
896         * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
897         docs.
898
899 2004-12-20  Matthias Clasen  <mclasen@redhat.com>
900
901         * tests/option-test.c: Add some tests for '--' 
902         stripping.
903
904         * glib/goption.c (g_option_context_parse): Don't
905         strip '--' if it would be needed by a second option
906         parser.  (#161701)
907
908         * glib/gunicollate.c (g_utf8_collate): Make docs 
909         more accurate.  (#161683, Marcin Krzyzanowski)
910
911 2004-12-19  Matthias Clasen  <mclasen@redhat.com>
912
913         * glib/goption.c (g_option_context_parse): Call
914         post-parse hooks also if argv is NULL.  (#161668,
915         Marcin Krzyzanowski)
916