diff options
author | Eric Wong <normalperson@yhbt.net> | 2013-07-11 19:06:27 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2013-07-11 19:06:27 +0000 |
commit | f83d0466afc32542f3f4ff962105c817a1be2c96 (patch) | |
tree | c6b9e2b0b9002baf4b6f2cabb982dd0820cceba6 /digest.c | |
parent | daab757f5e52ce36a47e2d713365d68367a0e6dd (diff) | |
download | cmogstored-f83d0466afc32542f3f4ff962105c817a1be2c96.tar.gz |
We want to yield dying threads as soon as possible during thread shutdown, so we check the quit flag and yield the running thread to trigger a MOG_NEXT_ACTIVE.
Diffstat (limited to 'digest.c')
-rw-r--r-- | digest.c | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -28,6 +28,8 @@ enum mog_digest_next mog_digest_read(struct mog_digest *digest, int fd) if (r > 0) { /* most likely */ gc_hash_write(digest->ctx, r, buf); + if (mog_thr_prepare_quit()) + return MOG_DIGEST_YIELD; } else if (r == 0) { /* wait for user to call mog_digest_hex() */ return MOG_DIGEST_EOF; |