applied significant recursion complexity optimization, based on a patch
[platform/upstream/glib.git] / ChangeLog
1 Tue Sep 20 13:16:04 2005  Tim Janik  <timj@imendio.com>
2
3         * glib/gpattern.c (g_pattern_ph_match): applied significant recursion
4         complexity optimization, based on a patch from Matthias Clasen.
5
6         * tests/patterntest.c: more tests, mostly from matthias.
7
8 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
9
10         * glib/gqueue.c (g_queue_insert_sorted): Correct the docs.
11         (#316703, Mark Drago)
12
13 Mon Sep 19 17:23:23 2005  Tim Janik  <timj@imendio.com>
14
15         * glib/gpattern.c: applied a patch from matthias which checks on the
16         upper bound of GPatternSpec length to optimize matches.
17         cosmetic fixups.
18
19         * tests/patterntest.c: added more match cases.
20
21 2005-09-16  Tor Lillqvist  <tml@novell.com>
22
23         * glib/gstrfuncs.c (g_ascii_strcasecmp, g_ascii_strncasecmp): Add
24         warning to doc comment that these functions should not be used on
25         encodings like CP932.
26
27 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
28
29         * tests/keyfile-test.c: Add a test for grup names of length 1.
30
31         * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
32         of length 1.  (#316309)
33         
34 2005-09-12  Matthias Clasen  <mclasen@redhat.com>
35
36         * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
37
38 2005-09-11  Sebastian Wilhelmi  <seppi@seppi.de>
39
40         * tests/refcount/Makefile.am (INCLUDES): Link the the refcount
41         tests to the system thread library $(G_THREAD_LIBS). Fixes #313744
42         and #314217.
43
44 2005-09-11  Kjartan Maraas  <kmaraas@gnome.org>
45
46         * glib/gmain.c: (g_child_watch_prepare), (g_child_watch_check),
47         (child_watch_helper_thread): Remove some dead code. Closes
48         bug #315278.
49
50 2005-09-07  Tor Lillqvist  <tml@novell.com>
51
52         * glib/Makefile.am: Create also a console version of the
53         gspawn-win32-helper program, gspawn-win32-helper-console.exe.
54         It's otherwise identical to gspawn-win32-helper.exe, except marked
55         as a console application (linked without the -mwindows option).
56         
57         * glib/gspawn-win32.c (do_spawn_directly, do_spawn_with_pipes):
58         Drop the dont_wait parameter. Its truth value correlated 100% with
59         the NULLness of the exit_status parameter anyway, so it's enough
60         to check whether exit_status is NULL. Invert the sense of the
61         dont_return_handle parameter and rename it to do_return_handle, to
62         make the code easier to read by avoiding double negations.
63
64         (g_spawn_sync_utf8, g_spawn_async_with_pipes_utf8): Modify calls
65         to do_spawn_with_pipes() accordingly.
66
67         (do_spawn_with_pipes): If we have a console, use the console
68         version of the helper program, otherwise use the GUI one. This
69         avoids extra console windows opening up in some situations. (In
70         case a console application uses the GUI gspawn-win32-helper.exe to
71         spawn another console application we would get a separate console
72         for the spawned console application).
73
74         * glib-zip.in: Distribute also gspawn-win32-helper-console.exe.
75
76 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
77
78         * glib/gmappedfile.c (g_mapped_file_new): Report an error
79         if the file is too large.  (#315275, Kjartan Maraas)
80
81         * glib/gkeyfile.c (g_key_file_load_from_fd): The return value
82         of read() is signed.  (#315273, Kjartan Maraas)
83         
84 2005-08-31  Tor Lillqvist  <tml@novell.com>
85
86         * glib/gutils.h: Wrapping atexit() is a bad idea on Windows, where
87         the EXE and each DLL have their own atexit function chains.
88
89         #define g_atexit as atexit instead. This means it has a
90         better chance of doing what the caller wants. For instance,
91         gtkhtml calls g_atexit() registering a function in gtkhtml
92         itself. This caused a crash when g_atexit() was implemented as a
93         function in the GLib DLL. The gtkhtml DLL was already unloaded by
94         the time the GLib DLL got unloaded.
95
96         * glib/gutils.c: #undef the #define mentioned above, to also get a
97         real g_atexit() into the DLL for backward compatibility. Document
98         the Windows behaviour of g_atexit(), and document the varying ways
99         atexit() can behave in the context of dynamically loaded modules
100         on Unix.
101
102 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
103
104         * glib/glib.symbols: 
105         * glib/gquark.h: 
106         * glib/gdataset.c: Add string interning functions.
107
108 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
109
110         * glib/giochannel.c: Unify some near-duplicate strings. (#314654,
111         Clytie Siddall)
112         
113 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
114
115         * configure.in: Bump version to 2.9.0
116
117 2005-08-25  Tor Lillqvist  <tml@novell.com>
118
119         Make also the g_spawn*() functions take parameters in the GLib
120         file name encoding, i.e. UTF-8, on Windows. Has no impact on Unix
121         API or ABI. Like the other GLib API that was earlier changed to
122         use UTF-8 on Windows, the names of the functions that take UTF-8
123         have _utf8 suffixes added by using preprocessor macros in the
124         header file. The old names are kept for functions with the old
125         behaviour, taking parameters in the system codepage, for DLL ABI
126         stability.
127         
128         * glib/gspawn.h: On Win32 add the suffix _utf8 to the names of the
129         g_spawn*() functions.
130         
131         * glib/gspawn-win32.c: Use wide-char API on NT-based
132         Windows. Convert parameters from UTF-8 to wide chars (NT) or
133         system codepage (Win9x) and call the C library _wspawn*() or
134         spawn*() functions respectvely. Add DLL ABI stability versions
135         that take parameters in the system codepage.
136
137         * glib/gspawn-win32-helper.c: On NT-based Windows use the
138         wide-char versions of argv and envp, and use wide-char API to
139         change directory and spawn the program to run. Remove the verbose
140         debugging output, it was too complex to modify for the wide-char
141         features. (Just add temporary debugging printouts if needed, no
142         need to have them permanently in the source.)
143
144         * glib/gspawn.c: Corresponding documentation updates.
145
146         * glib/glib.symbols: Corresponding changes: Mark the ABI stability
147         symbols as PRIVATE, add the new _utf8-suffixed ones.
148
149 2005-08-24  Stepan Kasal  <kasal@ucw.cz>
150
151         * glib/gtypes.h (G_MININT64): Cast the constant to gint64; it is
152         guint64 otherwise and that can produce warnings about comparison
153         between signed and unsigned.
154
155 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
156
157         * glib/gutils.c: Fix the crt_externs.h include.
158
159 2005-08-23  Stepan Kasal  <kasal@ucw.cz>
160
161         * NEWS: Fix spelling of my first name.
162
163 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
164
165         * Bump version
166
167         * === Released 2.8.1 ===
168
169         * NEWS: Updates
170
171 2005-08-20  Hans Breuer  <hans@breuer.org>
172
173         * glib/makefile.msc.in : link with ws2_32.lib
174
175 2005-08-18  Tor Lillqvist  <tml@novell.com>
176
177         * configure.in: Check for <sys/wait.h>
178
179         * glib/gbacktrace.c: Include <sys/wait.h> on if HAVE_SYS_WAIT_H.
180
181 2005-08-18  Ross Burton  <ross@burtonini.com>
182
183         * glib/gstring.c:
184         Optimise single-character insertions.
185         
186         * glib/gutf8.c:
187         Note copied code.
188         
189         * tests/string-test.c:
190         Add tests for new optimisation, and fix a leak.
191
192 2005-08-17  Matthias Clasen  <mclasen@redhat.com>
193
194         * configure.in: Check for crt_externs.h and _NSGetEnviron.
195
196         * glib/gutils.c: On Darwin, include crt-externs.h and
197         define environ using _NSGetEnviron().  (#313731)
198
199 2005-08-16  Stepan Kasal  <kasal@ucw.cz>
200
201         * glib/gutils.c (g_get_any_init): Move the body of the big if...
202         (g_get_any_init_do): ... to this new function.
203         (g_get_any_init): Declare as inline.
204         (g_get_any_init_locked): New inline function, does the locking.
205         Make use of these two throughout the code.
206
207 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
208
209         * glib/gbacktrace.c (g_on_error_stack_trace): Wait for
210         the child process and then simply return. This makes 
211         The "S" option work as documented in g_on_error_query().
212         (#313125, Matthew F. Barnes)
213
214         * glib/gunicode.h: Update the link to Unicode category
215         values.  (#313369, Behnam Esfahbod)
216
217         * glib/gqueue.c (g_queue_find_custom): Clarify docs
218         a little.  (#311727, Tristan van Berkom)
219
220         * glib/abicheck.sh, gobject/abicheck.sh: Make the 
221         check work on ia64 too, where some symbols ended up 
222         in yet another section.
223