--- IO-AIO/AIO.xs 2010/12/02 10:04:47 1.176 +++ IO-AIO/AIO.xs 2010/12/30 07:19:31 1.177 @@ -355,6 +355,7 @@ { sv_result = sv_result_cache; sv_result_cache = 0; SvIV_set (sv_result, req->result); + SvIOK_only (sv_result); } else { @@ -528,7 +529,7 @@ } break; - case EIO_DUP2: /* EIO_DUP2 actually means aio_close(), su fudge result value */ + case EIO_DUP2: /* EIO_DUP2 actually means aio_close(), so fudge result value */ if (req->result > 0) SvIV_set (sv_result, 0); /* FALLTHROUGH */