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