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