xdelta3: : XD3_TOOFARBACK #188

Closed
GoogleCodeExporter opened this Issue Mar 24, 2015 · 35 comments

Projects

None yet

6 participants

@GoogleCodeExporter
What steps will reproduce the problem?
1.use commandline xdelta3.exe -0 -f -e -s src.file dst.file diff.file
2.
3.

What is the expected output? What do you see instead?
xdelta3: : XD3_TOOFARBACK

What version of the product are you using? On what operating system?
Monday, January 13, 2014
Re: Release 3.0.8 

Please provide any additional information below.

Original issue reported on code.google.com by Qokelate@gmail.com on 28 Aug 2014 at 9:39

@GoogleCodeExporter
Is it possible you could supply me with the files that cause this problem?
(I realize it might not be.)

Original comment by josh.mac...@gmail.com on 12 Oct 2014 at 2:57

@GoogleCodeExporter

Original comment by josh.mac...@gmail.com on 12 Oct 2014 at 3:00

  • Changed state: Accepted
@GoogleCodeExporter
Similar problem.

What steps will reproduce the problem?
xdelta3.exe -0 -I 0 -B 1073741824 -W 16777216 -fves src.file dst.file diff.file

What version of the product are you using? On what operating system?
Revision 405 and revision 408 compiled with mingw-w64-v3.1.0, 32bit 
architecture, Win7.


While making patch files for some 1GB files:

- revision 405 works without problems.

- revision 408 throws XD3_TOOFARBACK. I compiled it again with XD3_DEBUG=1, it 
stops at this line:

https://code.google.com/p/xdelta/source/browse/trunk/xdelta3/xdelta3.c?spec=svn4
08&r=408#4710

Original comment by mgr.inz....@gmail.com on 16 Oct 2014 at 11:08

@jmacd jmacd closed this Mar 31, 2015
@ghost
ghost commented Apr 14, 2015

Why did this bug get closed?
Using the Windows x86 and also the x64 binary from the release page, I can reproduce the problem.
I could also provide a pair of files that trigger this problem if they would help.

@jmacd jmacd reopened this Apr 15, 2015
@jmacd
Owner
jmacd commented Apr 15, 2015

Accidental close. Yes, please supply a pair of files, that's always helpful.

@ghost
ghost commented Apr 15, 2015

Okay, so here's a demo pair of files:
https://mega.co.nz/#F!1BUxBaKY!gvLcisWi3n_1yGQ--8eHPw

