[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r1054286 - /subversion/trunk/subversion/libsvn_delta/xdelta.c

From: Johan Corveleyn <jcorvel_at_gmail.com>
Date: Sun, 2 Jan 2011 17:03:18 +0100

On Sun, Jan 2, 2011 at 4:45 PM, Stefan Fuhrmann
<stefanfuhrmann_at_alice-dsl.de> wrote:
> On 02.01.2011 16:38, Johan Corveleyn wrote:
>>
>> On Sun, Jan 2, 2011 at 9:20 AM, Johan Corveleyn<jcorvel_at_gmail.com>  wrote:
>>>
>>> On Sat, Jan 1, 2011 at 9:33 PM,<stefan2_at_apache.org>  wrote:
>>>>
>>>> Author: stefan2
>>>> Date: Sat Jan  1 20:33:22 2011
>>>> New Revision: 1054286
>>>>
>>>> URL: http://svn.apache.org/viewvc?rev=1054286&view=rev
>>>> Log:
>>>> XDelta calculation is major part of svn_txdelta_send_txstream.
>>>> Therefore, speed up string matching code and the relatively
>>>> expensive hash-code (adler32) calculations.
>>>>
>>>> * subversion/libsvn_delta/xdelta.c
>>>>  (init_adler32): init adler checksum with 0 instead of 1;
>>>>   use svn_adler32 for performance
>>>>  (adler32_out): "-1" can / must be ommitted now that we
>>>>   start at 0 instead of 1 for s1.
>>>>  (adler32_replace): special, faster implementation replacing
>>>>   a adler32_out(), adler32_in() sequence
>>>>
>>>>  (match_length): new utility function
>>>>  (find_match): speed up the main loop by calling match_length()
>>>>  (compute_delta): optimize adler32 calculations
>>>>
>>>> Modified:
>>>>    subversion/trunk/subversion/libsvn_delta/xdelta.c
>>>
>>> Hi Stefan,
>>>
>>> This makes my (Windows 32-bit VCE 2008) build fail:
>>> svn_delta-1.lib(xdelta.obj) : error LNK2019: unresolved external
>>> symbol _svn__adler32 referenced in function _init_adler32
>>> ..\..\..\Release\subversion\libsvn_delta\libsvn_delta-1.dll : fatal
>>> error LNK1120: 1 unresolved externals
>>
>> It was actually r1054277 that broke it. The following patch fixes it:
>> [[[
>> Index: build.conf
>> ===================================================================
>> --- build.conf  (revision 1054417)
>> +++ build.conf  (working copy)
>> @@ -329,7 +329,7 @@ msvc-export =
>>          private\svn_log.h private\svn_mergeinfo_private.h
>>          private\svn_opt_private.h private\svn_skel.h private\svn_sqlite.h
>>          private\svn_utf_private.h private\svn_eol_private.h
>> -        private\svn_token.h
>> +        private\svn_token.h private\svn_adler32.h
>>
>>  # Working copy management lib
>>  [libsvn_wc]
>> ]]]
>>
> Thanks Johan! Committed in r1054421.
>
> -- Stefan^2.

No problem. I also saw two other warnings (than the ones I just sent),
but don't know exactly which revision introduced them (and don't know
how important they are). You'll probably know quicker than I do :-) :

..\..\..\subversion\libsvn_subr\adler32.c(64): warning C4057:
'function' : 'const Bytef *' differs in indirection to slightly
different base types from 'const char *'
..\..\..\subversion\libsvn_subr\adler32.c(64): warning C4244:
'function' : conversion from 'apr_off_t' to 'uInt', possible loss of
data

-- 
Johan
Received on 2011-01-02 17:04:17 CET

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.