Add g_file_replace.
[platform/upstream/glib.git] / ChangeLog.pre-2-8
1 Wed Mar  9 19:06:45 2005  Manish Singh  <yosh@gimp.org>
2
3         * glib/glib.symbols: Add g_file_replace.
4
5 2005-03-09  Matthias Clasen  <mclasen@redhat.com>
6
7         * configure.in: Bump version
8
9 2005-03-09  Sven Neumann  <sven@gimp.org>
10
11         * glib/gfileutils.c (g_file_replace): avoid unnecessary filename
12         conversions.
13
14 2005-03-09  Tor Lillqvist  <tml@novell.com>
15
16         * glib/gutils.c (g_get_user_data_dir, g_get_user_config_dir,
17         g_get_user_cache_dir, g_get_system_data_dirs,
18         g_get_system_config_dirs): [Win32] Don't leak return value from
19         get_special_folder(). (#169348, Daniel Atallah) Guard against
20         g_home_dir being NULL, use g_tmp_dir/g_user_name in that case.
21
22 Tue Mar  8 15:46:54 2005  Søren Sandmann  <sandmann@redhat.com>
23
24         * glib/gfileutils.c (g_file_replace): New API. A function to
25         atomically create a file.
26
27 2005-03-08  Matthias Clasen  <mclasen@redhat.com>
28
29         * glib/glib.symbols: Add the new attributes here too.
30
31         * glib/gmacros.h: Define G_GNUC_NULL_TERMINATED.
32         (#164706, Marc Meissner)
33
34         * glib/gstrfuncs.h: 
35         * glib/gfileutils.h: Use G_GNUC_NULL_TERMINATED where
36         appropriate.
37
38         * glib/goption.c (parse_int): Fix an error message.  
39         (#168751, Hazael Maldonado Torres)
40
41 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
42
43         * glib/gdebug.h: Small cleanup (use G_BEGIN/END_DECLS).
44         (#168474, Fabricio Barros Cabral)
45
46 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
47
48         * glib/gutils.c (g_find_program_in_path): Mark the last
49         paragraph of the docs as Windows-specific.  (#169433)
50
51 2005-03-06  Matthias Clasen  <mclasen@redhat.com>
52
53         * glib/gmarkup.c: Add G_GNUC_PRINTF attribute
54         to set_error.
55         (g_markup_parse_context_end_parse): Fix an
56         error message, noticed by Tim Janik.
57
58 2005-02-24  Tor Lillqvist  <tml@novell.com>
59
60         * glib/Makefile.am (BUILT_EXTRA_DIST): Don't distribute
61         glib.def. (#167496, J. Ali Harlow)
62
63         * glib/gfileutils.c (get_contents_win32): Use g_fopen(). (#168341,
64         Daniel Atallah)
65
66 2005-02-23  Matthias Clasen  <mclasen@redhat.com>
67
68         * configure.in: Don't forget to set G_THREAD_LIBS_FOR_GTHREAD 
69         on non-linux platforms.  (#168177, Michael Banck)
70
71         * tests/keyfile-test.c (test_locale_string): Set LANGUAGE 
72         instead of LC_ALL to shield against LANGUAGE being set in 
73         the environment.  (#168311, Suren A. Chilingaryan)
74
75 Tue Feb 22 22:03:38 2005  Manish Singh  <yosh@gimp.org>
76
77         * glib/gstdio.h: On G_OS_UNIX, simple #define g_open and co. as
78         aliases for their respective C library functions, instead of
79         using the function wrappers. This avoids library users having to
80         care about matching large file support with whatever glib has been
81         built with. Fixes bug #167942.
82
83         * glib/gstdio.c
84         * glib/abicheck.sh
85         * glib/glib.symbols
86         * glib/makegalias.pl: Logic to make the gstdio wrappers still
87         available for compatibility, but not used in new code.
88
89 Tue Feb 22 18:33:07 2005  Manish Singh  <yosh@gimp.org>
90
91         * glib/gtimer.c (g_usleep): Simplify the loop for the fix below.
92
93 2005-02-20  Matthias Clasen  <mclasen@redhat.com>
94
95         * glib/gqueue.c (g_queue_new): Use a memchunk for
96         sizeof(GQueue)-sized chunks.  (#167984, Fabrício Barros Cabral)
97
98         * glib/gtimer.c (g_usleep): Fix usage of 
99         nanosleep().  (#163039, Bastien Nocera)
100
101 2005-02-16  Adi Attar  <aattar@cvs.gnome.org>
102
103         * configure.in: Added "xh" to ALL_LINGUAS.
104
105 2005-02-11  Tor Lillqvist  <tml@novell.com>
106
107         * glib/giowin32.c: Include winsock2.h before windows.h, to avoid
108         compilation errors with MSVC. (#167105)
109
110 2005-02-10  Matthias Clasen  <mclasen@redhat.com>
111
112         * glib/goption.c (print_help): Take main group options into
113         account when calculating column size.  (#166921)
114         (g_option_context_parse): Accept -? as documented.  (#166977)
115
116 2005-02-09  Matthias Clasen  <mclasen@redhat.com>
117         * glib/gkeyfile.c (find_file_in_data_dirs): Don't leak path
118         here.  (#166801, Kjartan Maraas)
119
120 2005-02-08  Matthias Clasen  <mclasen@redhat.com>
121
122         * glib/gkeyfile.c (g_key_file_parse_value_as_string): Don't
123         write out of bounds.
124
125         * glib/goption.c (g_option_context_parse): Fix a 
126         one-too-short memory allocation.  (#166609, Nicolas Laurent)
127
128         * tests/Makefile.am (TESTS_ENVIRONMENT): Add tests with
129         MALLOC_CHECK_.
130
131         * tests/option-test.c: Add a test for unkown short options.
132
133 2005-02-07  Matthias Clasen  <mclasen@redhat.com>
134
135         * glib/glib.symbols: 
136         * glib/gutils.h: 
137         * glib/gutils.c (g_listenv): New function to list all 
138         environment variables.  (#166327, Hans Petter Jansson)
139
140 2005-02-07  Tor Lillqvist  <tml@novell.com>
141
142         * glib-zip.in: Add gmodule-no-export-2.0.pc.
143
144 Sun Feb  6 21:59:09 2005  Manish Singh  <yosh@gimp.org>
145
146         * glib/abicheck.sh: feed the contents of config.h and glibconfig.h
147         into the preprocessor, since glib.symbols could need #defines
148         from them.
149
150 Sun Feb  6 12:09:55 2005  Manish Singh  <yosh@gimp.org>
151
152         * glib/gatomic.c: Don't use matching constraints for asm mem
153         parameters. This makes the code match with current glibc, and
154         quiets some warnings with gcc 3.4.
155
156 2005-02-05  Tor Lillqvist  <tml@novell.com>
157
158         * configure.in (G_LIBS_EXTRA)
159         * glib/giowin32.c: I think we can include <winsock2.h> and link
160         with -lws2_32. Only Windows 95 originally didn't have Winsock 2,
161         and it's available as an update for it. Not that we use any actual
162         Winsock 2 -only features, but still, simpler to link directly with
163         ws2_32.dll instead of going through wsock32.dll.
164
165         * glib/gfileutils.c (g_file_get_contents): In the Win32 ABI
166         stability version, call g_file_get_contents_utf8(), not
167         itself. (#166386, Bill Skaggs)
168
169 2005-02-04  Matthias Clasen  <mclasen@redhat.com>
170
171         * configure.in: Remove the --enable-ansi option  (#160469)
172
173         * configure.in: Define a HAVE_GNUC_VISIBILITY automake
174         conditional.
175
176         * glib/Makefile.am (TESTS): Only check the abi if
177         the compiler supports visibility, otherwise we
178         know there will be (harmless) extra symbols.  
179         (#166181, Ed Avis)
180
181 2005-02-02  Tor Lillqvist  <tml@novell.com>
182
183         * glib/gwin32.h: Remove unnecessary MSVC-only typedef for
184         pid_t. (#165910) GLib does not pretend to be a POSIX emulation
185         library.
186
187         * glib/gstdio.c: In the Win32 part of all functions, handle
188         invalid UTF-8 more robustly. Don't pass the resulting NULL
189         wide-char or codepage strings on to C library functions, but bail
190         out early. (#166084)
191
192         * glib/gfileutils.c: Don't use potentially incorrect errno in
193         several places. (#165951)
194         (g_mkstemp): Set errno appropriately.
195
196 2005-02-02  Matthias Clasen  <mclasen@redhat.com>
197
198         * glib/gutils.c: Move doc comments inline.
199
200         * glib/ghash.h: Adjust some argument names.
201
202         * configure.in: Give meaningful names to g_memmove() 
203         arguments.
204
205 2005-02-01  Matthias Clasen  <mclasen@redhat.com>
206
207         * tests/keyfile-test.c (test_key_remove): Add test case for
208         key removal.
209
210         * glib/gkeyfile.c (g_key_file_remove_key): Actually remove 
211         the key from the list of pairs.  (#165980, David Hoover)
212
213         * glib/gkeyfile.c: Doc clarifications.  (#165907, Vincent Untz)
214
215         * tests/keyfile-test.c (test_group_remove): Add test case for
216         group removal.
217
218         * glib/gkeyfile.c (g_key_file_remove_group): Don't segfault
219         if the group doesn't exist.  (#165887, Mathias Hasselmann)
220
221 2005-01-30  Matthias Clasen  <mclasen@redhat.com>
222
223         * tests/keyfile-test.c: Some more unit tests.
224
225 2005-01-28  Christian Rose  <menthos@menthos.com>
226
227         * configure.in: Added "tl" to ALL_LINGUAS.
228
229 2005-01-24  Matthias Clasen  <mclasen@redhat.com>
230
231         * tests/run-markup-tests.sh: Let $srcdir default to .
232
233         * tests/markups/fail-40.gmarkup: Add a test with a long entity
234         name.
235
236         * glib/gmarkup.c (unescape_text_state_inside_entity_name): Don't
237         copy the entity name into a short buffer of fixed length. Instead,
238         compare it in place with strncmp(), and do a full strdup() in the
239         error path.  (#165100, Simon Budig)
240
241 2005-01-22  Tor Lillqvist  <tml@novell.com>
242
243         * glib/gdate.c (g_date_set_time): Don't g_assert that localtime()
244         returns non-NULL. It does return NULL at least on Win32 if you
245         pass it a negative time_t, which although wrong, shouldn't cause
246         an application to abort. Instead return 2000-01-01 as a default
247         date. Print a warning unless G_DISABLE_CHECKS. (#164622)
248
249 2005-01-20  Matthias Clasen  <mclasen@redhat.com>
250
251         * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Don't
252         interpret leading zeros as octal. The specification requires
253         %f parsing, and %f doesn't allow octal.  
254
255         * tests/keyfile-test.c: Add some more tests.
256
257         * glib/gkeyfile.c (g_key_file_get_keys): Return keys in
258         the order found in the file, rather than the opposite.
259         (g_key_file_parse_value_as_string): Fix error reporting.
260
261 2005-01-19  Matthias Clasen  <mclasen@redhat.com>
262
263         * glib/gkeyfile.c (g_key_file_parse_data): Accept \r\n as 
264         line end.  (#163030, Bastian Nocera)
265         (g_key_file_load_from_data): Make -1 work as a size.
266         
267         * tests/keyfile-test.c: Some unit tests for the keyfile
268         parser.  
269
270         * tests/Makefile.am (test_programs): Add keyfile-test.
271
272 2005-01-19  Tor Lillqvist  <tml@novell.com>
273
274         * glib/gbacktrace.c (g_on_error_stack_trace): On Win32 call
275         G_BREAKPOINT() if being debugged.
276
277         * glib/gmessages.c (g_logv): For fatal messages on Win32, use
278         G_BREAKPOINT() also without G_ENABLE_DEBUG, but only if being
279         debugged. Suggestion by Ulf Lamping.
280
281 2005-01-18  Matthias Clasen  <mclasen@redhat.com>
282
283         * glib/gqsort.c: Don't include alloca.h. It is not needed,
284         and does not exist on win32.  (#164468, Kazuki IWAMOTO)
285
286         * glib/gkeyfile.c (g_key_file_get_boolean_list): Fix a
287         sparse warning.  (#164467, Kjartan Maraas)
288
289 2005-01-17  Matthias Clasen  <mclasen@redhat.com>
290
291         * glib/gconvert.c (g_get_filename_charsets): Don't crash
292         if G_FILENAME_ENCODING is empty.  (#164330, Pawel Sakowski)
293
294 2005-01-15  Tor Lillqvist  <tlillqvist@novell.com>
295
296         * configure.in: sh portability fix. Use "test" and not [.
297         (#163144, Robert Ögren)
298
299 2005-01-13  Matthias Clasen  <mclasen@redhat.com>
300
301         * glib/gqsort.c: Sync to glibc.  (#133994, Morten Welinder, 
302         patch by Kjartan Maraas)
303
304 2005-01-11  Owen Taylor <otaylor@redhat.com>
305
306         * configure.in: Add gmodule-export-2.0.pc to AC_CONFIG_FILES.
307
308         * glib/Makefile.am gobject/Makefile.am gthread/Makefile.am:
309         Use grep | head -n 1 instead of grep -m 1 which doesn't work
310         with slightly older versions of GNU grep in 
311         install-libtool-import-lib rule.
312
313 2005-01-11  Matthias Clasen  <mclasen@redhat.com>
314
315         * glib/gdir.c (g_dir_open): Typo fix.
316
317 2005-01-10  Owen Taylor  <otaylor@redhat.com>
318
319         * Makefile.am (EXTRA_DIST): Add missing ChangeLog.pre*
320
321 2005-01-09  Hans Breuer  <hans@breuer.org>
322
323         * glib/gfileutils.c : make it compile with mvc6 default sdk,
324         (#define INVALID_FILE_ATTRIBUTES, FILE_ATTRIBUTE_DEVICE)
325
326 2005-01-09  Tor Lillqvist  <tlillqvist@novell.com>
327
328         * glib/gwin32.c: Include also wchar.h for wcslen on
329         Cygwin.
330         (g_win32_error_message): Fix cast. (#163133, Roger Leigh)
331
332         * glib/gfileutils.c: Include <io.h> on Windows for
333         prototypes. (#163390, Kazuki Iwamoto)
334
335 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
336
337         * NEWS: Typo fixes.
338
339         * configure.in: Bump version
340
341         * === Released 2.6.1 ===
342
343 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
344
345         * configure.in: 
346         * Makefile.am: Generate and distribute gmodule-export-2.0.pc,
347         which is currently just a copy of gmodule-2.0.pc, but makes
348         it explicit that it adds --export-dynamic.
349         
350         * gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
351
352 2005-01-06  Tor Lillqvist  <tml@iki.fi>
353
354         * glib/Makefile.am
355         * gobject/Makefile.am: glib.def and gobject.def are generated, not
356         in $(srcdir). (#163143, J. Ali Harlow)
357
358         * configure.in
359         * glib/Makefile.am
360         * gobject/Makefile.am: Win32 cross-compilation fixes. (#163144,
361         J. Ali Harlow)
362
363 2005-01-05  Matthias Clasen  <mclasen@redhat.com>
364
365         * glib/gutils.h: Simplify the inlining magic to make it
366         work at Oh zero.  (#162990, Kalpesh Shah) 
367
368 2005-01-04  Tor Lillqvist  <tml@iki.fi>
369
370         * glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
371         instead of setlocale() on Windows. setlocale() returns strings
372         like "Turkish_Turkey".
373
374 2005-01-04  Matthias Clasen  <mclasen@redhat.com>
375
376         Fix the inlining magic.  (#157536, Jens Hatlak, and
377         #149907, Morten Welinder)
378         
379         * configure.in: Define G_CAN_INLINE in glibconfig.h
380
381         * glib/gutils.h: Streamline the inlining magic a bit,
382         don't use extern when implementing the non-inlined 
383         version.
384
385 2005-01-03  Matthias Clasen  <mclasen@redhat.com>
386
387         * glib/gutils.c (g_find_program_in_path): Don't return
388         directories.  (#160738, Tommi Komulainen)
389
390         * glib/gfileutils.c (g_file_get_contents): Clarify the 
391         documentation.  (#162251, Mariano Suárez-Alvarez)
392
393 2005-01-02  Matthias Clasen  <mclasen@redhat.com>
394
395         * glib/gutils.c (g_setenv, g_unsetenv): Clarify the 
396         docs.  (#162747, Crispin Flowerday)
397
398 2005-01-01  J. Ali Harlow  <ali@juiblex.co.uk>
399
400         * configure.in: Don't use AC_TRY_RUN to test for long long format
401         when using the MSVCRT.DLL runtime since we know the answer anyway
402         and it causes some mild inconvience when cross compiling.
403
404         * README.win32: Add a reference to the cross compiling section
405         of the reference manual.
406
407         * docs/reference/glib/cross.sgml: MinGW uses MSVCRT.DLL which
408         requires %I64i instead of %lli. (#161306)
409
410 2005-01-01  Tor Lillqvist  <tml@iki.fi>
411
412         * glib/gutils.c: Make the g_getenv() ABI backward compatibility
413         wrapper more robust.
414
415 2005-01-01  Tor Lillqvist  <tml@iki.fi>
416
417         * glib/glib.symbols
418         * glib/gutils.h
419         * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
420         and g_find_program_in_path() take and return UTF-8 strings on
421         Win32. Implement DLL ABI backward compatility for them, too. Move
422         all the DLL ABI stability wrappers to the end of the file. Use
423         wide character API when available in inner_find_program_in_path().
424
425         * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
426         use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
427         to consider somebody actually having anything else than ASCII
428         in PATHEXT, but...)
429
430 2004-12-31  Tor Lillqvist  <tml@iki.fi>
431
432         * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
433         use GetFileAttributes() instead of stat(). stat() is unreliable
434         for corner cases like '\\server\share' or '.\'. Part of fixing
435         #161797. When testing for executability, in addition to the fixed
436         set of executable file name extensions also check the PATHEXT
437         environment variable.
438
439 2004-12-30  Tor Lillqvist  <tml@iki.fi>
440
441         * glib/gutils.c (g_get_current_dir): In the Win32 version, use
442         GetCurrentDirectory() directly for simpler buffer length
443         management. I don't trust getcwd() getting it right all the time.
444
445 2004-12-30  Matthias Clasen  <mclasen@redhat.com>
446
447         * glib/gfileutils.c (g_file_test): Typo fix.
448
449 2004-12-30  Tor Lillqvist  <tml@iki.fi>
450
451         * glib/gutils.c (g_path_skip_root): Require UNC paths to start
452         with exactly two slashes.
453         (g_get_current_dir): Use wide character API when available.
454         (g_path_get_dirname): Handle UNC paths better. Part of fix for
455         #161797.
456
457 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
458
459         * configure.in: Add an OS_LINUX conditional.
460
461         * glib/Makefile.am (TESTS): Only check the ABI on 
462         linux, since the shell script is not portable, and libtool
463         deficiencies may distort the ABI on other platforms.  (#161741)
464
465 2004-12-21  Matthias Clasen  <mclasen@redhat.com>
466
467         * glib/goption.c (print_entry): Don't show
468         the special G_OPTION_REMAINING entry.  (#161934,
469         Matthew F. Barnes)
470
471 2004-12-20  Tor Lillqvist  <tml@iki.fi>
472
473         * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
474         docs.
475
476 2004-12-20  Matthias Clasen  <mclasen@redhat.com>
477
478         * tests/option-test.c: Add some tests for '--' 
479         stripping.
480
481         * glib/goption.c (g_option_context_parse): Don't
482         strip '--' if it would be needed by a second option
483         parser.  (#161701)
484
485         * glib/gunicollate.c (g_utf8_collate): Make docs 
486         more accurate.  (#161683, Marcin Krzyzanowski)
487
488 2004-12-19  Matthias Clasen  <mclasen@redhat.com>
489
490         * glib/goption.c (g_option_context_parse): Call
491         post-parse hooks also if argv is NULL.  (#161668,
492         Marcin Krzyzanowski)
493