Basically I was trying to patch the .mp4 (which is the Big Buck Bunny 4k 60fps file I got from the linked site and tried to patch it to a .mkv (which was created by mkvmerge, though I didn't add subtitles or other streams to the .mkv in this example, just remuxed it with titles for the streams). It also happens with other .mp4 > .mkv files, but not with every file (I tested a 60MB file and it worked fine there).

Launching xdelta via cmd the following way:
xdelta3-3.0.9-x64.exe -v -e -s bbb_sunflower_2160p_60fps_normal.mp4 bbb_sunflower_2160p_60fps_normal.mkv patch.vcdiff
I get this output and an incomplete patch file:

xdelta3: source bbb_sunflower_2160p_60fps_normal.mp4 source size 642 MiB [673223862] blksize 2.00 MiB window 64.0 MiB (FIFO)
xdelta3: 0: in 8.00 MiB: out 9.43 KiB: total in 8.00 MiB: out 9.43 KiB: 65 ms
xdelta3: 1: in 8.00 MiB: out 3.27 KiB: total in 16.0 MiB: out 12.7 KiB: 46 ms
xdelta3: 2: in 8.00 MiB: out 5.09 KiB: total in 24.0 MiB: out 17.8 KiB: 48 ms
xdelta3: 3: in 8.00 MiB: out 10.2 KiB: total in 32.0 MiB: out 28.0 KiB: 49 ms
xdelta3: 4: in 8.00 MiB: out 4.74 KiB: total in 40.0 MiB: out 32.8 KiB: 27 ms
xdelta3: 5: in 8.00 MiB: out 4.95 KiB: total in 48.0 MiB: out 37.7 KiB: 28 ms
xdelta3: 6: in 8.00 MiB: out 11.6 KiB: total in 56.0 MiB: out 49.3 KiB: 29 ms
xdelta3: 7: in 8.00 MiB: out 8.17 KiB: total in 64.0 MiB: out 57.5 KiB: 30 ms
xdelta3: 8: in 8.00 MiB: out 12.5 KiB: total in 72.0 MiB: out 70.0 KiB: 29 ms
xdelta3: 9: in 8.00 MiB: out 8.57 KiB: total in 80.0 MiB: out 78.5 KiB: 28 ms
xdelta3: 10: in 8.00 MiB: out 8.57 KiB: total in 88.0 MiB: out 87.1 KiB: 30 ms
xdelta3: 11: in 8.00 MiB: out 14.5 KiB: total in 96.0 MiB: out 101 KiB: 30 ms
xdelta3: 12: in 8.00 MiB: out 11.6 KiB: total in 104 MiB: out 113 KiB: 30 ms
xdelta3: 13: in 8.00 MiB: out 6.79 KiB: total in 112 MiB: out 119 KiB: 28 ms
xdelta3: 14: in 8.00 MiB: out 9.92 KiB: total in 120 MiB: out 129 KiB: 29 ms
xdelta3: 15: in 8.00 MiB: out 8.61 KiB: total in 128 MiB: out 138 KiB: 28 ms
xdelta3: 16: in 8.00 MiB: out 9.03 KiB: total in 136 MiB: out 147 KiB: 29 ms
xdelta3: 17: in 8.00 MiB: out 10.0 KiB: total in 144 MiB: out 157 KiB: 30 ms
xdelta3: 18: in 8.00 MiB: out 8.83 KiB: total in 152 MiB: out 166 KiB: 28 ms
xdelta3: 19: in 8.00 MiB: out 10.6 KiB: total in 160 MiB: out 176 KiB: 28 ms
xdelta3: 20: in 8.00 MiB: out 6.39 KiB: total in 168 MiB: out 183 KiB: 29 ms
xdelta3: 21: in 8.00 MiB: out 7.90 KiB: total in 176 MiB: out 191 KiB: 27 ms
xdelta3: 22: in 8.00 MiB: out 10.0 KiB: total in 184 MiB: out 201 KiB: 28 ms
xdelta3: 23: in 8.00 MiB: out 6.90 KiB: total in 192 MiB: out 208 KiB: 29 ms
xdelta3: 24: in 8.00 MiB: out 8.50 KiB: total in 200 MiB: out 216 KiB: 30 ms
xdelta3: 25: in 8.00 MiB: out 6.35 KiB: total in 208 MiB: out 223 KiB: 26 ms
xdelta3: 26: in 8.00 MiB: out 12.2 KiB: total in 216 MiB: out 235 KiB: 29 ms
xdelta3: 27: in 8.00 MiB: out 5.01 KiB: total in 224 MiB: out 240 KiB: 27 ms
xdelta3: 28: in 8.00 MiB: out 8.07 KiB: total in 232 MiB: out 248 KiB: 27 ms
xdelta3: 29: in 8.00 MiB: out 7.99 KiB: total in 240 MiB: out 256 KiB: 28 ms
xdelta3: 30: in 8.00 MiB: out 8.52 KiB: total in 248 MiB: out 264 KiB: 28 ms
xdelta3: 31: in 8.00 MiB: out 5.27 KiB: total in 256 MiB: out 270 KiB: 27 ms
xdelta3: 32: in 8.00 MiB: out 6.65 KiB: total in 264 MiB: out 276 KiB: 27 ms
xdelta3: 33: in 8.00 MiB: out 10.4 KiB: total in 272 MiB: out 287 KiB: 29 ms
xdelta3: 34: in 8.00 MiB: out 8.23 KiB: total in 280 MiB: out 295 KiB: 29 ms
xdelta3: 35: in 8.00 MiB: out 5.11 KiB: total in 288 MiB: out 300 KiB: 28 ms
xdelta3: 36: in 8.00 MiB: out 6.74 KiB: total in 296 MiB: out 307 KiB: 27 ms
xdelta3: 37: in 8.00 MiB: out 5.97 KiB: total in 304 MiB: out 313 KiB: 27 ms
xdelta3: 38: in 8.00 MiB: out 6.40 KiB: total in 312 MiB: out 319 KiB: 28 ms
xdelta3: 39: in 8.00 MiB: out 6.29 KiB: total in 320 MiB: out 325 KiB: 28 ms
xdelta3: 40: in 8.00 MiB: out 10.3 KiB: total in 328 MiB: out 336 KiB: 30 ms
xdelta3: 41: in 8.00 MiB: out 4.58 KiB: total in 336 MiB: out 340 KiB: 28 ms
xdelta3: 42: in 8.00 MiB: out 4.74 KiB: total in 344 MiB: out 345 KiB: 27 ms
xdelta3: 43: in 8.00 MiB: out 5.15 KiB: total in 352 MiB: out 350 KiB: 26 ms
xdelta3: 44: in 8.00 MiB: out 3.18 KiB: total in 360 MiB: out 353 KiB: 26 ms
xdelta3: 45: in 8.00 MiB: out 6.15 KiB: total in 368 MiB: out 359 KiB: 29 ms
xdelta3: 46: in 8.00 MiB: out 6.30 KiB: total in 376 MiB: out 366 KiB: 28 ms
xdelta3: 47: in 8.00 MiB: out 14.0 KiB: total in 384 MiB: out 380 KiB: 28 ms
xdelta3: 48: in 8.00 MiB: out 11.0 KiB: total in 392 MiB: out 391 KiB: 30 ms
xdelta3: 49: in 8.00 MiB: out 10.8 KiB: total in 400 MiB: out 402 KiB: 30 ms
xdelta3: 50: in 8.00 MiB: out 8.68 KiB: total in 408 MiB: out 410 KiB: 30 ms
xdelta3: 51: in 8.00 MiB: out 2.96 KiB: total in 416 MiB: out 413 KiB: 27 ms
xdelta3: 52: in 8.00 MiB: out 3.95 KiB: total in 424 MiB: out 417 KiB: 26 ms
xdelta3: 53: in 8.00 MiB: out 4.64 KiB: total in 432 MiB: out 422 KiB: 27 ms
xdelta3: 54: in 8.00 MiB: out 2.77 KiB: total in 440 MiB: out 425 KiB: 27 ms
xdelta3: 55: in 8.00 MiB: out 8.09 KiB: total in 448 MiB: out 433 KiB: 28 ms
xdelta3: 56: in 8.00 MiB: out 3.04 KiB: total in 456 MiB: out 436 KiB: 26 ms
xdelta3: 57: in 8.00 MiB: out 11.7 KiB: total in 464 MiB: out 447 KiB: 29 ms
xdelta3: 58: in 8.00 MiB: out 6.04 KiB: total in 472 MiB: out 453 KiB: 27 ms
xdelta3: 59: in 8.00 MiB: out 2.44 KiB: total in 480 MiB: out 456 KiB: 27 ms
xdelta3: 60: in 8.00 MiB: out 4.03 KiB: total in 488 MiB: out 460 KiB: 28 ms
xdelta3: 61: in 8.00 MiB: out 8.92 KiB: total in 496 MiB: out 469 KiB: 30 ms
xdelta3: 62: in 8.00 MiB: out 14.4 KiB: total in 504 MiB: out 483 KiB: 30 ms
xdelta3: 63: in 8.00 MiB: out 11.5 KiB: total in 512 MiB: out 495 KiB: 30 ms
xdelta3: 64: in 8.00 MiB: out 7.80 KiB: total in 520 MiB: out 503 KiB: 29 ms
xdelta3: 65: in 8.00 MiB: out 7.71 KiB: total in 528 MiB: out 510 KiB: 28 ms
xdelta3: 66: in 8.00 MiB: out 7.80 KiB: total in 536 MiB: out 518 KiB: 27 ms
xdelta3: 67: in 8.00 MiB: out 7.90 KiB: total in 544 MiB: out 526 KiB: 29 ms
xdelta3: 68: in 8.00 MiB: out 7.42 KiB: total in 552 MiB: out 533 KiB: 28 ms
xdelta3: 69: in 8.00 MiB: out 6.70 KiB: total in 560 MiB: out 540 KiB: 29 ms
xdelta3: 70: in 8.00 MiB: out 5.25 KiB: total in 568 MiB: out 545 KiB: 29 ms
xdelta3: 71: in 8.00 MiB: out 5.79 KiB: total in 576 MiB: out 551 KiB: 27 ms
xdelta3: 72: in 8.00 MiB: out 8.29 KiB: total in 584 MiB: out 559 KiB: 29 ms
xdelta3: 73: in 8.00 MiB: out 5.69 KiB: total in 592 MiB: out 565 KiB: 27 ms
xdelta3: 74: in 8.00 MiB: out 3.94 KiB: total in 600 MiB: out 569 KiB: 27 ms
xdelta3: 75: in 8.00 MiB: out 3.84 KiB: total in 608 MiB: out 573 KiB: 27 ms
xdelta3: : XD3_TOOFARBACK

Patching the same files the same way with an older version without increasing the block size (3.0.2), xdelta doesn't abort and the patch works as intended, though using an increased block size (1GiB) provided by one of the bug reporters from Google Code (-B 1073741824), patching these two files works with 3.0.9, but it didn't worked for him, so maybe a bigger file triggers this problem also with this block size (I haven't tested it)?

@mykohsu
mykohsu commented Apr 24, 2015

I faced a very similar issue, but the difference is that..
3.0.6 - Works
3.0.8 - Works
3.0.9 - XD3_TOOFARBACK

I cannot provide the files, but interesting to note is that the working diff here can be further compressed to 17% ratio.

@ghost
ghost commented Apr 24, 2015

I forgot to mention in my comment earlier that I didn't test 3.0.8 or 3.0.6 but just randomly used 3.0.2, so maybe my testfiles would also pass without XD3_TOOFARBACK in 3.0.8, I don't know for sure though.

@mykohsu
mykohsu commented Apr 24, 2015

I mentioned 3.0.8 because the original issue was opened on 3.0.8.
On Apr 24, 2015 3:24 PM, "neappx" notifications@github.com wrote:

I forgot to mention in my comment earlier that I didn't test 3.0.8 or
3.0.6 but just randomly used 3.0.2, so maybe my testfiles would also pass
without XD3_TOOFARBACK in 3.0.8, I don't know for sure though since I
didn't test it.


Reply to this email directly or view it on GitHub
#188 (comment).

@jmacd
Owner
jmacd commented Apr 29, 2015

Thank you. I will investigate this immediately.

On Fri, Apr 24, 2015 at 3:25 PM, mykohsu notifications@github.com wrote:

I mentioned 3.0.8 because the original issue was opened on 3.0.8.

On Apr 24, 2015 3:24 PM, "neappx" notifications@github.com wrote:

I forgot to mention in my comment earlier that I didn't test 3.0.8 or
3.0.6 but just randomly used 3.0.2, so maybe my testfiles would also pass
without XD3_TOOFARBACK in 3.0.8, I don't know for sure though since I
didn't test it.

Reply to this email directly or view it on GitHub
#188 (comment).

Reply to this email directly or view it on GitHub
#188 (comment).

@mykohsu
mykohsu commented Apr 29, 2015

I can provide screenshots or run a debug build but cannot provide any
files.
Thanks for looking into it!
On Apr 28, 2015 10:53 PM, "Joshua MacDonald" notifications@github.com
wrote:

Thank you. I will investigate this immediately.

On Fri, Apr 24, 2015 at 3:25 PM, mykohsu notifications@github.com wrote:

I mentioned 3.0.8 because the original issue was opened on 3.0.8.

On Apr 24, 2015 3:24 PM, "neappx" notifications@github.com wrote:

I forgot to mention in my comment earlier that I didn't test 3.0.8 or
3.0.6 but just randomly used 3.0.2, so maybe my testfiles would also
pass
without XD3_TOOFARBACK in 3.0.8, I don't know for sure though since I
didn't test it.

Reply to this email directly or view it on GitHub
#188 (comment).

Reply to this email directly or view it on GitHub
#188 (comment).


Reply to this email directly or view it on GitHub
#188 (comment).

@mgrinzPlayer

It breaks at this line:
https://github.com/jmacd/xdelta/blob/master/xdelta3/xdelta3.c#L4242

It is easy to reproduce:

  1. get any 2GB file (in my case 1.94GB). Split it into 50MB chunks (file.000, file.001,file.002, ...)
  2. swap files names for first and last chunk. And swap names for second and 19th chunk.
  3. combine chunks into new file. We have original and modified. Try creating a patch with 1GB window.

Restoring if statement, fixes it.
https://github.com/jmacd/xdelta/blob/eb49cd21f0e8a53ba95493d1fbba9e618e10d153/xdelta3/xdelta3.c#L4699

I compiled it (source from Oct 12, 2014, if instead of assertion) and I can create a patch and use it without problems.

@jmacd
Owner
jmacd commented May 2, 2015

OK, makes sense. That if statement smells--hides bugs elsewhere.
I'll put something like this into the regtest. Thanks.

@jmacd
Owner
jmacd commented May 3, 2015

Fix here:

jmacd/xdelta-gpl@9095fce

I'm going to work on a test and then a release. Thanks.

@jmacd jmacd closed this May 3, 2015
@jmacd jmacd reopened this May 3, 2015
@jmacd
Owner
jmacd commented May 5, 2015
@mykohsu
mykohsu commented May 7, 2015

I can confirm that the issue is fixed for me.

@mgrinzPlayer

#188 (comment), now works.

@heftig
heftig commented Jul 5, 2015

Could we please get a 3.0.10 release that includes this fix?

@jmacd
Owner
jmacd commented Jul 6, 2015

Yes. I'll do my best to have it done tomorrow night.

On Sun, Jul 5, 2015 at 10:49 AM, Jan Alexander Steffens <
notifications@github.com> wrote:

Could we please get a 3.0.10 release that includes this fix?


Reply to this email directly or view it on GitHub
#188 (comment).

@mgrinzPlayer

@jmacd What development environment are you using? Visual Studio 2010?
Personally, I'm using MinGW-w64 3.1.0. (GCC 4.8.2)

Will try the new one, MinGW-w64 4 (GCC 5.1.0)

@jmacd
Owner
jmacd commented Jul 7, 2015

@mgrinzPlayer I usually develop with llvm tools (on OS X), then update both
gcc and llvm tools (on a Gentoo) and run build/test, and finally build on a
Windows 7 that I boot only rarely, using VSC++ 2010 Express.

I like your recommendation and have a mingw-w64-build running (on said
Gentoo).

On Mon, Jul 6, 2015 at 2:20 AM, mgrinzPlayer notifications@github.com
wrote:

@jmacd https://github.com/jmacd What development environment are you
using? Visual Studio 2010?
Personally, I'm using MinGW-w64 3.1.0.


Reply to this email directly or view it on GitHub
#188 (comment).

@mgrinzPlayer

@jmacd
There is one thing we need to do:

Index: xdelta3-internal.h
===================================================================
--- xdelta3-internal.h
+++ xdelta3-internal.h
@@ -116,10 +116,8 @@
  * absence of the '_' prefix) but they were initially buggy.  So,
  * always use the native '_'-prefixed version with Win32. */
 #ifdef _WIN32
-#define vsnprintf_func(str,size,fmt,args) \
-  _vsnprintf_s(str,size,size-1,fmt,args)
-#define snprintf_func(str,size,fmt,...) \
-  _snprintf_s(str,size,size-1,fmt,__VA_ARGS__)
+#define vsnprintf_func _vsnprintf
+#define snprintf_func _snprintf
 #else
 #define vsnprintf_func vsnprintf
 #define snprintf_func snprintf

Otherwise, binaries won't work on WinXP.
msvcrt.dll from WinXP (with all updates) doesn't have _vsnprintf_s and _snprintf_s

@jmacd
Owner
jmacd commented Jul 8, 2015

OK, I have managed to almost build for mingw. This will take a bit more work, but I like it.

@jmacd
Owner
jmacd commented Jul 8, 2015

I wonder if the comment I removed in
jmacd/xdelta-gpl@f56eeca
is still valid. On Mingw, shouldn't we use the Mingw-provided snprintf() and vsnprintf() with no underscores?

@mgrinzPlayer

EDIT:

There are so many “a portable (v)snprintf” implementations in the internet...

Maybe write your own?

inline int c99_vsnprintf(char *outBuf, size_t size, const char *format, va_list ap)
{
    int count = -1;

    if (size != 0)
        count = _vsnprintf_s(outBuf, size, _TRUNCATE, format, ap);
    if (count == -1)
        count = _vscprintf(format, ap);

    return count;
}

inline int c99_snprintf(char *outBuf, size_t size, const char *format, ...)
{
    int count;
    va_list ap;

    va_start(ap, format);
    count = c99_vsnprintf(outBuf, size, format, ap);
    va_end(ap);

    return count;
}

and change c99_vsnprintf so it won't use _vsnprintf_s

OR
"Microsoft has finally implemented snprintf in Visual Studio 2015". Or it would be better to use MinGW version.

@jmacd
Owner
jmacd commented Jul 10, 2015

I've written one printf implementation (at work) and I refuse to do it
again. :-)

I'm running into trouble with the mingw tools, I wonder if you could share
a bit more about your build process. I'm getting linker errors as if the
tools aren't finding the basic mingw libraries. The mingw-w64-build script
works flawlessly, though. The script I'm using is here:

https://github.com/jmacd/xdelta-devel/blob/ab5fac1b46411bdf6151013978a721d52342cc4f/xdelta3/run_release.sh

On Thu, Jul 9, 2015 at 4:16 AM, mgrinzPlayer notifications@github.com
wrote:

There are so many “a portable (v)snprintf” implementations in the
internet...

Maybe write your own ?


Reply to this email directly or view it on GitHub
#188 (comment).

@mgrinzPlayer

I'm using this MinGW-w64 installer:
http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/

I installed it on pure Windows 10 Technical Preview (and that means: no other tools like MSYS, cygwin, etc)

Build info:
https://gist.github.com/mgrinzPlayer/a14b9f12eb867530dee9

Make file:

CC = GCC

SOURCES =  xdelta3-blkcache.h \
           xdelta3-cfgs.h \
           xdelta3-decode.h \
           xdelta3-djw.h \
           xdelta3-fgk.h \
           xdelta3-hash.h \
           xdelta3-internal.h \
           xdelta3-list.h \
           xdelta3-lzma.h \
           xdelta3-main.h \
           xdelta3-merge.h \
           xdelta3-second.h \
           xdelta3-test.h \
           xdelta3.h \
           xdelta3.c

TARGETS = xdelta3-i686 \
          xdelta3-x86_64

CFLAGS= -Wall -Wshadow -fno-builtin -O3
XDWINFLAGS:=-DXD3_STDIO=0 -DXD3_POSIX=0 -DXD3_WIN32=1 -DEXTERNAL_COMPRESSION=0 \
            -DREGRESSION_TEST=1 -DSHELL_TESTS=0 -DXD3_DEBUG=0 \
            -DSECONDARY_DJW=1 -DSECONDARY_FGK=1 -DSECONDARY_LZMA=0 \
            -DXD3_MAIN=1 -DXD3_USE_LARGEFILE64=1

xdelta3-i686: $(SOURCES)
              $(CC) $(CFLAGS) xdelta3.c -lm -o xdelta3-i686.exe \
                    $(XDWINFLAGS)


xdelta3-x86_64: $(SOURCES)
                $(CC) $(CFLAGS) xdelta3.c -lm -o xdelta3-x86_64 \
                      $(XDWINFLAGS)

Compiled with this bat:

set PATH=C:\MinGW-W64\mingw32\bin
cd /d "C:\xdelta3"
mingw32-make xdelta3-i686

PS: I also have a question.

Can you compile (Gentoo or OS X) with the newest XZ Utils from http://tukaani.org/xz , this package xz-5.2.1-windows.zip (1352 KiB) released on 2015-02-26 ? I tried without success:

xdelta3: testing decompress_single_bit_error (XD3_SEC_LZMA)...xdelta3: non-failures 46; expected 54 failed: incorrect: XD3_INTERNAL

xz-5.0.5-windows is the recent one which works.

@mgrinzPlayer

Sorry for late edit. I've internet connection problems (power failures due to recent strong wind)

"I wonder if you could share a bit more about your build process"

First for 32bit:

2

Then for 64bit:

1

both at the same path:

3

CMD file

set PATH=C:\mingw-w64\mingw32\bin
mingw32-make -B xdelta3-i686

set PATH=C:\mingw-w64\mingw64\bin
mingw32-make -B xdelta3-x86_64

pause

I uploaded my custom builds here:
https://googledrive.com/host/0BwMAnE6mjogMfnk3Mk94Qlh6UVpENU5pQ2FRU2Z4NFZ5R0QtVlhFVzVadDRYQm9jWVVodWc/

GCC 4.8.2 and GCC 5.1.0 used, all with XD3_USE_LARGEFILE64=1, uses MinGW-provided vsnprintf and snprintf.

@mgrinzPlayer

PS: If you read messages via email, you may miss few updated/edited comments. Sorry about that.

@voltagex

Same error with 3.0.9 on Linux x64 - pair of files + truncated (?) xdelta output are at https://mega.nz/#F!CgQiAQrT!Z1LKbCLBwRrRNyH_OFm5Vw

@mgrinzPlayer

@voltagex , It has already been solved. Try [this one win32bit](https://googledrive.com/host/0BwMAnE6mjogMfnk3Mk94Qlh6UVpENU5pQ2FRU2Z4NFZ5R0QtVlhFVzVadDRYQm9jWVVodWc/xdelta-devel commit ab5fac1/xdelta3 mingw-w64 gcc5.1.0 lzmaEnabled i686.exe).
[Or this win64bit](https://googledrive.com/host/0BwMAnE6mjogMfnk3Mk94Qlh6UVpENU5pQ2FRU2Z4NFZ5R0QtVlhFVzVadDRYQm9jWVVodWc/xdelta-devel commit ab5fac1/xdelta3 mingw-w64 gcc5.1.0 lzmaEnabled x86_64.exe)

Or wait for next official version.

@jmacd
Owner
jmacd commented Jul 12, 2015

I did succeed at building mingw binaries w/ my release script, but haven't
tested them yet. I think I can finish this evening.

On Sun, Jul 12, 2015 at 2:57 AM, mgrinzPlayer notifications@github.com
wrote:

@voltagex https://github.com/voltagex , it is already fixed. Try this
one 32bit
https://googledrive.com/host/0BwMAnE6mjogMfnk3Mk94Qlh6UVpENU5pQ2FRU2Z4NFZ5R0QtVlhFVzVadDRYQm9jWVVodWc/xdelta-devel%20commit%20ab5fac1b46/xdelta3%20mingw-w64%20gcc5.1.0%20lzmaEnabled%20i686.exe
.
Or this 64bit
https://googledrive.com/host/0BwMAnE6mjogMfnk3Mk94Qlh6UVpENU5pQ2FRU2Z4NFZ5R0QtVlhFVzVadDRYQm9jWVVodWc/xdelta-devel%20commit%20ab5fac1b46/xdelta3%20mingw-w64%20gcc5.1.0%20lzmaEnabled%20x86_64.exe

Or wait for next official version.


Reply to this email directly or view it on GitHub
#188 (comment).

@jmacd
Owner
jmacd commented Jul 17, 2015

Mingw binaries are testing well. I may be able to make a release tomorrow.
jmacd/xdelta-gpl@94b7d2c

On Sun, Jul 12, 2015 at 8:01 AM, Josh MacDonald josh.macdonald@gmail.com
wrote:

I did succeed at building mingw binaries w/ my release script, but haven't
tested them yet. I think I can finish this evening.

On Sun, Jul 12, 2015 at 2:57 AM, mgrinzPlayer notifications@github.com
wrote:

@voltagex https://github.com/voltagex , it is already fixed. Try this
one 32bit
https://googledrive.com/host/0BwMAnE6mjogMfnk3Mk94Qlh6UVpENU5pQ2FRU2Z4NFZ5R0QtVlhFVzVadDRYQm9jWVVodWc/xdelta-devel%20commit%20ab5fac1b46/xdelta3%20mingw-w64%20gcc5.1.0%20lzmaEnabled%20i686.exe
.
Or this 64bit
https://googledrive.com/host/0BwMAnE6mjogMfnk3Mk94Qlh6UVpENU5pQ2FRU2Z4NFZ5R0QtVlhFVzVadDRYQm9jWVVodWc/xdelta-devel%20commit%20ab5fac1b46/xdelta3%20mingw-w64%20gcc5.1.0%20lzmaEnabled%20x86_64.exe

Or wait for next official version.


Reply to this email directly or view it on GitHub
#188 (comment).

@mgrinzPlayer

I tested your recent binaries. Looks like "XD3_TOOFARBACK" is now fixed.

@jmacd jmacd closed this Aug 4, 2015
@jsonn jsonn pushed a commit to jsonn/pkgsrc that referenced this issue Feb 9, 2016
wiz Update xdelta3 to 3.0.11.
3.0.11:

Fixes and one major bug:

    Decoder block cache poor cache performance (source buffer was effectively half-sized)

and a number of minor and non-critical bugs:

    Number of decoder crashes discovered by American Fuzzy Lop
    Lingering XD3_TOOFARBACK issues
    Improved testing & portability

3.0.10

Primarily fixes jmacd/xdelta#188

Continuing work on portability, new release script runs build+test in more configurations.
Windows executable built with MinGW cross compiler.

3.0.9

Builds (more) cleanly on newer compilers.

Improvements in "printf" usage & portability Several minor bug fixes. Move to Github.

3.0.8

Windows build now includes support for liblzma secondary compression with "-S lzma". (Sorry for the delay.)
6e9778e
@jsonn jsonn pushed a commit to jsonn/pkgsrc that referenced this issue Feb 11, 2016
wiz Update xdelta3 to 3.0.11.
3.0.11:

Fixes and one major bug:

    Decoder block cache poor cache performance (source buffer was effectively half-sized)

and a number of minor and non-critical bugs:

    Number of decoder crashes discovered by American Fuzzy Lop
    Lingering XD3_TOOFARBACK issues
    Improved testing & portability

3.0.10

Primarily fixes jmacd/xdelta#188

Continuing work on portability, new release script runs build+test in more configurations.
Windows executable built with MinGW cross compiler.

3.0.9

Builds (more) cleanly on newer compilers.

Improvements in "printf" usage & portability Several minor bug fixes. Move to Github.

3.0.8

Windows build now includes support for liblzma secondary compression with "-S lzma". (Sorry for the delay.)
53be1d1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment