Make the implementation of GPrivate behave more closely as in POSIX
[platform/upstream/glib.git] / gthread / ChangeLog
1 2006-02-20  Tor Lillqvist  <tml@novell.com>
2
3         * gthread-win32.c (g_thread_exit_win32_impl): Make the
4         implementation of GPrivate behave more closely as in POSIX
5         threads: The value associacted with a GPrivate must be set to NULL
6         before calling the destructor. (The destructor gets the original
7         value as argument.)  A destructor might re-associate a non-NULL
8         value with some GPrivate. To deal with this, if after all
9         destructors have been called, there still are some non-NULL
10         values, the process is repeated. (#331367)
11
12 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
13
14         * === Released 2.9.6 ===
15
16 2006-01-27  Matthias Clasen  <mclasen@redhat.com>
17
18         * === Released 2.9.5 ===
19
20 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
21         
22         * === Released 2.9.4 ===
23
24 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
25
26         * === Released 2.9.3 ===
27
28 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
29
30         * === Released 2.9.2 ===
31
32 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
33
34         * === Released 2.9.1 ===
35
36 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
37
38         * Makefile.am: Remove gthread-solaris.c
39
40 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
41
42         * === Released 2.9.0 ===
43
44 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
45
46         * === Released 2.8.1 ===
47
48 2005-08-12  Matthias Clasen  <mclasen@redhat.com>
49
50         * === Released 2.8.0 ===
51
52 2005-08-05  Matthias Clasen  <mclasen@redhat.com>
53
54         * === Released 2.7.7 ===
55
56 2005-08-03  Matthias Clasen  <mclasen@redhat.com>
57
58         * === Released 2.7.6 ===
59
60 2005-08-02  Matthias Clasen  <mclasen@redhat.com>
61
62         * === Released 2.7.5 ===
63
64 2005-07-21  Matthias Clasen  <mclasen@redhat.com>
65
66         * === Released 2.7.4 ===
67
68 2005-07-15  Matthias Clasen  <mclasen@redhat.com>
69
70         * === Released 2.7.3 ===
71         
72 2005-07-09  Tor Lillqvist  <tml@novell.com>
73
74         * Makefile.am: Don't use the scripts in build/win32 to compile
75         gthread.rc into a resource object file. (This means we lose the
76         build number increment magic, but I doubt it was that useful
77         anyway.) Instead use windres directly. To pass the normal .o file
78         produced by windres through libtool, which wants .lo files, pass
79         it directly to the linker using a -Wl option.
80
81         * gthread.rc.in: Thus replace BUILDNUMBER with 0.
82
83 2005-07-08  Matthias Clasen  <mclasen@redhat.com>
84         
85         * === Released 2.7.2 ===
86
87 2005-06-30  Matthias Clasen  <mclasen@redhat.com>
88
89         * === Released 2.7.1 ===
90
91 2005-06-26  Tor Lillqvist  <tml@novell.com>
92
93         * Makefile.am: libtool installs/uninstalls the import library, no
94         need to do it ourselves. Do still install/uninstall the .def file,
95         though.
96
97 2005-06-10  Matthias Clasen  <mclasen@redhat.com>
98
99         * === Released 2.7.0 ===
100
101 2005-06-09  Matthias Clasen  <mclasen@redhat.com>
102
103         * gthread-posix.c (g_thread_create_posix_impl): Allow
104         setstacksize to fail.  (#304790, Michael Banck)
105
106 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
107
108         * === Released 2.6.1 ===
109
110 2004-12-16  Matthias Clasen  <mclasen@redhat.com>
111
112         * === Released 2.6.0 ===
113         
114 2004-12-02  Matthias Clasen  <mclasen@redhat.com>
115
116         * === Released 2.5.7 ===
117         
118 2004-11-12  Matthias Clasen  <mclasen@redhat.com>
119
120         * === Released 2.5.6 ===
121         
122 2004-11-02  Matthias Clasen  <mclasen@redhat.com>
123
124         * === Released 2.5.5 ===
125
126 2004-10-27 Matthias Clasen  <mclasen@redhat.com>
127
128         * === Released 2.5.4 ===
129
130 2004-09-18 Matthias Clasen  <mclasen@redhat.com>
131
132         * === Released 2.5.3 ===
133
134 2004-08-25 Matthias Clasen  <mclasen@redhat.com>
135
136         * === Released 2.5.2 ===
137
138 2004-08-01 Matthias Clasen  <mclasen@redhat.com>
139
140         * === Released 2.5.1 ===
141
142 Sun Jul 18 18:03:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
143
144         * === Released 2.5.0 ===
145
146 2002-11-23  Tor Lillqvist  <tml@iki.fi>
147
148         * gthread-win32.c (g_cond_timed_wait_win32_impl): Fix two bugs: 1)
149         If abs_time is NULL, should use infinite time. 2) Check for
150         current time already being past abs_time. (#99294, Christopher
151         R. Palmer, fix by Sebastian Wilhelmi)
152
153 Mon Nov  4 14:45:24 2002  Owen Taylor  <otaylor@redhat.com>
154
155         * gthread-posix.c gthread-solaris.c: Include <config.h>
156
157 2002-03-10  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
158
159         * gthread-posix.c (g_thread_create_posix_impl): Do a comparison,
160         not an assignment, stupid! Spotted by Daniel Elstner
161         <daniel.elstner@gmx.net>.
162
163 2002-02-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
164
165         * gthread-impl.c: Only compile most of this file, if
166         G_THREADS_ENABLED is set.
167
168         * Fixed typo in G_THREADS_ENABLED. 
169
170 2002-01-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
171
172         * gthread-solaris.c: Use g_free instead of free. Pointed out by
173         Sam O'Connor <sam@panviva.com>.
174
175 2001-10-23  Tor Lillqvist  <tml@iki.fi>
176
177         * Makefile.am: (Win32): If we have built the MSVC import library,
178         install it. Install the gcc import library. Also support
179         uninstall.
180
181 2001-09-28  Tor Lillqvist  <tml@iki.fi>
182
183         * gthread-win32.c: Use an extra level of indirection for GMutex.
184         It is now a pointer either to a pointer to a CRITICAL_SECTION
185         struct, or to a mutex HANDLE. This is needed in case the user
186         defines G_ERRORCHECK_MUTEXES. G_MUTEX_SIZE must correctly reflect
187         the size of *GMutex, but this used to vary depending on whether we
188         at run-time chose to use CRITICAL_SECTIONs or mutexes.
189         (g_mutex_free_win32_cs_impl, g_cond_free_win32_impl): Call
190         DeleteCriticalSection() when done with it.
191
192         * gthread-impl.c (g_thread_init_with_errorcheck_mutexes): Call
193         g_thread_impl_init() before accessing
194         g_thread_functions_for_glib_use_default, as the
195         g_thread_impl_init() function might modify it.
196         
197 2001-09-26  Tor Lillqvist  <tml@iki.fi>
198
199         * makefile.mingw.in: Fix couple of typos.
200
201         * gthread.def: Add g_thread_init_with_errorcheck_mutexes.
202
203 2001-09-25  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
204
205         * gthread-impl.c: Corrected the array size (cough, cough). Pointed
206         out by gpablo@intersystems.com.ar. Fixes #61065.
207
208 2001-09-25  Tor Lillqvist  <tml@iki.fi>
209
210         * Makefile.am: Use new macros for .def file, and check for
211         MS_LIB_AVAILABLE, new rule to build MS import library.
212
213         * makefile.msc.in: Use same DLL and import library names as
214         libtool.
215         
216 2001-09-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
217
218         * gthread-posix.c: Add g_thread_equal_posix_impl and add to the
219         function vector g_thread_functions_for_glib_use_default.
220         
221         * gthread-solaris.c, gthread-win32.c: Add NULL as equal function,
222         as on those two platforms you don't need an equal function.
223
224 2001-09-19  Tor Lillqvist  <tml@iki.fi>
225
226         * gthread.rc.in: Correct InternalName and OriginalFilename to
227         match what we actually produce.
228
229 2001-07-20  Hans Breuer  <hans@breuer.org>
230
231         * makefile.msc.in : reflect glib move
232
233 2001-06-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
234
235         * gthread-win32.c: Use g_win32_error_message to beautify error
236         messages.
237
238 2001-05-24  Hans Breuer  <hans@breuer.org>
239
240         * makefile.msc.in : pthread isn't required anymore
241
242 2001-05-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
243
244         * gthread-win32.c (g_cond_wait_internal): Also return TRUE for
245         late arrived signals. Thanks to Steven Brooks
246         <umbrook0@cs.umanitoba.ca> for pointing out.
247
248         * gthread-impl.c (g_thread_init): Move the thread implementation
249         initialization to before assigning GThreadFuncs, which now is just
250         struct assigned and not memcpy'ed. Completed check for zero
251         members of GThreadFuncs. 
252
253         * makefile.mingw: Don't link to pthread anymore.
254
255         * gthread-win32.c: New file for native thread support for
256         win32. Thanks to Hans Breuer <hans@breuer.org> to got me
257         kickstarted.
258
259         * Makefile.am: Also distribute gthread-win32.c.
260
261 Fri May  4 04:14:45 2001  Tim Janik  <timj@gtk.org>
262
263         * gthread-posix.c (g_cond_timed_wait_posix_impl): don't g_assert()
264         the user specified time, but g_return_val_if_fail() here.
265
266 2001-04-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
267
268         * gthread-posix.c: Added special case for priorities on
269           FreeBSD. Thanks to David Reid <dreid@jetnet.co.uk> for the info.
270
271         * gthread-impl.c: Made two macros safe with ().
272
273 2001-03-10  Tor Lillqvist  <tml@iki.fi>
274
275         * Makefile.am: Use the _LIBADD dependency on libglib only on
276         Win32.
277
278 2001-02-21  Tor Lillqvist  <tml@iki.fi>
279
280         * Makefile.am: Use libglib-1.3.la from top_builddir. Invoke
281         libtool with -no-undefined for Win32 and Cygwin.
282
283         * gthread-impl.c (g_thread_init): Win32 code snippet used also on
284         Cygwin.
285
286 2001-02-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
287
288         * gthread-posix.c: Removed the G_THREAD_USE_PID_SURROGATE
289         implementation, which is now in gthread.c.
290
291 2001-01-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
292
293         * gthread-impl.c (g_thread_init_with_errorcheck_mutexes): Call
294         g_thread_impl_init(), as g_thread_init won't call it.
295
296         * gthread-impl.c (g_mutex_free_errorcheck_impl): Fixed it for
297         real. Sorry for this mess. It looked like a real obvious fix, so I
298         didn't check. Bad boy. Added some casts to quiet the compiler.
299
300 2001-01-29  Havoc Pennington  <hp@redhat.com>
301
302         * gthread-impl.c (g_mutex_free_errorcheck_impl): hack this so it
303         compiles, needs fixing for real.
304
305 2001-01-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
306
307         * gthread-impl.c (g_mutex_free_errorcheck_impl): Add new check to
308         errorcheck mutexes to abort, if a locked mutex is freed.
309
310 2001-01-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
311
312         * gthread-solaris.c, gthread-posix.c: Made g_thread_min_stack_size
313         static.
314
315 2000-11-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
316
317         * gthread-impl.c: Revamped errorcheck mutexes and added errorcheck
318         cond_wait() and cond_timed_wait() funtions. This makes he whole
319         thing work. Now we only show the location of the locking/unlocking
320         for -DG_ERRORCHECK_MUTEXES and not the name of the mutex.
321
322 2000-11-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
323
324         * gthread-impl.c, gthread-posix.c, gthread-solaris.c: Removed
325         g_thread_map_priority function in favour of the
326         g_thread_priority_map array.  Initialize the array with
327         PRIORITY_{...}_VALUE, if available and interpolate beetween the
328         bounds if .._NORMAL_.. and .._HIGH_.. are not available.
329
330         * gthread-posix.c: If we should use the PID niceness as a
331         surrogate for thread priorities (G_THREAD_USE_PID_SURROGATE is
332         defined), then disable normal priority handling and use PIDs and
333         setpriority() instead. Depends on the thread to write its PID into
334         the place after the thread id right after thread creation.
335
336 2000-11-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
337
338         * gthread-posix.c: Include <sched.h> if available.
339
340 2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
341
342         * gthread-none.c: Add G_MUTEX_SIZE as needed for gthread-impl.c
343
344 2000-10-25  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
345
346         * Makefile.am : Add @GLIB_DEBUG_FLAGS@ to INCLUDES for accessing
347         -DG_ENABLE_DEBUG as needed in gthread-posix.c.
348
349         * gthread-posix.c: Revamped error handling for native thread
350         function calls. Now EPERM errors are ignored for some commands and
351         only a warning message is output once (at first occurrence).
352
353 2000-10-15  Raja R Harinath  <harinath@cs.umn.edu>
354
355         * Makefile.am (BUILT_EXTRA_DIST): New variable.
356         (dist-hook): Handle $(BUILT_EXTRA_DIST).
357
358 2000-09-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
359
360         * gthread-impl.c: Added errorcheck mutexes. New exported function
361         g_thread_init_with_errorcheck_mutexes, which is called instead of
362         g_thread_init, when compiled with -DG_ERRORCHECK_MUTEXES. New
363         static functions
364         g_mutex_(new|lock|trylock|unlock|free)_errorcheck_impl to
365         implement errorcheck mutexes.
366
367         * gthread-posix.impl.c, gthread-solaris-impl.c: Define the size of
368         a mutex.
369
370 2000-09-21  Tor Lillqvist  <tml@iki.fi>
371
372         * makefile.mingw.in: Use pthreads macros from ../build.
373
374 2000-09-06  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
375
376         * gthread-posix.c, gthread-solaris.c:
377         s/G_MICROSEC/G_USEC_PER_SEC/ and s/G_NANOSEC/G_NSEC_PER_SEC/    
378
379 2000-09-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
380
381         * gthread-posix.c (g_thread_create_posix_impl): Use GError to
382         report errors.
383
384         * gthread-solaris.c (g_thread_create_solaris_impl): Use GError to
385         report errors as well.
386         
387 2000-05-13  Tor Lillqvist  <tml@iki.fi>
388
389         * makefile.mingw.in: New file, with gthread stuff moved from
390         ../makefile.mingw.in.
391
392         * Makefile.am: Add to EXTRA_DIST, add rule to build makefile.mingw.
393
394 2000-04-25  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
395
396         * gthread-solaris.c (g_mutex_new_solaris_impl): Changed the scope
397         of the initialized mutex to USYNC_THREAD. Thanks to Soeren
398         Sandmann <sandmann@daimi.au.dk> for pointing that out.
399
400 2000-03-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
401
402         * gthread-posix.c (posix_check_for_error): Forgot a '}' in a macro
403         for DCE-threads. Thanks to Karl Nelson <kenelson@ece.ucdavis.edu>
404         for pointing that out.
405
406 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
407
408         * gthread-posix.c: Don't use priorities for threads, when the
409         minimal/maximal priorities couldn't be determined at configure
410         time.
411
412         * gthread-posix.c: Don't check for errors, when setting the scope
413         of a tread to system, as some posix implementations can't do that
414         and we don't want the thing to fail because of that.
415
416 2000-02-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
417
418         * gthread-posix.c, gthread-solaris.c: check for sysconf
419         (_SC_THREAD_STACK_MIN), which returns the minimal stack size for
420         new threads. Patch from Soeren Sandmann <sandmann@daimi.au.dk>.
421
422 1999-11-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
423
424         * gthread-posix.c, gthread-solaris.c: Changed the prototype of
425         thread_create and thread_self to return the system thread into
426         provided memory instead of a return value. This is necessary, as
427         HPUX has a pthread_t, that is bigger than the biggest integral
428         type there. Made some more functions static.
429
430         * gthread-posix.c: Small fixes for DCE threads: Detaching has to
431         be done after thread creation for DCE.
432
433 1999-06-21  Tor Lillqvist  <tml@iki.fi>
434
435         * gthread-posix.c: Guard pthread_attr_setscope call with test
436         for _POSIX_THREAD_PRIORITY_SCHEDULING, which should be defined
437         in a <pthread.h> that supports that feature.
438         
439 1999-06-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
440
441         * gthread-posix.c, gthread-solaris.c: Added the native
442         implementations for the GLib's extended thread support.
443
444         * gthread-nspr.c: Removed for good. NSPR is nothing we would want
445         to build upon.
446
447         * gthread.c: Renamed to gthread-impl.c to avoid confusion with
448         ../gthread.c (Formerly known as the file called gmutex.c)
449
450         * testgthread.c: Removed. The new and much extended tests are in
451         ../tests/thread-test.c.
452
453         * Makefile.am: Changed to reflect the changes above.
454
455 1999-03-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
456
457         * gthread-posix.c: Use the right default arguments for the
458         construction of mutexes and conds for dce threads, these are
459         &pthread_(cond|mutex)attr_default instead of NULL. Hint from
460         D. Emilio Grimaldo Tunon <emilio_tunon@nl.compuware.com>.
461
462 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
463
464         * Makefile.am (INCLUDES): Added @GTHREAD_COMPILE_IMPL_DEFINES@.
465
466 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
467
468         * gthread-posix.c (g_private_get_posix_impl): Fixed typo for DCE
469         implementation.
470
471 1999-03-11  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
472
473         * gthread-posix.c: Now handle both dce and posix threads. They are
474         sufficently equal. Please do not commit my change to
475         glib-1-2/gthread/gthread-posix.c from 1999-03-03, as the current
476         change will take care of that too.
477
478 1999-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
479
480         * gthread-posix.c: Fixed broken mutex_trylock and slightly broken
481         cond_timed_wait functions.
482
483 1999-02-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
484
485         * testgthread.c (test_mutexes): Use new signature of
486         g_static_mutex* functions.
487
488 1999-02-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
489
490         * gthread-posix.c (g_private_get_posix_impl): Use the
491         HAVE_PTHREAD_GETSPECIFIC_POSIX macro to determine, which signature
492         to use for pthread_getspecific.
493
494 Tue Jan 19 20:56:02 1999  Tor Lillqvist  <tml@iki.fi>
495
496         * Makefile.am (EXTRA_DIST): Added gthread.def.
497
498 Sun Jan 17 10:58:19 1999  Tor Lillqvist  <tml@iki.fi>
499
500         * gthread.def: New file.
501
502 1999-01-16 1999  Tor Lillqvist  <tml@iki.fi>
503
504         * gthread-posix.c: Conditionalize <sys/time.h> inclusion.
505
506 1999-01-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
507
508         * testgthread.c: conditionally compile according to the
509         G_THREADS_IMPL_??? macros.
510         (test_private_func): use rand_r instead of rand to make it
511         thread safe.
512
513 1998-12-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
514
515         * testgthread.c (new_thread): As a joinable thread seems to be the
516         default on posix, leave the explicit setting out, as it causes
517         problems on some older platforms.
518
519 Wed Dec 16 22:21:33 CST 1998 Shawn T. Amundson <amundson@gtk.org>
520
521         * gthread-posix.c: use g_free in mutex_free (from Tim Janik)
522
523 Thu Dec 17 03:38:57 1998  Tim Janik  <timj@gtk.org>
524
525         * Makefile.am: -DG_LOG_DOMAIN="GThread", we don't need an extern
526         variable for that (noticed by Joel Becker <jlbec@ocala.cs.miami.edu>)
527
528 Wed Dec 16 03:16:16 1998  Tim Janik  <timj@gtk.org>
529
530         * testgthread.c: s/g_thread_supported/g_thread_supported ()/
531         * gthread.c: s/g_thread_supported/g_threads_got_initialized/
532         (g_thread_init): bail out if G_THREADS_ENABLED is not defined.
533
534 1998-12-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
535
536         * Makefile.am (EXTRA_DIST): updated.
537
538         * testgthread.c, gthread-*.c: Changed private to private_key to
539         avoid problems when compiling with under C++.
540
541         * gthread-none.c: 
542         s/g_mutex_functions_for_glib_use/g_thread_functions_for_glib_use/
543
544         * ChangeLog: from now on there is an extra ChangeLog for gthread
545         
546