diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | configure.in | 4 | ||||
-rw-r--r-- | file.c | 2 |
3 files changed, 9 insertions, 3 deletions
@@ -1,3 +1,9 @@ +Fri Feb 15 02:42:25 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (ftruncate): check if available. + + * file.c (rb_file_truncate): check if ftruncate instead of truncate. + Fri Feb 15 02:40:54 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> * configure.in (sigsetmask): check when signal semantics is not POSIX. diff --git a/configure.in b/configure.in index b9e43de276..88e25a7cdf 100644 --- a/configure.in +++ b/configure.in @@ -652,8 +652,8 @@ AC_REPLACE_FUNCS(dup2 memmove strerror strftime\ isnan finite isinf hypot acosh erf tgamma lgamma_r cbrt \ strlcpy strlcat) AC_CHECK_FUNCS(fmod killpg wait4 waitpid fork spawnv syscall chroot fsync getcwd eaccess\ - truncate chsize times utimes utimensat fcntl lockf lstat\ - link symlink readlink\ + truncate ftruncate chsize times utimes utimensat fcntl lockf lstat\ + link symlink readlink\ setitimer setruid seteuid setreuid setresuid setproctitle socketpair\ setrgid setegid setregid setresgid issetugid pause lchown lchmod\ getpgrp setpgrp getpgid setpgid initgroups getgroups setgroups\ @@ -3173,7 +3173,7 @@ rb_file_truncate(VALUE obj, VALUE len) rb_raise(rb_eIOError, "not opened for writing"); } rb_io_flush(obj); -#ifdef HAVE_TRUNCATE +#ifdef HAVE_FTRUNCATE if (ftruncate(fptr->fd, pos) < 0) rb_sys_fail(fptr->path); #else |