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