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