diff --git a/vfs/ChangeLog b/vfs/ChangeLog index 20b6130ad..cd4451777 100644 --- a/vfs/ChangeLog +++ b/vfs/ChangeLog @@ -1,3 +1,7 @@ +2006-01-27 Thomas Liske + + * fish.c, xdirentry.h: Fix 2 GB file size limit for fish. + 2006-01-27 Roland Illig * utilvfs.c (is_year): The range of valid year numbers is diff --git a/vfs/fish.c b/vfs/fish.c index 826a3e965..cfc8d6810 100644 --- a/vfs/fish.c +++ b/vfs/fish.c @@ -611,7 +611,7 @@ fish_linear_start (struct vfs_class *me, struct vfs_s_fh *fh, off_t offset) if (offset != PRELIM) ERRNOR (E_REMOTE, 0); fh->linear = LS_LINEAR_OPEN; fh->u.fish.got = 0; - if (sscanf( reply_str, "%d", &fh->u.fish.total )!=1) + if (sscanf( reply_str, "%Lu", &fh->u.fish.total )!=1) ERRNOR (E_REMOTE, 0); return 1; } diff --git a/vfs/xdirentry.h b/vfs/xdirentry.h index 9dd2e81ea..c58a2f95c 100644 --- a/vfs/xdirentry.h +++ b/vfs/xdirentry.h @@ -106,7 +106,8 @@ struct vfs_s_fh { int linear; /* Is that file open with O_LINEAR? */ union { struct { - int got, total, append; + off_t got, total; + int append; } fish; struct { int sock, append;