Junio C Hamano <gitster <at> pobox.com> writes: > > On Sat, Feb 7, 2015 at 12:32 PM, Torsten Bögershausen <tboegi <at> web.de> wrote: > > I don't know every platform of the planet well enough to be helpful here, > > especially the ones which don't follow all the specifications. > > > > In other words: As long as we can not guarantee that SSIZE_MAX is defined, > > (and is defined to somethong useful for xread()/xwrite() ) > > we should be more defensive here: > > > > tweak only on platform where we know it is needed and we know that it works. > > Yup, I agree that is a sensible way to go. > > (1) if Makefile overrides the size, use it; otherwise > (2) if SSIZE_MAX is defined, and it is smaller than our internal > default, use it; otherwise > (3) use our internal default. > > And leave our internal default to 8MB. > > That way, nobody needs to do anything differently from his current build set-up, > and I suspect that it would make step (1) optional. > something like this: /* allow overwriting from e.g. Makefile */ #if !defined(MAX_IO_SIZE) # define MAX_IO_SIZE (8*1024*1024) #endif /* for plattforms that have SSIZE and have it smaller */ #if defined(SSIZE_MAX && (SSIZE_MAX < MAX_IO_SIZE) # undef MAX_IO_SIZE /* avoid warning */ # define MAX_IO_SIZE SSIZE_MAX #endif Steps 2 and 3 only , indeed step 1 not needed... Bye, Jojo��.n��������+%������w��{.n��������n�r������&��z�ޗ�zf���h���~����������_��+v���)ߣ