mirror of
https://github.com/simon987/Much-Assembly-Required.git
synced 2025-04-19 02:36:41 +00:00
Fixes #169
This commit is contained in:
parent
3776070689
commit
6c7a2f0a73
@ -129,7 +129,6 @@ public class Factory extends Structure implements Updatable {
|
|||||||
return dbObject;
|
return dbObject;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
ArrayList<NonPlayerCharacter> getNpcs() {
|
ArrayList<NonPlayerCharacter> getNpcs() {
|
||||||
return npcs;
|
return npcs;
|
||||||
}
|
}
|
||||||
|
@ -140,7 +140,7 @@ public class Assembler {
|
|||||||
try {
|
try {
|
||||||
|
|
||||||
//Special thanks to https://stackoverflow.com/questions/1757065/
|
//Special thanks to https://stackoverflow.com/questions/1757065/
|
||||||
String[] values = line.substring(2, line.length()).split(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)", -1);
|
String[] values = line.substring(2).split(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)", -1);
|
||||||
|
|
||||||
for (String value : values) {
|
for (String value : values) {
|
||||||
|
|
||||||
|
18
Server/src/main/resources/static/js/editor.js
vendored
18
Server/src/main/resources/static/js/editor.js
vendored
@ -4,6 +4,8 @@ OPERAND_MEM_IMM = 1;
|
|||||||
OPERAND_MEM_REG = 2;
|
OPERAND_MEM_REG = 2;
|
||||||
OPERAND_IMM = 3;
|
OPERAND_IMM = 3;
|
||||||
|
|
||||||
|
MALFORMED_UTF16_RE = /\\u[0-9a-fA-F]{0,3}([^0-9a-fA-F]|$)/;
|
||||||
|
|
||||||
//Remove default syntax checker
|
//Remove default syntax checker
|
||||||
editor = ace.edit("editor");
|
editor = ace.edit("editor");
|
||||||
editor.session.setOption("useWorker", false);
|
editor.session.setOption("useWorker", false);
|
||||||
@ -117,13 +119,11 @@ function checkForORGInstruction(line, result, currentLine) {
|
|||||||
function parseDWInstruction(line, result, currentLine) {
|
function parseDWInstruction(line, result, currentLine) {
|
||||||
line = line.trim();
|
line = line.trim();
|
||||||
|
|
||||||
|
|
||||||
if (line.substr(0, 2).toLowerCase() === "dw") {
|
if (line.substr(0, 2).toLowerCase() === "dw") {
|
||||||
|
|
||||||
|
|
||||||
var values = line.substr(2, line.length).split(/,(?=(?:[^"]*"[^"]*")*[^"]*$)/, -1);
|
var values = line.substr(2, line.length).split(/,(?=(?:[^"]*"[^"]*")*[^"]*$)/, -1);
|
||||||
|
|
||||||
|
|
||||||
for (var i = 0; i < values.length; i++) {
|
for (var i = 0; i < values.length; i++) {
|
||||||
|
|
||||||
values[i] = values[i].trim();
|
values[i] = values[i].trim();
|
||||||
@ -137,6 +137,20 @@ function parseDWInstruction(line, result, currentLine) {
|
|||||||
|
|
||||||
} else if (values[i].startsWith("\"") && values[i].endsWith("\"")) {
|
} else if (values[i].startsWith("\"") && values[i].endsWith("\"")) {
|
||||||
//Handle string
|
//Handle string
|
||||||
|
var strText = values[i].substr(1, values[i].length - 2);
|
||||||
|
|
||||||
|
if (strText.match(MALFORMED_UTF16_RE) != null) {
|
||||||
|
|
||||||
|
result.annotations.push({
|
||||||
|
row: currentLine,
|
||||||
|
column: 0,
|
||||||
|
text: "Malformed UTF-16 escape sequence",
|
||||||
|
type: "error"
|
||||||
|
});
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
//TODO: verify other escape sequences
|
||||||
|
|
||||||
} else if (getOperandType(values[i], result) === OPERAND_IMM) {
|
} else if (getOperandType(values[i], result) === OPERAND_IMM) {
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user