Changeset 276527 in webkit for trunk/Source/JavaScriptCore/yarr/YarrInterpreter.cpp
- Timestamp:
- Apr 23, 2021, 4:06:12 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/yarr/YarrInterpreter.cpp
r274945 r276527 46 46 47 47 struct BackTrackInfoParentheses { 48 uintptr_t begin; 48 49 uintptr_t matchAmount; 49 50 ParenthesesDisjunctionContext* lastContext; … … 1023 1024 ByteDisjunction* disjunctionBody = term.atom.parenthesesDisjunction; 1024 1025 1026 backTrack->begin = input.getPos(); 1025 1027 backTrack->matchAmount = 0; 1026 1028 backTrack->lastContext = nullptr; … … 1176 1178 freeParenthesesDisjunctionContext(context); 1177 1179 1178 if (result != JSRegExpNoMatch || backTrack->matchAmount < term.atom.quantityMinCount) 1180 if (backTrack->matchAmount < term.atom.quantityMinCount) { 1181 while (backTrack->matchAmount) { 1182 context = backTrack->lastContext; 1183 resetMatches(term, context); 1184 popParenthesesDisjunctionContext(backTrack); 1185 freeParenthesesDisjunctionContext(context); 1186 } 1187 1188 input.setPos(backTrack->begin); 1189 return result; 1190 } 1191 1192 if (result != JSRegExpNoMatch) 1179 1193 return result; 1180 1194 }
Note:
See TracChangeset
for help on using the changeset viewer.