Fix a minor error in pipe_stat - st_size was always reported as 0

when direct writes kicked in.  Whether this affected any applications
is unknown.
This commit is contained in:
Mike Silbersack 2004-07-20 07:06:43 +00:00
parent 8af8df6452
commit eb3d2c61b4
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=132436

View File

@ -1353,7 +1353,10 @@ pipe_stat(fp, ub, active_cred, td)
bzero(ub, sizeof(*ub));
ub->st_mode = S_IFIFO;
ub->st_blksize = pipe->pipe_buffer.size;
ub->st_size = pipe->pipe_buffer.cnt;
if (pipe->pipe_state & PIPE_DIRECTW)
ub->st_size = pipe->pipe_map.cnt;
else
ub->st_size = pipe->pipe_buffer.cnt;
ub->st_blocks = (ub->st_size + ub->st_blksize - 1) / ub->st_blksize;
ub->st_atimespec = pipe->pipe_atime;
ub->st_mtimespec = pipe->pipe_mtime;