From 049337abcfd6fbc4c05f4fbcf3b2b96d8ea0c4e3 Mon Sep 17 00:00:00 2001 From: scottl Date: Fri, 14 Jan 2005 16:24:31 +0000 Subject: Replace the min() macro with a test that doesn't truncate the 64-bit values that are used. Thanks to Bruce Evans for pointing this out. --- sys/fs/udf/udf_vnops.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'sys') diff --git a/sys/fs/udf/udf_vnops.c b/sys/fs/udf/udf_vnops.c index 9e9bf97..0fb714c 100644 --- a/sys/fs/udf/udf_vnops.c +++ b/sys/fs/udf/udf_vnops.c @@ -416,7 +416,10 @@ udf_read(struct vop_read_args *a) while (uio->uio_offset < fsize && uio->uio_resid > 0) { offset = uio->uio_offset; - size = min(uio->uio_resid, fsize - uio->uio_offset); + if (uio->uio_resid + offset <= fsize) + size = uio->uio_resid; + else + size = fsize - offset; error = udf_readatoffset(node, &size, offset, &bp, &data); if (error == 0) error = uiomove(data, size, uio); -- cgit v1.1