mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-04 02:06:18 +01:00
Use GError to report errors as well.
2000-09-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> * gthread-solaris.c (g_thread_create_solaris_impl): Use GError to report errors as well.
This commit is contained in:
parent
64bbfbb6da
commit
4d1cb41ef9
@ -3,6 +3,9 @@
|
||||
* gthread-posix.c (g_thread_create_posix_impl): Use GError to
|
||||
report errors.
|
||||
|
||||
* gthread-solaris.c (g_thread_create_solaris_impl): Use GError to
|
||||
report errors as well.
|
||||
|
||||
2000-05-13 Tor Lillqvist <tml@iki.fi>
|
||||
|
||||
* makefile.mingw.in: New file, with gthread stuff moved from
|
||||
|
@ -287,13 +287,15 @@ g_thread_create_posix_impl (GThreadFunc thread_func,
|
||||
|
||||
posix_check_for_error (pthread_attr_destroy (&attr));
|
||||
|
||||
if (ret)
|
||||
if (ret == EAGAIN)
|
||||
{
|
||||
g_set_error (error, G_THREAD_ERROR, G_THREAD_ERROR_AGAIN,
|
||||
"Error creating thread: %s", g_strerror (ret));
|
||||
return;
|
||||
}
|
||||
|
||||
posix_check_for_error (ret);
|
||||
|
||||
#ifdef G_THREADS_IMPL_DCE
|
||||
if (!joinable)
|
||||
posix_check_for_error (pthread_detach (thread));
|
||||
|
@ -195,18 +195,28 @@ g_thread_create_solaris_impl (GThreadFunc thread_func,
|
||||
gboolean joinable,
|
||||
gboolean bound,
|
||||
GThreadPriority priority,
|
||||
gpointer thread)
|
||||
gpointer thread,
|
||||
GError **error)
|
||||
{
|
||||
long flags = (bound ? THR_BOUND : 0) | (joinable ? 0: THR_DETACHED);
|
||||
gint ret;
|
||||
|
||||
g_return_if_fail (thread_func);
|
||||
|
||||
stack_size = MAX (g_thread_min_stack_size, stack_size);
|
||||
|
||||
solaris_check_for_error (thr_create (NULL, stack_size,
|
||||
(void* (*)(void*))thread_func,
|
||||
arg, flags, thread));
|
||||
ret = thr_create (NULL, stack_size, (void* (*)(void*))thread_func,
|
||||
arg, flags, thread);
|
||||
|
||||
if (ret == EAGAIN)
|
||||
{
|
||||
g_set_error (error, G_THREAD_ERROR, G_THREAD_ERROR_AGAIN,
|
||||
"Error creating thread: %s", g_strerror (ret));
|
||||
return;
|
||||
}
|
||||
|
||||
solaris_check_for_error (ret);
|
||||
|
||||
g_thread_set_priority_solaris_impl (thread, priority);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user