My favorites | Sign in
Project Home Downloads
READ-ONLY: This project has been archived. For more information see this post.
Search
for
  Advanced search   Search tips   Subscriptions

Issue 252 attachment: patch.diff (1.4 KB)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Index: jquery.dynatree.js
===================================================================
--- jquery.dynatree.js (revision 533)
+++ jquery.dynatree.js (working copy)
@@ -17,8 +17,7 @@
@depends: jquery.cookie.js
*************************************************************************/

-// Note: We currently allow eval() to parse the 'data' attribtes, when initializing from HTML.
-/*jslint laxbreak: true, browser: true, evil: true, indent: 0, white: false, onevar: false */
+/*jslint laxbreak: true, browser: true, indent: 0, white: false, onevar: false */

/*************************************************************************
* Debug functions
@@ -2507,9 +2506,14 @@
dataAttr = "{" + dataAttr + "}";
}
try {
- $.extend(data, eval("(" + dataAttr + ")"));
+ var dataObj = jQuery.parseJson(dataAttr);
+ logMsg("data-attr: %o", dataObj);
+ $.extend(data, dataObj);
+// $.extend(data, eval("(" + dataAttr + ")"));
} catch(e) {
- throw ("Error parsing node data: " + e + "\ndata:\n'" + dataAttr + "'");
+ throw ("Error parsing node data: '" + dataAttr + "':\n"
+ + e + "\nNote: starting with v1.2.1 dynatree requires valid JSON for `data` attributes: make sure to use double quotes! (See http://json.org/).");
+// throw ("Error parsing node data: " + e + "\ndata:\n'" + dataAttr + "'");
}
}
}
Powered by Google Project Hosting