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