Commit f2f399dc authored by John Resig's avatar John Resig

Fixed use of eval() and new Function() to work within the correct scope (and not throw errors).

parent fc3e1804
...@@ -1857,7 +1857,7 @@ jQuery.extend({ ...@@ -1857,7 +1857,7 @@ jQuery.extend({
// If a string is passed in for the function, make a function // If a string is passed in for the function, make a function
// for it (a handy shortcut) // for it (a handy shortcut)
if ( typeof fn == "string" ) if ( typeof fn == "string" )
fn = eval("function(a,i){return " + fn + "}"); fn = eval("false||function(a,i){return " + fn + "}");
var result = []; var result = [];
...@@ -1911,7 +1911,7 @@ jQuery.extend({ ...@@ -1911,7 +1911,7 @@ jQuery.extend({
// If a string is passed in for the function, make a function // If a string is passed in for the function, make a function
// for it (a handy shortcut) // for it (a handy shortcut)
if ( typeof fn == "string" ) if ( typeof fn == "string" )
fn = eval("function(a){return " + fn + "}"); fn = eval("false||function(a){return " + fn + "}");
var result = []; var result = [];
......
...@@ -405,7 +405,7 @@ jQuery.extend({ ...@@ -405,7 +405,7 @@ jQuery.extend({
f = jQuery.expr[m[1]][m[2]]; f = jQuery.expr[m[1]][m[2]];
// Build a custom macro to enclose it // Build a custom macro to enclose it
eval("f = function(a,i){return " + f + "}"); f = eval("false||function(a,i){return " + f + "}");
// Execute it against the current filter // Execute it against the current filter
r = jQuery.grep( r, f, not ); r = jQuery.grep( r, f, not );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment