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