Don't use \xYY for identifiers

Fix #173
This commit is contained in:
Mihai Bazon
2013-03-31 13:35:29 +03:00
parent 81f5efe39a
commit a869b854fa

View File

@@ -69,10 +69,10 @@ function OutputStream(options) {
var current_pos = 0; var current_pos = 0;
var OUTPUT = ""; var OUTPUT = "";
function to_ascii(str) { function to_ascii(str, identifier) {
return str.replace(/[\u0080-\uffff]/g, function(ch) { return str.replace(/[\u0080-\uffff]/g, function(ch) {
var code = ch.charCodeAt(0).toString(16); var code = ch.charCodeAt(0).toString(16);
if (code.length <= 2) { if (code.length <= 2 && !identifier) {
while (code.length < 2) code = "0" + code; while (code.length < 2) code = "0" + code;
return "\\x" + code; return "\\x" + code;
} else { } else {
@@ -114,7 +114,7 @@ function OutputStream(options) {
function make_name(name) { function make_name(name) {
name = name.toString(); name = name.toString();
if (options.ascii_only) if (options.ascii_only)
name = to_ascii(name); name = to_ascii(name, true);
return name; return name;
}; };