@@ -68,8 +68,8 @@ func (r *MultiFileDiffReader) ReadFile() (*FileDiff, error) {
68
68
// caused by the lack of any hunks, or a malformatted hunk, so we
69
69
// need to perform the check here.
70
70
hr := fr .HunksReader ()
71
- line , err := r .reader . ReadBytes ( '\n' )
72
- if err != nil && ! ( err == io . EOF && len ( line ) > 0 ) {
71
+ line , err := readLine ( r .reader )
72
+ if err != nil {
73
73
return d , err
74
74
}
75
75
line = bytes .TrimSuffix (line , []byte {'\n' })
@@ -216,15 +216,12 @@ func (r *FileDiffReader) readOneFileHeader(prefix []byte) (filename string, time
216
216
217
217
if r .fileHeaderLine == nil {
218
218
var err error
219
- line , err = r .reader . ReadBytes ( '\n' )
219
+ line , err = readLine ( r .reader )
220
220
if err == io .EOF {
221
- if len (line ) == 0 {
222
- return "" , nil , & ParseError {r .line , r .offset , ErrNoFileHeader }
223
- }
221
+ return "" , nil , & ParseError {r .line , r .offset , ErrNoFileHeader }
224
222
} else if err != nil {
225
223
return "" , nil , err
226
224
}
227
- line = bytes .TrimSuffix (line , []byte {'\n' })
228
225
} else {
229
226
line = r .fileHeaderLine
230
227
r .fileHeaderLine = nil
@@ -263,15 +260,12 @@ func (r *FileDiffReader) ReadExtendedHeaders() ([]string, error) {
263
260
var line []byte
264
261
if r .fileHeaderLine == nil {
265
262
var err error
266
- line , err = r .reader . ReadBytes ( '\n' )
263
+ line , err = readLine ( r .reader )
267
264
if err == io .EOF {
268
- if len (line ) == 0 {
269
- return xheaders , & ParseError {r .line , r .offset , ErrExtendedHeadersEOF }
270
- }
265
+ return xheaders , & ParseError {r .line , r .offset , ErrExtendedHeadersEOF }
271
266
} else if err != nil {
272
267
return xheaders , err
273
268
}
274
- line = bytes .TrimSuffix (line , []byte {'\n' })
275
269
} else {
276
270
line = r .fileHeaderLine
277
271
r .fileHeaderLine = nil
@@ -344,14 +338,13 @@ func (r *HunksReader) ReadHunk() (*Hunk, error) {
344
338
line = r .nextHunkHeaderLine
345
339
r .nextHunkHeaderLine = nil
346
340
} else {
347
- line , err = r .reader . ReadBytes ( '\n' )
341
+ line , err = readLine ( r .reader )
348
342
if err != nil {
349
343
if err == io .EOF && r .hunk != nil {
350
344
return r .hunk , nil
351
345
}
352
346
return nil , err
353
347
}
354
- line = bytes .TrimSuffix (line , []byte {'\n' })
355
348
}
356
349
357
350
// Record position.
0 commit comments