|
From: <sv...@va...> - 2005-10-03 09:06:43
|
Author: tom
Date: 2005-10-03 10:06:36 +0100 (Mon, 03 Oct 2005)
New Revision: 4849
Log:
Allow scripts less that a page in length to be executed.
Modified:
trunk/coregrind/m_ume.c
Modified: trunk/coregrind/m_ume.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_ume.c 2005-10-03 02:23:17 UTC (rev 4848)
+++ trunk/coregrind/m_ume.c 2005-10-03 09:06:36 UTC (rev 4849)
@@ -794,8 +794,12 @@
return err;
}
=20
- sres =3D VG_(pread)(fd, buf, sizeof(buf), 0);
- if (sres.isError || sres.val !=3D sizeof(buf)) {
+ bufsz =3D VG_(fsize)(fd);
+ if (bufsz > sizeof(buf))
+ bufsz =3D sizeof(buf);
+
+ sres =3D VG_(pread)(fd, buf, bufsz, 0);
+ if (sres.isError || sres.val !=3D bufsz) {
VG_(printf)("Can't read executable header: %s\n",
VG_(strerror)(sres.val));
VG_(close)(fd);
|