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