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