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