diff options
Diffstat (limited to 'pango/pango-coverage.c')
-rw-r--r-- | pango/pango-coverage.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/pango/pango-coverage.c b/pango/pango-coverage.c index f22431b7..77559d0a 100644 --- a/pango/pango-coverage.c +++ b/pango/pango-coverage.c @@ -122,7 +122,7 @@ pango_coverage_ref (PangoCoverage *coverage) { g_return_val_if_fail (coverage != NULL, NULL); - coverage->ref_count++; + g_atomic_int_inc (&coverage->ref_count); return coverage; } @@ -142,9 +142,7 @@ pango_coverage_unref (PangoCoverage *coverage) g_return_if_fail (coverage != NULL); g_return_if_fail (coverage->ref_count > 0); - coverage->ref_count--; - - if (coverage->ref_count == 0) + if (g_atomic_int_dec_and_test (&coverage->ref_count)) { for (i=0; i<coverage->n_blocks; i++) g_free (coverage->blocks[i].data); |