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