When doing the change of r1076556, should the define LOWER_7BITS_SET not
always be mapped to 0x7f7f7f7f independent of the APR_SIZEOF_VOIDP
//#if APR_SIZEOF_VOIDP == 8
//# define LOWER_7BITS_SET 0x7f7f7f7f7f7f7f7f
//# define BIT_7_SET 0x8080808080808080
//# define R_MASK 0x0a0a0a0a0a0a0a0a
//# define N_MASK 0x0d0d0d0d0d0d0d0d
# define LOWER_7BITS_SET 0x7f7f7f7f
# define BIT_7_SET 0x80808080
# define R_MASK 0x0a0a0a0a
# define N_MASK 0x0d0d0d0d
From: eqfox_at_web.de [mailto:eqfox_at_web.de]
Sent: donderdag 3 maart 2011 9:55
To: Marc Haesen
Subject: Re: crash during svn blame on windows 64-bit version
On 24.02.2011 08:53, Marc Haesen wrote:
> I saw a crash when running svn blame with a svn.exe compiled for win64
> on trunk.
> After some investigation I found the reason for the crash.
> The reason is because apr.h is using the define WIN64 for defining the
> APR_SIZEOF_VOIDP define.
> (I am using the apr.h/apr.hw delivered with httpd-2.2.17)
Thanks for digging into that issue!
> WIN64 is currently not defined when compiling for 64-bit on windows.
Luckily, TSVN is not affected by this bug as it
uses its own build script including the WIN64
However, SVN cl clients and possibly *servers*
> This caused the wrong code to be generated for the contains_eol
> in subversion\libsvn_diff\diff_file.c (revision 1074059)
> Two solutions:
> 1. Replace #ifdef WIN64 by #ifdef _WIN64 in apr.h (or apr.hw since
> this is actually the source)
Submit the patch to the APR guys (if you haven't
done so already).
> 2. Add the WIN64 to the compile options when compiling for 64-bit
3. Make the SVN code work with either definition
I took that road in r1076556 on /trunk to make sure
that SVN will not be broken regardless of the APR
version being used.
Received on 2011-03-04 14:16:16 CET