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