Commit dcc60294 authored by Nick Mathewson's avatar Nick Mathewson 🦞
Browse files

Use _lseeki64() on windows.

Fixes bug 31036; bugfix on 0.2.1.8-alpha when we moved the logging
system to use posix fds.
parent 564a9a54
Loading
Loading
Loading
Loading

changes/bug31036

0 → 100644
+3 −0
Original line number Diff line number Diff line
  o Minor bugfixes (windows):
    - Fix a bug that prevented Tor from starting if its log file
      grew above 2GB.  Fixes bug 31036; bugfix on 0.2.1.8-alpha.
+3 −3
Original line number Diff line number Diff line
@@ -43,7 +43,7 @@ off_t
tor_fd_getpos(int fd)
{
#ifdef _WIN32
  return (off_t) _lseek(fd, 0, SEEK_CUR);
  return (off_t) _lseeki64(fd, 0, SEEK_CUR);
#else
  return (off_t) lseek(fd, 0, SEEK_CUR);
#endif
@@ -56,7 +56,7 @@ int
tor_fd_seekend(int fd)
{
#ifdef _WIN32
  return _lseek(fd, 0, SEEK_END) < 0 ? -1 : 0;
  return _lseeki64(fd, 0, SEEK_END) < 0 ? -1 : 0;
#else
  off_t rc = lseek(fd, 0, SEEK_END) < 0 ? -1 : 0;
#ifdef ESPIPE
@@ -75,7 +75,7 @@ int
tor_fd_setpos(int fd, off_t pos)
{
#ifdef _WIN32
  return _lseek(fd, pos, SEEK_SET) < 0 ? -1 : 0;
  return _lseeki64(fd, pos, SEEK_SET) < 0 ? -1 : 0;
#else
  return lseek(fd, pos, SEEK_SET) < 0 ? -1 : 0;
#endif