@@ -175,12 +175,13 @@ function parseExtendedHeader(ctx: Context) {
175
175
176
176
function parseChunkHeader ( ctx : Context ) {
177
177
const line = ctx . getCurLine ( ) ;
178
- const normalChunkExec = / ^ @ @ \s \- ( \d + ) , ? ( \d + ) ? \s \+ ( \d + ) , ? ( \d + ) ? \s @ @ / . exec (
179
- line
180
- ) ;
178
+ const normalChunkExec =
179
+ / ^ @ @ \s \- ( \d + ) , ? ( \d + ) ? \s \+ ( \d + ) , ? ( \d + ) ? \s @ @ \s ? ( .+ ) ? / . exec ( line ) ;
181
180
if ( ! normalChunkExec ) {
182
181
const combinedChunkExec =
183
- / ^ @ @ @ \s \- ( \d + ) , ? ( \d + ) ? \s \- ( \d + ) , ? ( \d + ) ? \s \+ ( \d + ) , ? ( \d + ) ? \s @ @ @ / . exec ( line ) ;
182
+ / ^ @ @ @ \s \- ( \d + ) , ? ( \d + ) ? \s \- ( \d + ) , ? ( \d + ) ? \s \+ ( \d + ) , ? ( \d + ) ? \s @ @ @ \s ? ( .+ ) ? / . exec (
183
+ line
184
+ ) ;
184
185
185
186
if ( ! combinedChunkExec ) {
186
187
return null ;
@@ -194,18 +195,22 @@ function parseChunkHeader(ctx: Context) {
194
195
delLinesB ,
195
196
addStart ,
196
197
addLines ,
198
+ context ,
197
199
] = combinedChunkExec ;
198
200
ctx . nextLine ( ) ;
199
201
return {
202
+ context,
200
203
type : 'Combined' ,
201
204
fromFileRangeA : getRange ( delStartA , delLinesA ) ,
202
205
fromFileRangeB : getRange ( delStartB , delLinesB ) ,
203
206
toFileRange : getRange ( addStart , addLines ) ,
204
207
} as const ;
205
208
}
206
- const [ all , delStart , delLines , addStart , addLines ] = normalChunkExec ;
209
+ const [ all , delStart , delLines , addStart , addLines , context ] =
210
+ normalChunkExec ;
207
211
ctx . nextLine ( ) ;
208
212
return {
213
+ context,
209
214
type : 'Normal' ,
210
215
toFileRange : getRange ( addStart , addLines ) ,
211
216
fromFileRange : getRange ( delStart , delLines ) ,
0 commit comments