Philip Martin wrote on Wed, Jan 11, 2012 at 19:32:55 +0000: > "Daniel Shahaf" <d...@daniel.shahaf.name> writes: > > > On Tuesday, November 29, 2011 4:08 PM, "Martin Buck" > > <mb-tmp-fhoirefvba.ncnpur....@gromit.dyndns.org> wrote: > >> On Tue, Nov 29, 2011 at 04:32:39PM +0200, Daniel Shahaf wrote: > >> > Why isn't apr_off_t 64 bits? > >> > >> Sorry, I meant apr_size_t and that seems to correspond to C89's size_t and > >> is not supposed to be used for file sizes. apr_off_t is 64 bits, of course. > >> > >> > > --- subversion-1.7.1/subversion/libsvn_fs_fs/fs_fs.c.orig > >> > > 2011-10-19 19:28:55.000000000 +0200 > >> > > +++ subversion-1.7.1/subversion/libsvn_fs_fs/fs_fs.c 2011-11-25 > >> > > 16:53:56.000000000 +0100 > >> > > @@ -2575,7 +2575,7 @@ > >> > > > >> > > svn_revnum_t base_revision; > >> > > apr_off_t base_offset; > >> > > - apr_size_t base_length; > >> > > + svn_filesize_t base_length; > >> > > >> > I'd like both BASE_OFFSET and BASE_LENGTH to be 64 bit types. Would it > >> > work to make them both svn_filesize_t? > >> > >> I guess it would work (on a 32 bit machine, svn_filesize_t and apr_off_t > >> are > >> both typedefed to "long long int" anyway), but I wanted to make the types > >> the same as those of "offset" and "size" in > >> libsvn_fs_fs/fs.h:representation_t where the values ultimately get assigned > >> to. > >> > >> But since this is the first time I've looked at the Subversion sources, I > >> can't really recommend anything (besides making sure that base_length is 64 > >> bits). > >> > > > > Okay. Since both svn_filesize_t and apr_off_t are signed 64bits it may > > be just a bikeshed which type to use for which struct member. I'll > > commit your patch and nominate it for backport to 1.7.3. While at it I'll > > also scan the code for similar problems. > > Are you still planning to commit this? Should someone else do it?
Ouch, sorry. It's still on my todo list, but nowhere near the top; "someone else" should feel than free to beat me to it. Thanks. Daniel > > -- > Philip