{
BlueSkyStoreAsync *barrier = (BlueSkyStoreAsync *)b;
+ bluesky_store_async_ref(barrier);
g_mutex_lock(barrier->lock);
barrier->store_private
= GINT_TO_POINTER(GPOINTER_TO_INT(barrier->store_private) - 1);
bluesky_store_async_mark_complete(barrier);
}
g_mutex_unlock(barrier->lock);
+ bluesky_store_async_unref(barrier);
}
/* Add the given operation to the barrier. The barrier will not complete until
switch (async->op) {
case STORE_OP_GET:
async->data = filestore_get(async->key);
+ async->result = 0;
break;
case STORE_OP_PUT:
filestore_put(async->key, async->data);
+ async->result = 0;
break;
default: