[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 16:38:01 +0100

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]
]]]

Cheers,

-- 
Johan
Received on 2011-01-02 16:39:02 CET

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