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