GRIM: Rewrite of PatchR #617

Merged
merged 5 commits into from May 8, 2012

Conversation

Projects
None yet
3 participants
@YakBizzarro
Member

YakBizzarro commented May 3, 2012

Same as #606, with a major/minor versioning scheme and more error handling code.
@klusark and Giucam: I've tested all patches, except for those for si.lua and ha.lua. Could you check if they work correctly? I don't know how to trigger the bugs that these patches resolve.

Original description:
This commit introduces a new version of patchr, written from scratch, but heavily based on bsdiff format (http://www.daemonology.net/bsdiff/).
This new format is totally binary, and comes with a tool (diffr) to build automatically the patches from the old and the new file.
For more information about the new format, see the documentation alleged to the pull request of diffr and patchr tools in residualvm-tools.

The diffr tool, with the new -b option of luac, makes the process of patching lua scripts much more easy, I'll write a guide for that.
Furthermore it can patch efficiently large files, since the whole old file is not loaded anymore in the ram and it doesn't make memmoves on larges portions of the file.

All patches written for the old version have been ported to this one.

Andrea Corna added some commits Apr 10, 2012

Andrea Corna
GRIM: Rewrite Patchr
This new version of patchr is based on bsdiff format (although it doesn't
share code with it, since it has been written from scratch)
All patches written for the old version have been ported to this one.
@giucam

This comment has been minimized.

Show comment
Hide comment
@giucam

giucam May 3, 2012

Member

The patch for ha.lua works. I don't remember what was wrong with si, though.

Member

giucam commented May 3, 2012

The patch for ha.lua works. I don't remember what was wrong with si, though.

@klusark

This comment has been minimized.

Show comment
Hide comment
@klusark

klusark May 6, 2012

Member

si is working fine. I can't actually remember what the change was, but without the patch the scene has a ton of errors.

Member

klusark commented May 6, 2012

si is working fine. I can't actually remember what the change was, but without the patch the scene has a ton of errors.

@klusark

This comment has been minimized.

Show comment
Hide comment
@klusark

klusark May 6, 2012

warning C4701: potentially uninitialized local variable 'skipSize' used

warning C4701: potentially uninitialized local variable 'skipSize' used

This comment has been minimized.

Show comment
Hide comment
@YakBizzarro

YakBizzarro May 7, 2012

Owner

Fixed, thanks.

Owner

YakBizzarro replied May 7, 2012

Fixed, thanks.

YakBizzarro pushed a commit that referenced this pull request May 8, 2012

@YakBizzarro YakBizzarro merged commit 9da01a4 into residualvm:master May 8, 2012

@YakBizzarro YakBizzarro deleted the YakBizzarro:patchr2-all branch Dec 21, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment