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