diff options
author | md_5 <git@md-5.net> | 2014-12-24 09:32:10 +1100 |
---|---|---|
committer | md_5 <git@md-5.net> | 2014-12-24 09:32:10 +1100 |
commit | 9d9ebf6ce537e2dd60411701ce7344c9d8ad2643 (patch) | |
tree | 857b809b6f33e9a129610bc7e5280bee05fe80de | |
parent | 7954aca0ff43647dbe0825fe4eb562bcfdef44db (diff) | |
download | buildtools-9d9ebf6ce537e2dd60411701ce7344c9d8ad2643.tar buildtools-9d9ebf6ce537e2dd60411701ce7344c9d8ad2643.tar.gz buildtools-9d9ebf6ce537e2dd60411701ce7344c9d8ad2643.tar.lz buildtools-9d9ebf6ce537e2dd60411701ce7344c9d8ad2643.tar.xz buildtools-9d9ebf6ce537e2dd60411701ce7344c9d8ad2643.zip |
Support patches without a prelude.
-rw-r--r-- | src/main/java/org/spigotmc/builder/Builder.java | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/main/java/org/spigotmc/builder/Builder.java b/src/main/java/org/spigotmc/builder/Builder.java index 2cbe573..cc0b8b7 100644 --- a/src/main/java/org/spigotmc/builder/Builder.java +++ b/src/main/java/org/spigotmc/builder/Builder.java @@ -246,7 +246,24 @@ public class Builder System.out.println( "Patching with " + file.getName() ); - Patch parsedPatch = DiffUtils.parseUnifiedDiff( Files.readLines( file, Charsets.UTF_8 ) ); + List<String> readFile = Files.readLines( file, Charsets.UTF_8 ); + + // Manually append prelude if it is not found in the first few lines. + boolean preludeFound = false; + for ( int i = 0; i < Math.min( 3, readFile.size() ); i++ ) + { + if ( readFile.get( i ).startsWith( "+++" ) ) + { + preludeFound = true; + break; + } + } + if ( !preludeFound ) + { + readFile.add( 0, "+++" ); + } + + Patch parsedPatch = DiffUtils.parseUnifiedDiff( readFile ); List<?> modifiedLines = DiffUtils.patch( Files.readLines( clean, Charsets.UTF_8 ), parsedPatch ); BufferedWriter bw = new BufferedWriter( new FileWriter( t ) ); |