Improve performance by removing the use of an intermediate g_malloc'd
[platform/upstream/glib.git] / ChangeLog
1 2007-06-14  Ryan Lortie  <desrt@desrt.ca>
2
3         * docs/reference/glib/glib-sections.txt:
4         * glib/glib/symbols:
5         * glib/gstring.[ch] (g_string_printf_internal): Improve
6         performance by removing the use of an intermediate g_malloc'd
7         buffer.  Rename to g_string_append_vprintf, document, and expose
8         along with g_string_vprintf as new public API (#57693).
9
10 2007-06-15  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
11
12         * build, tests/string-test.c, glib/glib.symbols, 
13         glib/gstring.c, glib/gstring.h: Introduce g_string_overwrite(_len)?
14         for overwriting parts of strings (#368686, Samuel Cormier-Iijima)
15
16 2007-06-14  Cody Russell  <bratsche@gnome.org>
17
18         * gobject/gtype.c (g_type_class_add_private): Check for 0-sized
19         private data. (#443869)
20
21 2007-06-14  Matthias Clasen  <mclasen@redhat.com>
22         
23         * glib/gmain.c (g_timeout_add_seconds): Fix doc typos.  (#447534,
24         Vincent Untz)
25
26 2007-06-13  Behdad Esfahbod  <behdad@gnome.org>
27
28         * glib/pltcheck.sh: Whitelist g_atomic_{int,pointer}_[gs]et() as
29         we don't alias them intentionally. (#354522)
30
31 2007-06-13  Sven Neumann  <sven@gimp.org>
32
33         * glib/gslice.[ch] added g_slice_copy() and g_slice_dup() (#442029).
34
35         * glib/glib.symbols: updated.
36
37 2007-06-12  Behdad Esfahbod  <behdad@gnome.org>
38
39         * glib/gunicode.h: Add more G_GNUC_CONST and G_GNUC_PURE.
40
41 2007-06-11  Emmanuele Bassi  <ebassi@gnome.org>
42
43         * glib/gutils.c (maybe_expire_user_special_dirs),
44         (g_get_user_special_dir): Remove the cache expiration logic: it
45         makes g_get_user_special_dir() not thread-safe. Document the fact
46         that on some platform the value might be changed by the user and
47         that GLib won't be able to reflect the change.
48
49 2007-06-11  Tor Lillqvist  <tml@novell.com>
50
51         * glib/gwin32.c (g_win32_get_package_installation_directory)
52         (g_win32_get_package_installation_subdirectory): Update doc
53         comments. Mention that it is not recommeded to use the Registry
54         features.
55
56 2007-06-06  Tor Lillqvist  <tml@novell.com>
57
58         * glib/gutils.c: Add definitions for more CSIDL_* constants in
59         case missing from headers. Use CSIDL_PERSONAL instead of
60         CSIDL_MYDOCUMENTS as CSIDL_MYDOCUMENTS seems to be a new thing
61         that doesn't work in XP SP2 even.
62
63 2007-06-06  Matthias Clasen  <mclasen@redhat.com>
64
65         * glib/gutils.c (g_get_user_special_dir): Fall back to
66         $HOME/Desktop for the DESKTOP directory, like 
67         xdg_user_dir_lookup() does.
68
69 2007-06-05  Matthias Clasen  <mclasen@redhat.com>
70
71         * configure.in: Bump version
72
73         * === Released 2.13.4 ===
74
75         * NEWS: Updates
76
77 2007-06-05  Matthias Clasen  <mclasen@redhat.com>
78
79         * glib/gkeyfile.c (g_key_file_is_key_name):
80         (g_key_file_is_group_name): Don't assume the string is
81         valid UTF-8, since it may be user data.  (#444161, Ben Combee)
82
83 2007-06-05  Behdad Esfahbod  <behdad@gnome.org>
84
85         * glib/gutf8.c: Add not to g_utf8_get_char_validated() about
86         nul-terminated strings.
87
88 2007-06-05  Matthias Clasen  <mclasen@redhat.com>
89
90         * glib/gutils.c (g_get_user_special_dir): Don't deadlock
91         when running with threads.  (#444121, Christian Persch)
92
93 2007-06-05  Vincent Untz  <vuntz@gnome.org>
94
95         * glib/goption.c: (g_option_context_get_help): don't replace the usage
96         line with the description for optional parameters, but append the
97         description. (#444130)
98
99 2007-06-04  Matthias Clasen  <mclasen@redhat.com>
100
101         * configure.in: Bump version
102         
103         * === Released 2.13.3 ===
104
105         * NEWS: Updates
106
107 2007-06-04  Matthias Clasen  <mclasen@redhat.com>
108         
109         Add support for a number of special directories, as 
110         defined by the xdg-user-dirs specification.  (#432651,
111         Bastien Nocera, Emmanuele Bassi, Michael Natterer)
112
113         * glib/glib.symbols:
114         * glib/gutils.[hc]: Add the GUserDirectory enum and
115         g_get_user_special_dir(), with implementations based
116         on the xdg-user-dirs spec and on native interfaces
117         for Win32 and Carbon.
118         
119         * configure.in: Add Carbon checks.
120
121         * tests/tetsglib.c: Test g_get_user_special_dir().
122         
123 2007-06-03  Yevgen Muntyan  <muntyan@tamu.edu>
124
125         * glib/gregex.c: fixed g_regex_fetch_named* for cases when (?J)
126         is used inside a pattern (#442265, comment #12).
127         * tests/regex-test.c: Test it.
128
129 2007-06-03  Matthias Clasen <mclasen@redhat.com>
130
131         * NEWS: Updates
132
133 2007-06-03  Yevgen Muntyan  <muntyan@tamu.edu>
134
135         Some API additions and changes (#442265).
136
137         * glib/gregex.c:
138         * glib/gregex.h: new functions: g_regex_ref(), g_regex_unref() which
139         replaces g_regex_free(); g_match_info_get_regex(), g_match_info_get_string();
140         g_regex_check_replacement().
141         Made g_match_info_expand_references() accept NULL; changed GRegexEvalCallback
142         to take only arguments which are likely to be actualy used.
143
144         * docs/reference/glib/glib-sections.txt:
145         * glib/glib.symbols: Added new functions.
146
147         * tests/regex-test.c: Test them.
148
149         * docs/reference/glib/tmpl/gregex.sgml: Updated GRegexEvalCallback docs.
150
151 2007-05-31  Matthias Clasen <mclasen@redhat.com>
152
153         * README.win32: Fix a typo.  (#423708, Olivier Delhomme)
154
155 2007-05-30  Dan Winship  <danw@novell.com>
156
157         * glib/gkeyfile.h: add defines for desktop file handling. #339225,
158         original patch from Vincent Untz.
159
160 2007-05-29  Cody Russell  <bratsche@gnome.org>
161
162         * configure.in: Fix a sed script that doesn't correctly detect
163         i586-mingw32-gcc-3.4 compiler, and was causing -Wno-pointer-sign
164         errors when building with that compiler. (#440896, Yevgen Muntyan)
165
166 2007-05-29  Marco Barisione <marco@barisione.org>
167
168         * glib/gregex.c: Fix g_regex_fetch_named() and
169         g_regex_fetch_named_pos() when G_REGEX_DUPNAMES is used  (#434358,
170         Yevgen Muntyan and #419376, Marco Barisione, patch by Yevgen Muntyan)
171
172 2007-05-25  Behdad Esfahbod  <behdad@gnome.org>
173
174         * glib/guniprop.c (g_unichar_iswide), (g_unichar_iswide_cjk):
175         Update to Markus Kuhn's updated wcwidth for Unicode 5.0.
176
177 2007-05-22  Matthias Clasen  <mclasen@redhat.com>
178
179         * configure.in: Bump version
180
181         * === Released 2.13.2 ===
182
183         * README.in:
184         * NEWS: Updates
185
186 2007-05-18  Matthias Clasen  <mclasen@redhat.com>
187
188         * configure.in: Try again to move the compiler-dependency
189         of G_GNUC_INTERNAL to runtime.
190
191 2007-05-18  Matthias Clasen  <mclasen@redhat.com>
192
193         * configure.in: Don't let PERL_PATH be ''.  (#356769, Joseph Sacco)
194
195 2007-05-17  Michael Natterer  <mitch@imendio.com>
196
197         * configure.in: hotfix: revert last change to fix the build on OS X.
198
199 2007-05-17  Matthias Clasen  <mclasen@redhat.com>
200
201         * glib/goption.c (g_option_context_set_translate_func): Fix
202         a doc typo.  (#439232, Vincent Untz)
203
204 2007-05-17  Matthias Clasen  <mclasen@redhat.com>
205
206         * configure.in: Move the compiler-dependency in the G_GNUC_INTERNAL
207         definition from configure-time to runtime (of the compiler).
208         (#438869, Damien Carbery)
209
210         * glib/gdebug.h:
211         * glib/gmessages.h:
212         * glib/gunicodeprivate.h:
213         * glib/gthreadprivate.h: Move G_GNUC_INTERNAL before function
214         declarations to fix compilation with sun studio.  (#438873,
215         Damien Carbery)
216
217 2007-05-14  Matthias Clasen  <mclasen@redhat.com>
218
219         * glib/gslice.h:
220         * glib/gslice.c:
221         * glib/glib.symbols: Make g_slice_debug_tree_statistics() 
222         debug-only functionality again.
223
224 2007-05-14  Christian Persch  <chpe@gnome.org>
225
226         * docs/reference/glib/tmpl/string_utils.sgml: Improve g_strerror and
227         g_strsignal docs. Bug #438293.
228
229 2007-05-13  Tor Lillqvist  <tml@novell.com>
230
231         * glib/gwin32.h: Drop the pipe() macro. Defining macros outside of
232         its namespace that look like POSIX functions is not GLib's
233         business in my opinion. This means pipe()-using code that has
234         relied on this definition will need changing to call _pipe() on
235         Windows, and make the decision itself on what size pipe buffer to
236         use, and whether to use text or binary mode, and whether the pipe
237         handles should be inheritable or not.
238
239         * glib/gspawn-win32.c (make_pipe): Use _pipe() instead of pipe().
240
241 2007-05-11  Matthias Clasen  <mclasen@redhat.com>
242
243         * glib/goption.c: Allow G_OPTION_ARG_CALLBACK for 
244         G_OPTION_REMAINING.  (#437297, Dave Benson)
245
246         * tests/option-test.c: Add a test for this.
247
248 2007-05-04  Dan Winship  <danw@novell.com>
249
250         * glib/gkeyfile.c (g_key_file_get_boolean)
251         (g_key_file_get_boolean_list, g_key_file_get_integer)
252         (g_key_file_get_integer_list, g_key_file_get_double)
253         (g_key_file_get_double_list): Document the error return values
254         rather than calling them undefined. #435885.
255
256 2007-05-03  Behdad Esfahbod  <behdad@gnome.org>
257
258         * glib/glib.symbols:
259         * glib/gunicode.h:
260         * glib/guniprop.c (g_unichar_ismark):
261         Add g_unichar_ismark(). Patch from Yevgen Muntyan. Fixes #339991.
262
263 2007-05-03  Matthias Clasen <mclasen@redhat.com>
264
265         * configure.in: Bump version
266
267         * === Released 2.13.1 ===
268
269 2007-05-02  Matthias Clasen <mclasen@redhat.com>
270
271         * tests/threadpool-test.c:  Stop unused threads before
272         the last test, to make the test terminate reliably.
273
274         * NEWS: Updates
275
276 2007-05-02  Marco Barisione <marco@barisione.org>
277
278         * glib/gregex.c: Made more clear that the string passed to the match
279         functions cannot be freed before using g_match_info_fetch() and
280         similar functions, and fixed a typo.
281
282 2007-04-30  Matthias Clasen  <mclasen@redhat.com>
283
284         * glib/glib.symbols:
285         * glib/gregex.[hc]: Add g_regex_get_max_backref() and
286         g_regex_get_capture_count().  (#419371, Marco Barisione)
287         
288 2007-04-30  Matthias Clasen  <mclasen@redhat.com>
289
290         * glib/glib.symbols:
291         * glib/gregex.[hc]: Split GRegex into GRegex and GMatchInfo.
292         (#419368, Marco Barisione)
293
294         * tests/regex-test.c: Adapt.
295
296 2007-04-30  Chris Wilson  <chris@chris-wilson.co.uk>
297
298         * glib/gbookmarkfile.c (g_bookmark_file_get_app_info):
299         Include the gshell.h header file (to define g_shell_[un]quote)
300         and correct the order of the arguments to g_propagate_error(), as
301         spotted by gcc.
302
303 2007-04-29  Emmanuele Bassi  <ebassi@gnome.org>
304
305         * glib/gbookmarkfile.c:
306         (g_bookmark_file_set_app_info): Quote the passed command line...
307         
308         (g_bookmark_file_get_app_info): ... and unquote it when giving it
309         back. (#432274)
310
311 2007-04-27  Matthias Clasen <mclasen@redhat.com>
312
313         * glib/gstrfuncs.c: small coding style cleanups.
314
315 2007-04-27  Chris Wilson  <chris@chris-wilson.co.uk>
316
317         * glib/gregex.h: Remove trailing comma at end of enumerator list.
318
319 2007-04-27  Tor Lillqvist  <tml@novell.com>
320
321         * glib/gstdio.c (g_mkdir): Document that the mode argument is
322         ignored on Windows
323         (g_stat): Document that st_mode is mostly useless on Windows.
324
325 2007-04-25  Paolo Borelli  <pborelli@katamail.com>
326
327         * glib/gstrfuncs.c (g_strsplit): small cleanup. (#433387)
328
329 2007-04-24  Matthias Clasen  <mclasen@redhat.com>
330
331         * glib/glib.symbols:
332         * glib/goption.h:
333         * glib/goption.c (g_option_context_get_help): New function to
334         get the formatted help string.  (#336089, Dom Lachowicz)
335
336 2007-04-24  Michael Natterer  <mitch@imendio.com>
337
338         * tests/gobject/paramspec-test.c: test all GParamSpecString
339         validations with static and allocated strings.
340
341 2007-04-19  William Jon McCann  <mccann@jhu.edu>
342
343         * glib/gkeyfile.[ch]: (find_file_in_data_dirs),
344         (g_key_file_load_from_dirs), (g_key_file_load_from_data_dirs):
345         Add g_key_file_load_from_dirs for looking through a search
346         path for a key-file. (#355334)
347
348 2007-04-15  Tor Lillqvist  <tml@novell.com>
349
350         * build: Include the build module using the svn:externals
351         mechanism.
352
353         * Makefile.am
354         * configure: Add the references to build back.
355
356 2007-04-11  Matthias Clasen  <mclasen@redhat.com>
357
358         * glib/gspawn.c (g_spawn_async): Fix a doc typo.  (#427285, 
359         Jochen Baier)
360
361 2007-04-11  Emmanuele Bassi  <ebassi@gnome.org>
362
363         * glib/ghash.[ch]: Add g_hash_table_get_keys() and
364         g_hash_table_get_values(), API to retrieve the keys
365         and values inside an hash table in list form. (#413133)
366
367         * glib/glib.symbols: Update symbols.
368
369         * tests/hash-test.c: Exercise newly added functions.
370
371 2007-04-11  Matthias Clasen  <mclasen@redhat.com>
372
373         * configure.in: Use CFLAGS/LDFLAGS in addition to 
374         PCRE_CFLAGS/PCRE_LIBS when checking system PCRE.  (#421607, 
375         Paul Jarc)
376
377 2007-03-27  Emmanuele Bassi  <ebassi@gnome.org>
378
379         * glib/gdate.h: Remove old comment and forward declaration of
380         struct tm: gdate.h includes time.h now.
381
382 2007-03-23  Matthias Clasen  <mclasen@redhat.com> 
383
384         * tests/gobject/Makefile.am: Handle $RANDOM missing.  (#356843,
385         Paul Jarc)
386
387 2007-03-22  Matthias Clasen  <mclasen@redhat.com> 
388
389         * glib/guniprop.c: Fix corner-cases of upper/lowercase conversion.
390         (#418217, Denis Jacquerye)
391
392 2007-03-22  Chris Wilson  <chris@chris-wilson.co.uk>
393
394         * glib/gkeyfile.c: Track whether the last key=value pair in a group
395         is a blank line and during to_data() only insert a new blank line
396         betweens group in its absence. This allows the beautification of the
397         GKeyFile and prevents newlines being inserted indefinitely. (#420686)
398
399         * tests/keyfile-test.c (test_reload_idempotency): Test that after a 
400         single beautification pass, g_key_file_to_data() does not alter its
401         input data.
402
403 2007-03-21  Matthias Clasen  <mclasen@redhat.com>
404
405         * glib/pcre/Makefile.am: Make builddir != srcdir work.  (#419900)
406
407 2007-03-19  Paolo Borelli  <pborelli@katamail.com>
408
409         * glib/gutf8.c (fast_validate_len): remove unneeded checks.
410
411 2007-03-18  Matthias Clasen  <mclasen@redhat.com>
412
413         * glib/gregex.c: Cosmetic fixes
414
415 2007-03-17  Marco Barisione <marco@barisione.org>
416
417         * glib/update-pcre/table-reduction.patch:
418         * glib/update-pcre/make_utt.py:
419         * glib/update-pcre/utt.patch: Add forgotten files
420
421         * glib/update-pcre/update.sh: Call python directly instead of relying
422         on shebang. Also copy the changes from glib/pcre/makefile.msc to this
423         file
424
425 2007-03-17  Hans Breuer  <hans@breuer.org>
426
427         * glib/makefile.msc.in glib/pcre/makefile.msc 
428           glib/update-pcre/update.sh : define PCRE_STATIC to reflect the 
429         inclusion of pcre as LIB, not stand-alone DLL. Also set NEWLINE=-1
430         to match any newline by default, use of ../../build/win32/make.msc
431
432         * glib/gregex.h : minimal includes of <glib/*.H> instead of <glib.h>
433
434         * glib/gnulib/makefile.msc : make use of ../../build/win32/make.msc
435
436         * tests/regex-test.c(verbose): don't pass a string containing '%' 
437         as first parameter to g_print ()
438         (test_match) : for the unexpected case output pattern and string
439         escaped
440
441         * tests/child-test.c tests/slice-color.c : fix c99ism
442         * tests/slice-test.c : fix c99ism and gccism
443         * tests/mapping-test.c tests/base-64-tests.c : don't 
444         #include <unistd.h> unconditionally
445         * tests/option-test.c : use G_GINT64_CONSTANT() instead of direct LL
446
447         * tests/makefile.msc.in : more tests build
448
449 2007-03-17  Matthias Clasen  <mclasen@redhat.com>
450
451         * glib/gsequence.[hc]:
452         * glib/glib.symbols:
453         * tests/sequence-test.c: Move the consistency
454         checks to the test.
455
456 2007-03-16  Matthias Clasen  <mclasen@redhat.com>
457
458         * configure.in: Bump version
459
460         * === Released 2.13.0 ===
461
462         * NEWS: Updates
463
464 2007-03-16  Matthias Clasen  <mclasen@redhat.com>
465         
466         * glib/glib.symbols:
467         * glib/gsequence.h: Add the test function to the header,
468         since it is exported.
469
470         * glib/gbase64.c (g_base64_decode): Warn if the input
471         is too short.  (#418862, Halton Huo)
472
473 Fri Mar 16 11:24:51 2007  Tim Janik  <timj@imendio.com>
474
475         * glib/gscanner.[hc]: reverted premature commit which broke
476         GScanner ABI and API, #415323.
477
478 2007-03-16  Chris Wilson  <chris@chris-wilson.co.uk>
479
480         * glib/gkeyfile.c: Convert to GSlice and check for redundant
481         clears. (#418637)
482
483 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
484
485         * glib/gscanner.[hc]: Revert recent changes that break
486         existing users of GScanner.
487
488 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
489
490         * glib/gscanner.c (g_scanner_get_token_ll): Fix a typo
491         in the last commit.  (#415323, Richard Hult)
492
493 2007-03-15  Tor Lillqvist  <tml@novell.com>
494
495         * glib/gnulib/Makefile.am (INCLUDES): Add -I$(top_srcdir)/glib so
496         that gregex.h finds <glib.h>.
497
498         * glib/update-pcre/Makefille.am-1: Add -DGLIB_COMPILATION so that
499         we don't think g_ascii_table is dllimport.
500
501         * glib/pcre/Makefile.am: Corresponding change.
502
503         * glib/update-pcre/notdll.patch: New file. Drop
504         dllimport/dllexport magic for the pcre symbols.
505
506         * glib/update-pcre/Makefile.am: Dist it.
507
508         * glib/update-pcre/update.sh: Apply notdll.patch.
509
510         * glib/pcre/pcre.h: Corresponding change.
511
512 2007-03-15  Tor Lillqvist  <tml@novell.com>
513
514         * glib/gtypes.h: Add comment to avoid misleading people with the
515         large number of digits in G_PI etc. (#404338)
516
517 2007-03-15  Tor Lillqvist  <tml@novell.com>
518
519         * config.h.win32.in: Update to match what configure produces.
520
521 2007-03-15  Marco Barisione <marco@barisione.org>
522
523         Add GRegex for regular expression matching.  (#50075)
524
525         * configure.in: Handle GRegex compilation.
526
527         * glib/gregex.c:
528         * glib/gregex.h: Code for GRegex.
529
530         * glib/Makefile.am:
531         * glib/makefile.msc.in: Updated makefiles.
532
533         * glib/pcre/*: Internal copy of PCRE.
534
535         * glib/update-pcre/*: Stuff to automatically update the internal PCRE
536         to a newer version.
537
538         * tests/regex-test.c:
539         * tests/Makefile.am:
540         * tests/makefile.msc.in: Add tests for GRegex.
541
542 2007-03-15  Chris Wilson  <chris@chris-wilson.co.uk>
543
544         * glib/gmain.c (g_main_dispatch): Replace a
545         g_slist_prepend/g_slist_remove pair with an on-stack link
546         and open coding. (#416094)
547
548 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
549
550         Fix two glitches in the Unicode case conversion
551         functions (#418217,  Denis Jacquerye)
552
553         * glib/guniprop.c (g_unichar_toupper): Handle zero entries
554         in special_case_table correctly.
555         (g_unichar_totitle): Fall back to g_unichar_toupper.
556
557 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
558
559         * glib/gscanner.[hc]: Some optimizations, use a lookup
560         table for character classes, pre-allocate GStrings with
561         reasonable sizes.  (#415323, Charlie Brej)
562
563 2007-03-14  Matthias Clasen  <mclasen@redhat.com>
564
565         * glib/gkeyfile.c (g_key_file_get_double): Fix a 
566         small typo.  (#417847, Bobby Jack)
567
568 2007-03-08  Matthias Clasen  <mclasen@redhat.com>
569
570         * glib/gstrfuncs.c (g_strtoll): Return negative values.
571         (#416062)
572
573         * tests/strtoll-test.c: Add more testcases.
574
575 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
576
577         * glib/gstring.c (g_str_equal): Clarify docs.  (#364026, 
578         Bastian Nocera)
579
580 2007-03-06  Matthew Barnes  <mbarnes@redhat.com>
581
582         * glib/gqueue.h:
583         * glib/gqueue.c: Add G_QUEUE_INIT, g_queue_init(), and
584         g_queue_clear() to better support statically allocated
585         queues.  (#413244)
586
587 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
588
589         * glib/gkeyfile.c (g_key_file_parse_value_as_boolean):
590         Remove a NULL check that didn't do any good.  (#360904,
591         Paolo Borelli)
592
593 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
594
595         * glib/gmarkup.c (g_markup_parse_context_parse): Report
596         more accurate position for invalid UTF-8.  (#350802,
597         Simon Budig)
598
599 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
600
601         * glib/gbase64.c: Add NULL checks to the base64 
602         functions that take pointers.  (#399611, Martyn Russell)
603
604 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
605
606         Work with Solaris gettext (#341988, Laszlo Peter)
607
608         * m4macros/glib-gettext.m4: Make GLIB_WITH_NLS define
609         MSGFMT_OPTS if msgfmt supports -c.
610
611         * po/Makefile.in.in: Use MSGFMT_OPTS when calling
612         msgfmt.
613
614 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
615
616         * tests/Makefile.am: Apply a patch by Loïc Minier
617         to fix building with -Wl,-z,defs.  (#149144)
618
619 2007-03-03  Thierry Randrianiriana  <randrianiriana@gmail.com>
620
621         * po/mg.po: Added Malagasy translation.
622         * configure.in: Added Malagasy 'mg' to ALL_LINGUAS
623
624 2007-03-01  Ihar Hrachyshka <iharh@gnome.org>
625         * configure.in: Added be@latin to ALL_LINGUAS.
626
627 2007-02-17  Tor Lillqvist  <tml@novell.com>
628
629         * glib/gdate.c (win32_strftime_helper): New Win32-only
630         function. Use the wide character Win32 API to do the work of
631         strftime(): GetThreadLocale(), GetLocaleInfoW(), GetDateFormatW()
632         and GetTimeFormatW().
633         (g_date_strftime): On Windows use win32_strftime_helper()
634         instead of strftime() to avoid codepage issues with strftime().
635         Unfortunately using wcsftime() would not help either. (#404832)
636
637 2007-02-16  Soren Sandmann <sandmann@redhat.com>
638
639         * tests/sequence-test.c: For move, test moving between two
640         sequences. Add test for swap.
641
642         * glib/gsequence.c: Replace splay tree with a treap.
643         (check_node): Add checks for the treap invariants.
644
645 2007-02-10  Hans Breuer  <hans@breuer.org>
646
647         * glib/makefile.msc.in : added gsequence.obj
648
649 Fri Feb  9 17:46:18 2007  Søren Sandmann  <sandmann@redhat.com>
650
651         * glib/gsequence.c (g_sequence_get_end_iter): Remove assertion.
652         * glib/gsequence.c (is_end): Return TRUE if the iter doesn't have
653         a parent.
654         * glib/gsequence.c: Fix grammar of comment.
655         * glib/gsequence.c (node_update_fields): Use a temporary variable
656         for the n_nodes.
657
658 2007-02-07  Soren Sandmann <sandmann@daimi.au.dk>
659
660         * tests/sequence-test.c (compare_items): Force an arbitrary order
661         on otherwise identical items.
662
663         * glib/gsequence.c: Add comment discussing splay trees vs. other trees.
664         * glib/gsequence.c (is_end): Add fast path for the common case
665         when the node is not actually the end node.
666
667 2007-02-05  Soren Sandmann <sandmann@daimi.au.dk>
668
669         * glib/gsequence.c (g_sequence_sort_iter): Don't prohibit access
670         until after the g_sequence_move_range() call.  Bug 404759,
671         Christian Persch.
672
673        * tests/sequence-test.c: Formatting fix.
674
675 2007-02-03  Soren Sandmann <sandmann@daimi.au.dk>
676
677         * glib/gsequence.c (struct _GSequence): Add a new 'real_sequence'
678         field.
679         (g_sequence_new): Initialize real_sequence to the sequence
680         (g_sequence_sort_iter): Set real_sequence of the temporary
681         sequence to the real sequence.
682         (g_sequence_sort_changed_iter): Same
683         (g_sequence_insert_sorted_iter): Same
684         (g_sequence_search_iter): Same
685         (g_sequence_iter_get_sequence): Return real_sequence
686
687         * tests/sequence-test.c (compare_iters): Insert assertions that
688         the iters point to the sequence being manipulated.
689
690 2007-02-03  Soren Sandmann <sandmann@daimi.au.dk>
691
692         * glib/gsequence.[ch]: New files implementing GSequence, a list
693         implemented using a binary tree.
694         * glib/glib.h, glib/glib.symbols: Update for GSequence.
695         * docs/reference: Add documentation for GSequence
696         * tests: Add sequence-test.c, a thorough test of all of
697         the GSequence API.
698
699 2007-01-30  Matthias Clasen <mclasen@redhat.com>
700
701         * glib/glib.symbols:
702         * glib/gslice.h:
703         * glib/gslice.c: Don't make ABI depend on G_ENABLE_DEBUG,
704         just add an empty g_slice_debug_tree_statistics () implementation
705         in the !G_ENABLE_DEBUG case.
706
707 2007-01-26  Matthias Clasen <mclasen@redhat.com>
708
709         * configure.in: Define G_GNUC_INTERNAL for Sun Studio
710         as __hidden.  (#342981, Brian Cameron)
711
712         * glib/gconvert.c:
713         * glib/gutf8.c: Move G_GNUC_INTERNAL uses to the right
714         spot.
715
716 2007-01-26  Matthias Clasen <mclasen@redhat.com>
717
718         * gmem.c:
719         * gslice.c:
720         * gmessages.c:
721         * gutils.c: Make some structs which are used only once
722         non-static.
723
724 2007-01-24  Benjamin Otte <otte@gnome.org>
725
726         * glib/gprintf.c (g_sprintf): Clarify the documentation
727         regarding overflows (wording by Jan Schmidt)
728
729 2007-01-23  Roozbeh Pournader  <roozbeh@farsiweb.info>
730
731         * README: Remove mention of no-longer-existing PATCH
732         keyword in bugzilla. (#396899)
733
734 2007-01-23  Matthias Clasen  <mclasen@redhat.com>
735
736         * glib/gutf8.c (g_utf8_get_char_validated): Clarify
737         the behaviour is max_len is zero.  (#400044,
738         Benjamin Dauvergne)
739
740 2007-01-23  Matthias Clasen  <mclasen@redhat.com>
741
742         * glib/goption.c (print_help): Use bitwise &
743         when operating on flags.  (#399971, Jon Oberheide)
744
745 2007-01-19  Matthias Clasen  <mclasen@redhat.com>
746
747         Some file list updates (#398069, Owen Taylor)
748
749         * docs/Changes-2.0.txt
750         * docs/reference/README.cvs-commits
751         * glib.spec.in: Remove obsolete files
752
753         * tests/Makefile.am:
754         * glib/libcharset/Makefile.am:
755         * gobject/Makefile.am:
756         * Makefile.am: Add some missing files to EXTRA_DIST
757
758         * tests/timeloop-basic.c: Make it build
759         * HACKING: Small updates
760
761 2007-01-18  Matthias Clasen  <mclasen@redhat.com>
762
763         * glib/gdate.c (g_date_set_time): Fix a typo.  (#398203,
764         Owen Taylor)
765
766 2007-01-17  Tor Lillqvist  <tml@novell.com>
767
768         * config.h.win32.in
769         * glib/galloca.h
770         * glib/gbacktrace.h
771         * glib/gwin32.c
772         * glibconfig.h.win32.in
773         * README.win32: More minor tweaks for Digital Mars
774         compiler. (#346808, Serhat Sevki Dincer)
775
776 2007-01-17  Tor Lillqvist  <tml@novell.com>
777
778         * glib-zip.in: DLLs are always installed in "bin" with current
779         libtool, drop unnecessary logic to check where they are. Include
780         also the COPYING file.
781
782 2007-01-17  Tor Lillqvist  <tml@novell.com>
783
784         * glib/galloca.h: Use <malloc.h> also with Digital Mars compiler
785         on Win32. (#346808, Serhat Sevki Dincer)
786
787 2007-01-16  Matthias Clasen  <mclasen@redhat.com>
788
789         * glib/gthread.h:
790         * glib/gthread.c:
791         * glib/glib.symbols: Revert an accidental ABI break by
792         moving gettime out of the GThreadFunctions struct and making
793         it a separate variable.  (#397139, Joe Marcus Clarke)
794
795         * gthread/*.c: Adapt.
796
797 2007-01-16  Tor Lillqvist  <tml@novell.com>
798
799         * glib/gthread.c (gettime): GetSystemTimeAsFileTime() returns 100s
800         of nanoseconds since 1601, so offset to Unix epoch (1970) and
801         multiply by 100 to get nanoseconds which is what we want.
802
803 2007-01-15  Tor Lillqvist  <tml@novell.com>
804
805         * glib/gmain.h (struct _GPollFD): Fix mistake in my last commit.
806
807 2005-01-15  Matthias Clasen  <mclasen@redhat.com>
808
809         * glib/giochannel.c:
810         * glib/gbookmarkfile.c: Remove redundant NULL-checks.
811         (#369668, Morten Welinder)
812
813 2005-01-15  Matthias Clasen  <mclasen@redhat.com>
814
815         * glib/gthread.c:
816         * gthread/gthread-posix.c: Correct the gettime calculations
817         once more.  (#395203, Chris Wilson)
818
819 2007-01-15  Tor Lillqvist  <tml@novell.com>
820
821         * glib/gmain.h (struct _GPollFD): Prepare for potential Win64
822         build: Use gint64 for the fd field on Win64, as we want to be able
823         to store a HANDLE in it. (#395422) (Other changes will surely also
824         be necessary when building on Win64, at least in giowin32.c.)
825
826 2007-01-15  Tor Lillqvist  <tml@novell.com>
827
828         * glib/gwin32.c (g_win32_getlocale): Simplify greatly. Instead of
829         hardcoding a large switch statement, just ask Windows for the
830         ISO639 and ISO3166 codes. Tack on @Latn or @Cyrl for those
831         languages which can alternatively be written in Latin or
832         Cyrillic. Fixes #395419.
833
834 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
835
836         * glib/gkeyfile.c: Rework the handling of invalid
837         keys/groups again. We are back to being liberal about
838         what we accept, and only reject things that would lead
839         to non-rereadable keyfiles.
840
841         * tests/keyfile-test.c: Adapt tests.
842
843 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
844
845         * glib/gutils.c (g_get_home_dir): Clarify docs.  (#394687,
846         Marc Brockschmidt)
847
848 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
849
850         * glib/gthread.c: Include windows.h and fix
851         include order. (#394258, Kazuki Iwamoto)
852
853 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
854
855         * configure.in: Make G_GNUC_INTERNAL a no-op for
856         gcc 2.95.    (#329031, David Schleef, Marc Brockschmidt)
857
858 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
859
860         * gthread/gthread-posix.c:
861         * glib/gtimer.c:
862         * glib/gthread.c: Fix errors in the recently moved
863         time calculations.  (#395203, Chris Wilson)
864
865 2007-01-10  Matthias Clasen  <mclasen@redhat.com>
866
867         * configure.in: Actually link gthread against librt.
868         (#394641, Marco Pesenti Gritti)
869
870 2007-01-10  Matthias Clasen  <mclasen@redhat.com>
871
872         * glib/gkeyfile.c (g_key_file_is_key_name): Grr, allow '*' in keys,
873         too.  (#394262)
874
875 2007-01-09  Behdad Esfahbod  <behdad@gnome.org>
876
877         * glib/gutils.h: Use a more optimized g_bit_storage() when gcc is
878         available.  (#371670, Daniel Elstner)
879
880 2007-01-08  Matthias Clasen  <mclasen@redhat.com>
881
882         * gthread/gthread-posix.c (g_thread_impl_init): Don't
883         use _SC_MONOTONIC_CLOCK unless USE_CLOCK_GETTIME is
884         defined.  (#394150)
885
886 2007-01-07  Matthias Clasen  <mclasen@redhat.com>
887
888         Don't link glib against libpthread.  (#393812)
889
890         * configure.in: Link gthread against librt, not glib itself.
891
892         * glib/gthread.h:
893         * glib/gthread.c: Add a new thread function, gettime.
894
895         * glib/gtimer.c: Use gettime instead of directly working with
896         the various system interfaces.
897
898         * gthread/gthread-impl.c:
899         * gthread/gthread-posix.c:
900         * gthread/gthread-win32.c: Implement gettime.
901
902 2007-01-07  Matthias Clasen  <mclasen@redhat.com>
903
904         * m4macros/glib-2.0.m4: Use PKG_PROG_PKG_CONFIG.  (#392636,
905         Yevgen Muntyan)
906
907 2007-01-07  Tor Lillqvist  <tml@novell.com>
908
909         * glib/giowin32.c: Handle GIOChannels for file descriptors
910         connected to the console separately. This would typically be the
911         fd 0, 1, or 2 (if not redirected) in a console application. For
912         such fds we don't need a separate thread, as console HANDLEs are
913         waitable objects. (#359202, Michiel de Hoon)
914
915 2007-01-04  Behdad Esfahbod  <behdad@gnome.org>
916
917         * tests/bit-test.c (builtin_bit_nth_lsf1), (builtin_bit_nth_lsf2),
918         (builtin_bit_nth_msf): Fix tests on x86_64.
919
920 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
921
922         * glib/goption.c (_g_unichar_get_width), (_g_utf8_strwidth),
923         (calculate_max_length), (print_entry), (print_help): Take zerowidth
924         and double-width chars into consideration when computing width of a
925         string.  Also fix another bug in width computation. (#346955)
926
927         * glib/guniprop.c (g_unichar_iszerowidth): Fix typo.  It was not
928         working correctly.
929
930 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
931
932         * glib/glib.symbols:
933         * glib/gunicode.h:
934         * glib/guniprop.c: Add g_unichar_iszerowidth(). (#347645)
935
936 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
937
938         * glib/gutils.h: Fix bug in g_bit_nth_lsf (#371631) and use
939         __builtin_clzl for g_bit_storage if available (#371670).
940
941         * tests/Makefile.am:
942         * tests/bit-test.c: New test, to test g_bit_* operations against
943         naive and builtin implementations.
944
945 2007-01-02  Behdad Esfahbod  <behdad@gnome.org>
946
947         * configure.in: Avoid more warnings from running libtool --config.
948         (#391364)
949
950 2007-01-03  Michael Natterer  <mitch@imendio.com>
951
952         * removed all .cvsignore files. SVN doesn't need them.
953
954 2007-01-02  Emmanuele Bassi  <ebassi@gnome.org>
955
956         * glib/gbookmarkfile.c (expand_exec_line): Add support for
957         expanding the desktop entry spec variables %U (list of URIs)
958         and %F (list of filenames), so that using the command line
959         from the Exec and TryExec key of a desktop entry file works
960         as intended.
961
962 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
963
964         * configure.in: Avoid warnings from running libtool --config.
965         (#391364, Loïc Minier)
966
967 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
968
969         * glib/gbookmarkfile.c (g_bookmark_file_get_app_info):
970         Return an error if the uri is bad. (#391370, Maciej Piechotka)
971
972 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
973
974         * glib/glib.symbols: Guard g_slice_debug_tree_statistics
975         by G_ENABLE_DEBUG.  (#390940, Kazuki Iwamoto)
976
977 2007-01-02  Michael Natterer  <mitch@imendio.com>
978
979         * configure.in
980         * Makefile.am: remove references to build/ until a proper decision
981         has been made what to do with it.
982
983 2007-01-01  Matthias Clasen  <mclasen@redhat.com>
984
985         * glib-gettextize.in: Silence autoconf warnings about
986         datarootdir.  (#391367, Loïc Minier)
987
988 2006-12-31  Matthias Clasen  <mclasen@redhat.com>
989
990         * glib/gslice.c: Fix some C99isms.  (#390913, Kazuki Iwamoto)
991
992 Fri Dec 29 13:28:07 2006  Tim Janik  <timj@imendio.com>
993
994         * glib/gslice.c: turned detection of too late g_thread_init() calls
995         into a warning. this is a temporary work-around for some head-room
996         to fix affected programs, memory corruption still occours regardless.
997
998 2006-12-29  Matthias Clasen  <mclasen@redhat.com>
999
1000         * tests/gobject/Makefile.am:
1001         * tests/gobject/dynamictype.c: New test for dynamic type
1002         registration macros.
1003
1004 Thu Dec 28 21:14:45 2006  Tim Janik  <timj@imendio.com>
1005
1006         * glib/gslice.c: removed pthread-dependant debugging bits, the code
1007         was already converted to GMutex. this obsoletes Tor's recent fixups.
1008
1009 2006-12-28  Tor Lillqvist  <tml@novell.com>
1010
1011         * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME)
1012         * glib/gutils.c (get_windows_directory_root): : Use only the wide
1013         character API here, too.
1014
1015         * glib/gslice.c: Make it compile on Win32 without pthreads: Use a
1016         Win32 critical section instead.
1017
1018         * glib/gmessages.c (g_logv): On Win32, if we get a fatal error
1019         message while being debugged we break into the debugger with
1020         G_BREAKPOINT(). Don't call abort() if the user is foolhardy enough
1021         to continue after the breakpoint. The user presumably knows what
1022         he is doing and deserves what he gets. (#376645, Andreas Köhler)
1023
1024 Thu Dec 28 12:50:31 2006  Tim Janik  <timj@imendio.com>
1025
1026         * glib/gslice.h, glib/gslice.c: implemented static debugging
1027         hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
1028         use abort() to exit in mem_error() to allow catching of these in gdb.
1029         abort programs with a descriptive error message if g_thread_init() is
1030         called after GSlice was in use. previously this just silently corrupted
1031         the magazines.
1032
1033         * glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte
1034         pointer alignment on 64bit systems and request smaller slice sizes
1035         on 32bit systems.
1036
1037         * tests/slice-test.c: support '~' option flag to introduce slice
1038         allocation/release corruption with a significant probability. this
1039         allowes testing of G_SLICE=debug-blocks.
1040
1041 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
1042
1043         * glib/gconvert.[hc]:
1044         * glib/gfileutils.c:
1045         * glib/giochannel.c:
1046         * glib/goption.c:
1047         * glib/gspawn.c:
1048         * glib/gunicollate.c:
1049         * glib/gutils.c:
1050         * tests/timeloop-basic.c:
1051         Consistently use gsize rather than size_t.  (#333310,
1052         Morten Welinder)
1053
1054 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
1055
1056         * configure.in: Use AC_CACHE_CHECK for the nl_langinfo
1057         check.  (#304517, Lőrinczy Zsigmond)
1058
1059 2006-12-27  Tor Lillqvist  <tml@novell.com>
1060
1061         * glib/gwin32.h
1062         * glib/gwin32.c (get_package_directory_from_module)
1063         (g_win32_get_package_installation_directory)
1064         (g_win32_get_package_installation_subdirectory): Add const to
1065         gchar* arguments. (#384523, Yevgen Muntyan)
1066
1067 2006-12-27  Ryan Lortie  <desrt@desrt.ca>
1068
1069         * glib/ghash.c: cache the value of the hash function
1070         in the GHashNode.  this speeds up resizing the hash
1071         table and it also allows a slight optimisation on
1072         lookups.  (#388332)
1073
1074 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
1075
1076         * glib/gunicollate.c (g_utf8_collate_key): Don't modify
1077         the current locale.  (#389300)
1078
1079 2006-12-26  Matthias Clasen  <mclasen@redhat.com>
1080
1081         * glib/gutf8.c: Add hints for locale-dependent interfaces.
1082         * glib/gconvert.c: Add hints for locale-dependent interfaces.
1083
1084         * glib/gconvert.c (g_get_filename_charsets): Improve
1085         formatting of docs.
1086
1087 2006-12-26  Behdad Esfahbod  <behdad@gnome.org>
1088
1089         * configure.in: Use libtool to determine shared library suffix.
1090         (#357245)
1091
1092 2006-12-24  Matthias Clasen  <mclasen@redhat.com>
1093
1094         * tests/run-collate-tests.sh:
1095         * tests/unicode-collate.c: Silently skip tests if
1096         we can't set LC_COLLATE to en_US.  (#336438)
1097
1098 2006-12-19  Matthias Clasen  <mclasen@redhat.com>
1099
1100         * glib/gkeyfile.c (g_key_file_is_key_name): Accept
1101         '/', '+' and '.' in key names, since gnome-vfs uses
1102         mime types as keys in some cache.
1103
1104         * tests/keyfile-test.c: Tests for the above.
1105
1106 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
1107
1108         * configure.in: Fix the broken poll test.  (#387260,
1109         Christian Persch)
1110
1111         * glib/gmain.c (child_watch_helper_thread): Readd a
1112         return which was removed as dead code a while ago.
1113         icc may consider it dead, but gcc doesn't like non-void
1114         functions without a return...  (#354707)
1115
1116         * tests/Makefile.am: Try a different fix for bug 346373.
1117
1118 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
1119
1120         Fix bug 161288:
1121
1122         * configure.in: Check for wcslen.
1123
1124         * glib/gnulib/vasnprintf.c: Handle wcslen missing.
1125
1126 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
1127
1128         * glib/gkeyfile.c: Accept '@' in locale names.
1129
1130         * glib/gkeyfile.c: Tighten up the check for allowed
1131         key and group names.  (#343191, Tommi Komulainen)
1132
1133         * tests/keyfile-test.c: Test handling of key and group names.
1134
1135         * tests/Makefile.am: Don't use $RANDOM if the shell doesn't
1136         have it.  (#346373, Thomas Klausner)
1137
1138 2006-12-17  Behdad Esfahbod  <behdad@gnome.org>
1139
1140         * glib/gstring.c: Improve docs about string functions taking a
1141         length.  (#378727)
1142
1143 2006-12-17  Matthias Clasen  <mclasen@redhat.com>
1144
1145         * glib/gconvert.c:
1146         * glib/gutf8.c (_g_charset_get_aliases): Put the G_GNUC_INTERNAL
1147         where gcc doesn't complain about it.
1148
1149         * glib/ghash.c: Make ref_count an int to avoid compiler
1150         warnings.
1151
1152         * configure.in: Use AC_LANG_SOURCE for the clock test.
1153
1154         * glib/gthreadpool.h:
1155         * glib/gthreadpool.c (g_thread_pool_free): Don't use "wait"
1156         as parameter name.  (#379207, Christian Biere)
1157
1158         * glib/gspawn.c: Refer to g_child_watch_add() in addition
1159         to waitpid().
1160
1161         * glib/gstrfuncs.c (g_strndup, g_strnfill): Move docs
1162         inline, and improve wording.  (#372598, Behdad Esfahbod)
1163
1164         * glib/gspawn.c: Add some pointers to the gdk_spawn_
1165         variants.  (#338134, Federico Mena Quintero)
1166
1167         * configure.in: Make montonic clock test work again. Does
1168         AC_COMPILE_IFELSE not get confdefs ? Also, move the clock
1169         tests below the thread checks to fix #364663.
1170
1171         * tests/run-markup-tests.sh: Don't use diff -u  (#380801,
1172         Marek Rouchal)
1173
1174         * glib/gspawn.c: Fix the recent fdwalk()-related changes
1175         to not break mapping-test.  (#286838, Marco Barisione)
1176
1177         * glib/gstring.c (g_string_chunk_new): Don't shadow size.
1178         (#386760, Kazuki IWAMOTO)
1179
1180 2006-12-16  Matthias Clasen  <mclasen@redhat.com>
1181
1182         * glib/gstring.c: Move more documentation inline.
1183
1184         * configure.in: Use AC_COMPILE_IFELSE for the monotonic
1185         clock test.  (#362918, Han-Wen Nienhuys, Jeremy Lainé)
1186
1187         * glib/gstring.c: Move documentation inline.
1188
1189 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
1190
1191         * glib/giochannel.h: Make ref_count a gint to avoid
1192         compiler warnings.  (#321977, Andrew Paprocki)
1193
1194         * configure.in: On Solaris, set CFLAGS and LDFLAGS that
1195         work both with Sun cc and gcc.  (#315061, Lazlo Peter)
1196
1197         * glib/gspawn.c: Undefine READ_OK to fix the build on
1198         old versions of Darwin.  (#327800)
1199
1200         * glib/glib.symbols:
1201         * glib/gstring.[hc] (g_string_chunk_clear): Add a function
1202         for clearing a GStringChunk. (#364608, Matt Barnes)
1203
1204         * glib/guniprop.c (interval_compare): Avoid a compiler
1205         warning.
1206
1207         * glib/gspawn.c (do_exec): Call set_cloexec() with
1208         the right parameters.  (#386252, Guillaume Desmottes)
1209
1210 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
1211
1212         Fix #357585, Padraig O'Briain.
1213
1214         * configure.in: Check for fdwalk.
1215
1216         * glib/gspawn.c (do_exec): Use fdwalk() to close all
1217         file descriptors.
1218
1219         * glib/gspawn.c (fdwalk): Fallback implementation of
1220         fdwalk.
1221
1222 2006-12-14  Matthias Clasen  <mclasen@redhat.com>
1223
1224         * glib/gconvert.c (open_converter): Don't use alloca
1225         and avoid allocating memory for small keys that are
1226         already cached.  (#172406, Morten Welinder)
1227
1228         * glib/gmain.c (g_child_watch_add_full): Improve the docs.
1229         (#345569, Tim-Philipp Müller)
1230
1231         * glib/gkeyfile.c (g_key_file_add_group): If the group
1232         is already there, make it current.  (#385910, Joe Halliwell)
1233
1234         * tests/keyfile-test.c: Add a test for duplicate groups/keys.
1235
1236 2006-12-13  Matthias Clasen  <mclasen@redhat.com>
1237
1238         * m4macros/glib-gettext.m4: Require AC_CANONICAL_HOST in
1239         GLIB_WITH_NLS.  (#385132, Laszlo Peter)
1240
1241 2006-12-12  Matthias Clasen  <mclasen@redhat.com>
1242
1243         * configure.in: Add a check for broken poll on Mac OS X.
1244
1245         * glib/gmain.c: Use poll emulation on OS X.  (#302672, Toby Peterson,
1246         patch by Dave Vasilevsky)
1247
1248 2006-12-11  Matthias Clasen  <mclasen@redhat.com>
1249
1250         * glib/gatomic.c: Don't use local numeric labels in
1251         inline assembler on AIX.  (#316434, Hans Rosenfeld)
1252
1253         * glib/gunicode.h (g_utf8_next_char): Cast to const char *,
1254         not char *.  (#138153, Nikolai Weibull)
1255
1256 Wed Nov 22 16:09:13 2006  Tim Janik  <timj@gtk.org>
1257
1258         * glib/gmacros.h: added G_GNUC_MAY_ALIAS, suggested by Mathias
1259         Hasselmann in bug #335341, fixes bug #335853.
1260
1261 2006-11-15  Matthias Clasen  <mclasen@redhat.com>
1262
1263         * m4macros/glib-gettext.m4: Apply a patch from James
1264         Henstridge for compatibility with automake 2.60 (#343825)
1265
1266 2006-11-14  Behdad Esfahbod  <behdad@gnome.org>
1267
1268         * sanity_check: Replace bash-specific == with sh-understood =.
1269         Fixes bug #373864.
1270
1271 2006-11-05  Hans Breuer  <hans@breuer.org>
1272
1273         * glib/makefile.msc.in : glib/ version not the gobject/
1274         one I accidentially commited. Fixes bug #371074.
1275
1276 2006-11-05  Tor Lillqvist  <tml@novell.com>
1277
1278         * makefile.mingw
1279         * gmodule/makefile.mingw.in
1280         * glib/makefile.mingw.in
1281         * gobject/makefile.mingw.in
1282         * gthread/makefile.mingw.in
1283         * tests/makefile.mingw.in: Remove from CVS. Haven't been
1284         maintained or distributed for long.
1285
1286 2006-10-26  Pascal Terjan  <pterjan@linuxfr.org>
1287
1288         * glib/libcharset/localcharset.c: Fix small leak on failed
1289         realloc in _g_locale_get_charset_aliases (#338582)
1290
1291 2006-10-16  Behdad Esfahbod  <behdad@gnome.org>
1292
1293         * glib/gnulib/Makefile.am: Add $(GLIB_DEBUG_FLAGS).  (#362543,
1294         Peter Kjellerstedt)
1295
1296 2006-10-15  Sebastian Wilhelmi  <seppi@seppi.de>
1297
1298         * tests/Makefile.am: Compile errorcheck-mutex-test with thread
1299         libraries explicitly. (#74748, Javier Villavicencio)
1300
1301 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
1302
1303         Add a way to obtain Unicode script information.  (#348348,
1304         Marco Barisione)
1305
1306         * glib/glib.symbols:
1307         * glib/gunicode.h: Add GUnicodeScript enumeration and
1308         g_unichar_get_script.
1309
1310         * glib/guniprop.c: Implement g_unichar_get_script.
1311
1312         * glib/gscripttable.h: Generated private header containing
1313         script tables.
1314
1315         * glib/gen-script-table.pl: Script to generate gscripttable.h.
1316
1317         * glib/Makefile.am: Update
1318
1319 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
1320
1321         * tests/run-markup-tests.sh: Small portability fix.  (#347944,
1322         Dan McMahill)
1323
1324 2006-10-07  Tor Lillqvist  <tml@novell.com>
1325
1326         * glib/gwin32.c (get_package_directory_from_module)
1327         (g_win32_get_package_installation_directory): g_strdup the keys
1328         that we are passed before adding them to the hash tables, to guard
1329         against the caller freeing them. (#355955, Andreas Köhler)
1330
1331 2006-10-06  Matthias Clasen  <mclasen@redhat.com>
1332
1333         * glib/gtimer.c: Fix a typo.  (#359190)
1334
1335 2006-10-02  Behdad Esfahbod  <behdad@gnome.org>
1336
1337         * glib/Makefile.am:
1338         * gobject/Makefile.am:
1339         Include pltcheck.sh in EXTRA_DIST, and remove redefinition of TESTS.
1340         (#358966)
1341
1342 2006-10-01  Matthias Clasen  <mclasen@redhat.com>
1343
1344         * glib/gtimer.c (g_usleep): Use nsleep to implement
1345         g_usleep on AIX.  (#321974, Andrew Paprocki)
1346
1347         * configure.in: Check for nsleep
1348
1349         * glib/gmain.c: Fix typos in doc comments.
1350         (#358421, Tom Tromey)
1351
1352 2006-09-30  Matthias Clasen  <mclasen@redhat.com>
1353
1354         * glib/pltcheck.sh: A script to check PLT entries.
1355         * glib/Makefile.am (TESTS): Run pltcheck.sh
1356
1357         * glib/*: Fix includes to correct some issues with
1358         PLT entries.  (#354522, Behdad Esfahbod)
1359
1360 2006-09-17  Hans Breuer  <hans@breuer.org>
1361
1362         * glib/makefile.msc.in gobject/makefile.msc.in : better filtering
1363         of G_GNUC_* stuff when generating .def files. Now also works with
1364         newer (less tolerant) linkers, e.g. from vc2500e
1365
1366 2006-09-10  Matthias Clasen  <mclasen@redhat.com>
1367
1368         * glib/gbacktrace.c: Assume string.h is available.
1369         (#354523, Behdad Esfahbod)
1370
1371         * configure.in: Bump version to 2.13.0
1372
1373         * glib/glib.symbols:
1374         * glib/gmain.[hc]: Add functions to create approximate
1375         timeouts.  (#353942, Arjan van de Ven)
1376
1377         * glib/gstdio.c (g_rename): Initialize save_errno.
1378         (#355206, Mike Edenfield)
1379
1380 2006-09-03  Matthias Clasen  <mclasen@redhat.com>
1381
1382         * glib/gerror.c: Allocate GErrors using the slice allocator.
1383         (#354054, Matt Barnes)
1384
1385 2006-09-02  Matthias Clasen  <mclasen@redhat.com>
1386
1387         * glib/gtimer.c: Forgotten HAVE_CLOCK_GETTIME.
1388
1389 2006-09-02  Tor Lillqvist  <tml@novell.com>
1390
1391         * glib/gutils.c (g_get_any_init_do): Correct C99ism (mixed
1392         declarations and code) in Win32 ifdef branch. (#353903, Mike
1393         Edenfield)
1394
1395 2006-09-01  Abel Cheung  <abel@oaka.org>
1396
1397         * configure.in: Added 'dz' 'hy' to ALL_LINGUAS.
1398
1399 2006-09-01  Matthias Clasen  <mclasen@redhat.com>
1400
1401         * configure.in: Check for CLOCK_MONOTONIC.
1402
1403         * glib/gtimer.c: Only use clock_gettime if we
1404         have a monotonic clock.
1405
1406 2006-08-31  Matthias Clasen  <mclasen@redhat.com>
1407
1408         * configure.in: Add missing includes to a few test
1409         programs.  (#353580, Chris Wilson)
1410
1411 2006-08-30  Matthias Clasen  <mclasen@redhat.com>
1412
1413         * glib/gmarkup.c (g_markup_vprintf_escaped): Don't call
1414         va_end on caller-provided va_args.  (#353584, Chris Wilson)
1415
1416 2006-08-29  Tor Lillqvist  <tml@novell.com>
1417
1418         Remove support for Windows 9x/ME, as will be done also in Pango
1419         and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
1420         it's pretty pointless to keep the Win9x code in here either. If
1421         somebody is interested, the code can always be found in older GLib
1422         versions, and in CVS.
1423
1424         * glib/gdir.c
1425         * glib/gfileutils.c
1426         * glib/gspawn-win32-helper.c
1427         * glib/gspawn-win32.c
1428         * glib/gstdio.c
1429         * glib/gutils.c
1430         * glib/gwin32.c
1431         * glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
1432         G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
1433         branches, and any variables or static functions used only by the
1434         Win9x branches.
1435
1436         * glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
1437         run on Win9x.
1438
1439 2006-08-27  Matthias Clasen  <mclasen@redhat.com>
1440
1441         * configure.in: Fix pthread compiler flag detection.
1442
1443         * glib/gtimer.c: Use Posix monotonic clocks instead of
1444         gettimeofday when available.  (#336114, William Jon McCann)
1445
1446 2006-08-26  Matthias Clasen  <mclasen@redhat.com>
1447
1448         * glib/gutils.h:
1449         * glib/gscanner.c: Fix some typos.  (#351741, Kjartan Maraas)
1450
1451 2006-08-25  Matthias Clasen  <mclasen@redhat.com>
1452
1453         * configure.in: Fix the pthread compiler flag detection.
1454
1455         * glib/gunicode.h:
1456         * glib/gutf8.c (_g_utf8_make_valid): Rename make_valid_utf8
1457         from gconvert.c, move it to gutf8.c, and export it privately.
1458
1459         * glib/gconvert.c (g_filename_display_name): Adjust callers.
1460
1461         * glib/gkeyfile.c: Use _g_utf8_make_valid() in a number of
1462         places to ensure error messages are valid UTF-8.  (#351853,
1463         Simon Budig)
1464
1465 2006-08-22  Matthias Clasen <mclasen@redhat.com>
1466
1467         * Branch for 2.12