On 13/03/2019 21:49, Ramsay Jones wrote: > From: Jeff King <peff@xxxxxxxx> > > We use the "offset" variable for two purposes. It's the offset into > the packfile that the caller provides us (which is rightly an off_t, > since we might have a packfile much larger than memory). But later we > also use it as the offset within a given mmap'd window, and that > window cannot be larger than a size_t. > > For the second use, the fact that we have an off_t leads to some > confusion when we assign it to the "left" variable, which is a size_t. > It is in fact correct (because our earlier "offset -= win->offset" means > we must be within the pack window), but using a separate variable of the > right type makes that much more obvious. > > Signed-off-by: Ramsay Jones <ramsay@xxxxxxxxxxxxxxxxxxxx> > --- > > Hi Junio, > > As promised, I am forwarding a 'saved' patch from Jeff, which was > a by-product of a long-ago discussion regarding commit 5efde212fc > ("zlib.c: use size_t for size", 2018-10-14). > > I have tested this patch on 'pu' (@6fd68134c8) and directly on top > of commit 5efde212fc. (see branch 'mk/use-size-t-in-zlib'). > > However, whilst I have been waiting for the tests to finish, I have > been looking at the code and concluded that this does not _have_ to > be applied on top of commit 5efde212fc. (I haven't done it, but just > tweak the context line to read 'unsigned long *left)' rather than > 'size_t *left)' and this should apply cleanly to 'master'. Also, it > would have _exactly_ the same effect as the current code! ;-) ). I have now done: $ diff 0001-packfile-use-extra-variable-to-clarify-code-in-use_p.patch ttt.patch 28c28 < size_t *left) --- > unsigned long *left) $ ... this and it applies cleanly to 'master', builds and passes tests. Just FYI. ;-) ATB, Ramsay Jones