Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit9bbc87a

Browse files
committed
Fix parsing of binary files
1 parent2f53bf7 commit9bbc87a

File tree

3 files changed

+27
-4
lines changed

3 files changed

+27
-4
lines changed

‎package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
"release":"./scripts/release.sh",
4040
"release-bower":"./scripts/update-bower-version.sh",
4141
"templates":"./scripts/hulk.js --wrapper node --variable 'browserTemplates' ./src/templates/*.mustache > ./src/templates/diff2html-templates.js",
42-
"style":"jscs src/*.js src/ui/js/*.js",
42+
"style":"eslint src/*.js src/ui/js/*.js",
4343
"coverage":"istanbul cover _mocha -- -u exports -R spec ./test/**/*",
4444
"check-coverage":"istanbul check-coverage --statements 90 --functions 90 --branches 85 --lines 90 ./coverage/coverage.json",
4545
"test":"npm run style && npm run coverage && npm run check-coverage",

‎src/diff-parser.js‎

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -211,10 +211,10 @@
211211
*/
212212
if(
213213
(utils.startsWith(line,oldFileNameHeader)&&
214-
utils.startsWith(nxtLine,newFileNameHeader)&&utils.startsWith(afterNxtLine,hunkHeaderPrefix))||
214+
utils.startsWith(nxtLine,newFileNameHeader))||
215215

216216
(utils.startsWith(line,newFileNameHeader)&&
217-
utils.startsWith(prevLine,oldFileNameHeader)&&utils.startsWith(nxtLine,hunkHeaderPrefix))
217+
utils.startsWith(prevLine,oldFileNameHeader))
218218
){
219219
/*
220220
* --- Date Timestamp[FractionalSeconds] TimeZone
@@ -239,7 +239,10 @@
239239
}
240240
}
241241

242-
if(currentFile&&utils.startsWith(line,hunkHeaderPrefix)){
242+
if(
243+
(currentFile&&utils.startsWith(line,hunkHeaderPrefix))||
244+
(currentFile.isGitDiff&&currentFile&&currentFile.oldName&&currentFile.newName&&!currentBlock)
245+
){
243246
startBlock(line);
244247
return;
245248
}

‎test/diff-parser-tests.js‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -523,5 +523,25 @@ describe('DiffParser', function() {
523523
assert.deepEqual(linesContent,[' test']);
524524
});
525525

526+
it('should parse binary file diff',function(){
527+
vardiff=
528+
'diff --git a/last-changes-config.png b/last-changes-config.png\n'+
529+
'index 322248b..56fc1f2 100644\n'+
530+
'--- a/last-changes-config.png\n'+
531+
'+++ b/last-changes-config.png\n'+
532+
'Binary files differ';
533+
534+
varresult=DiffParser.generateDiffJson(diff);
535+
varfile1=result[0];
536+
assert.equal(1,result.length);
537+
assert.equal(0,file1.addedLines);
538+
assert.equal(0,file1.deletedLines);
539+
assert.equal('last-changes-config.png',file1.oldName);
540+
assert.equal('last-changes-config.png',file1.newName);
541+
assert.equal(1,file1.blocks.length);
542+
assert.equal(0,file1.blocks[0].lines.length);
543+
assert.equal('Binary files differ',file1.blocks[0].header);
544+
});
545+
526546
});
527547
});

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp