fix(code-uri): Chrome iframe error with XSS Auditor

- remove solution from URI when read
- remove querify solution upon edit or reset
This commit is contained in:
Mrugesh Mohapatra
2017-05-27 00:24:16 +05:30
parent 8fe1a5d5a9
commit 338ef4ce5f
3 changed files with 15 additions and 2 deletions

View File

@ -134,6 +134,20 @@ window.common = (function(global) {
(location.search || location.hash).replace(queryRegex, ''),
'run'
);
},
removeCodeUri: function(location, history) {
if (
typeof location.href.split !== 'function' ||
typeof history.replaceState !== 'function'
) {
return false;
}
history.replaceState(
history.state,
null,
location.href.split('#')[0]
);
return true;
}
};

View File

@ -103,6 +103,7 @@ window.common = (function(global) {
let editorValue;
if (common.codeUri.isAlive()) {
editorValue = common.codeUri.parse();
common.codeUri.removeCodeUri(location, window.history);
} else {
editorValue = common.codeStorage.isAlive(common.challengeName) ?
common.codeStorage.getStoredValue(common.challengeName) :

View File

@ -24,7 +24,6 @@ $(document).ready(function() {
code$.subscribe(
code => {
common.codeStorage.updateStorage(common.challengeName, code);
common.codeUri.querify(code);
},
err => console.error(err)
);
@ -72,7 +71,6 @@ $(document).ready(function() {
return common.updateOutputDisplay('' + err);
}
common.codeStorage.updateStorage(challengeName, originalCode);
common.codeUri.querify(originalCode);
common.displayTestResults(tests, true);
common.updateOutputDisplay(output);
return null;