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