mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-05-06 04:38:04 +02:00
[cairo-mutex] Make CAIRO_MUTEX_INIT/FINI take mutex object, not pointer to it
This is more consistent with CAIRO_MUTEX_LOCK/UNLOCK.
This commit is contained in:
parent
f9154f7eda
commit
b0a0a1779d
5 changed files with 14 additions and 19 deletions
|
|
@ -334,7 +334,7 @@ _cairo_ft_unscaled_font_init (cairo_ft_unscaled_font_t *unscaled,
|
|||
}
|
||||
|
||||
unscaled->have_scale = FALSE;
|
||||
CAIRO_MUTEX_INIT (&unscaled->mutex);
|
||||
CAIRO_MUTEX_INIT (unscaled->mutex);
|
||||
unscaled->lock_count = 0;
|
||||
|
||||
unscaled->faces = NULL;
|
||||
|
|
@ -369,7 +369,7 @@ _cairo_ft_unscaled_font_fini (cairo_ft_unscaled_font_t *unscaled)
|
|||
unscaled->filename = NULL;
|
||||
}
|
||||
|
||||
CAIRO_MUTEX_FINI (&unscaled->mutex);
|
||||
CAIRO_MUTEX_FINI (unscaled->mutex);
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ CAIRO_BEGIN_DECLS
|
|||
#ifndef CAIRO_MUTEX_INIT
|
||||
# define CAIRO_MUTEX_INIT(mutex) do { \
|
||||
cairo_mutex_t _tmp_mutex = CAIRO_MUTEX_NIL_INITIALIZER; \
|
||||
memcpy ((mutex), &_tmp_mutex, sizeof (_tmp_mutex)); \
|
||||
memcpy (&(mutex), &_tmp_mutex, sizeof (_tmp_mutex)); \
|
||||
} while (0)
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ CAIRO_BEGIN_DECLS
|
|||
# define CAIRO_MUTEX_INITIALIZE() CAIRO_MUTEX_NOOP
|
||||
# define CAIRO_MUTEX_LOCK(mutex) pthread_mutex_lock (&(mutex))
|
||||
# define CAIRO_MUTEX_UNLOCK(mutex) pthread_mutex_unlock (&(mutex))
|
||||
# define CAIRO_MUTEX_FINI(mutex) pthread_mutex_destroy (mutex)
|
||||
# define CAIRO_MUTEX_FINI(mutex) pthread_mutex_destroy (&(mutex))
|
||||
# define CAIRO_MUTEX_NIL_INITIALIZER PTHREAD_MUTEX_INITIALIZER
|
||||
|
||||
#elif HAVE_WINDOWS_H /*******************************************************/
|
||||
|
|
@ -87,8 +87,8 @@ CAIRO_BEGIN_DECLS
|
|||
|
||||
# define CAIRO_MUTEX_LOCK(mutex) EnterCriticalSection (&(mutex))
|
||||
# define CAIRO_MUTEX_UNLOCK(mutex) LeaveCriticalSection (&(mutex))
|
||||
# define CAIRO_MUTEX_INIT(mutex) InitializeCriticalSection (mutex)
|
||||
# define CAIRO_MUTEX_FINI(mutex) DeleteCriticalSection (mutex)
|
||||
# define CAIRO_MUTEX_INIT(mutex) InitializeCriticalSection (&(mutex))
|
||||
# define CAIRO_MUTEX_FINI(mutex) DeleteCriticalSection (&(mutex))
|
||||
# define CAIRO_MUTEX_NIL_INITIALIZER { NULL, 0, 0, NULL, NULL, 0 }
|
||||
|
||||
#elif defined __OS2__ /******************************************************/
|
||||
|
|
@ -101,13 +101,8 @@ CAIRO_BEGIN_DECLS
|
|||
|
||||
# define CAIRO_MUTEX_LOCK(mutex) DosRequestMutexSem(mutex, SEM_INDEFINITE_WAIT)
|
||||
# define CAIRO_MUTEX_UNLOCK(mutex) DosReleaseMutexSem(mutex)
|
||||
# define CAIRO_MUTEX_INIT(mutex) DosCreateMutexSem (NULL, mutex, 0L, FALSE)
|
||||
# define CAIRO_MUTEX_FINI(mutex) do { \
|
||||
if (0 != (mutex)) { \
|
||||
DosCloseMutexSem (*(mutex)); \
|
||||
(*(mutex)) = 0; \
|
||||
} \
|
||||
} while (0)
|
||||
# define CAIRO_MUTEX_INIT(mutex) DosCreateMutexSem (NULL, &(mutex), 0L, FALSE)
|
||||
# define CAIRO_MUTEX_FINI(mutex) DosCloseMutexSem (mutex)
|
||||
# define CAIRO_MUTEX_NIL_INITIALIZER 0
|
||||
|
||||
#elif CAIRO_HAS_BEOS_SURFACE /***********************************************/
|
||||
|
|
@ -116,8 +111,8 @@ CAIRO_BEGIN_DECLS
|
|||
|
||||
# define CAIRO_MUTEX_LOCK(mutex) (mutex)->Lock()
|
||||
# define CAIRO_MUTEX_UNLOCK(mutex) (mutex)->Unlock()
|
||||
# define CAIRO_MUTEX_INIT(mutex) (*(mutex)) = new BLocker()
|
||||
# define CAIRO_MUTEX_FINI(mutex) delete (*(mutex))
|
||||
# define CAIRO_MUTEX_INIT(mutex) (mutex) = new BLocker()
|
||||
# define CAIRO_MUTEX_FINI(mutex) delete (mutex)
|
||||
# define CAIRO_MUTEX_NIL_INITIALIZER NULL
|
||||
|
||||
#else /**********************************************************************/
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ void _cairo_mutex_initialize (void)
|
|||
|
||||
_cairo_mutex_initialized = TRUE;
|
||||
|
||||
#define CAIRO_MUTEX_DECLARE(mutex) CAIRO_MUTEX_INIT (&mutex);
|
||||
#define CAIRO_MUTEX_DECLARE(mutex) CAIRO_MUTEX_INIT (mutex);
|
||||
#include "cairo-mutex-list-private.h"
|
||||
#undef CAIRO_MUTEX_DECLARE
|
||||
}
|
||||
|
|
@ -59,7 +59,7 @@ void _cairo_mutex_finalize (void)
|
|||
|
||||
_cairo_mutex_initialized = FALSE;
|
||||
|
||||
#define CAIRO_MUTEX_DECLARE(mutex) CAIRO_MUTEX_FINI (&mutex)
|
||||
#define CAIRO_MUTEX_DECLARE(mutex) CAIRO_MUTEX_FINI (mutex)
|
||||
#include "cairo-mutex-list-private.h"
|
||||
#undef CAIRO_MUTEX_DECLARE
|
||||
}
|
||||
|
|
|
|||
|
|
@ -374,7 +374,7 @@ _cairo_scaled_font_init (cairo_scaled_font_t *scaled_font,
|
|||
|
||||
cairo_font_face_reference (font_face);
|
||||
|
||||
CAIRO_MUTEX_INIT (&scaled_font->mutex);
|
||||
CAIRO_MUTEX_INIT (scaled_font->mutex);
|
||||
|
||||
scaled_font->surface_backend = NULL;
|
||||
scaled_font->surface_private = NULL;
|
||||
|
|
@ -436,7 +436,7 @@ _cairo_scaled_font_fini (cairo_scaled_font_t *scaled_font)
|
|||
if (scaled_font->glyphs != NULL)
|
||||
_cairo_cache_destroy (scaled_font->glyphs);
|
||||
|
||||
CAIRO_MUTEX_FINI (&scaled_font->mutex);
|
||||
CAIRO_MUTEX_FINI (scaled_font->mutex);
|
||||
|
||||
if (scaled_font->surface_backend != NULL &&
|
||||
scaled_font->surface_backend->scaled_font_fini != NULL)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue