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