Skip to content

Commit

Permalink
Fixed greedy target bug
Browse files Browse the repository at this point in the history
  • Loading branch information
RunDevelopment committed Jun 8, 2019
1 parent df45b38 commit 57f5751
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 15 deletions.
14 changes: 7 additions & 7 deletions components/prism-core.js
Original file line number Diff line number Diff line change
Expand Up @@ -279,18 +279,18 @@ var _ = {

matchGrammar: function (text, strarr, grammar, index, startPos, oneshot, target) {
for (var token in grammar) {
if(!grammar.hasOwnProperty(token) || !grammar[token]) {
if (!grammar.hasOwnProperty(token) || !grammar[token]) {
continue;
}

if (token == target) {
return;
}

var patterns = grammar[token];
patterns = (_.util.type(patterns) === "Array") ? patterns : [patterns];
patterns = Array.isArray(patterns) ? patterns : [patterns];

for (var j = 0; j < patterns.length; ++j) {
if (target && target == token + ',' + j) {
return;
}

var pattern = patterns[j],
inside = pattern.inside,
lookbehind = !!pattern.lookbehind,
Expand Down Expand Up @@ -394,7 +394,7 @@ var _ = {
Array.prototype.splice.apply(strarr, args);

if (delNum != 1)
_.matchGrammar(text, strarr, grammar, i, pos, true, token);
_.matchGrammar(text, strarr, grammar, i, pos, true, token + ',' + j);

if (oneshot)
break;
Expand Down
2 changes: 1 addition & 1 deletion components/prism-core.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 7 additions & 7 deletions prism.js
Original file line number Diff line number Diff line change
Expand Up @@ -284,18 +284,18 @@ var _ = {

matchGrammar: function (text, strarr, grammar, index, startPos, oneshot, target) {
for (var token in grammar) {
if(!grammar.hasOwnProperty(token) || !grammar[token]) {
if (!grammar.hasOwnProperty(token) || !grammar[token]) {
continue;
}

if (token == target) {
return;
}

var patterns = grammar[token];
patterns = (_.util.type(patterns) === "Array") ? patterns : [patterns];
patterns = Array.isArray(patterns) ? patterns : [patterns];

for (var j = 0; j < patterns.length; ++j) {
if (target && target == token + ',' + j) {
return;
}

var pattern = patterns[j],
inside = pattern.inside,
lookbehind = !!pattern.lookbehind,
Expand Down Expand Up @@ -399,7 +399,7 @@ var _ = {
Array.prototype.splice.apply(strarr, args);

if (delNum != 1)
_.matchGrammar(text, strarr, grammar, i, pos, true, token);
_.matchGrammar(text, strarr, grammar, i, pos, true, token + ',' + j);

if (oneshot)
break;
Expand Down

0 comments on commit 57f5751

Please sign in to comment.