Language: JavaScript
Label: vulnerable
CWE: CWE-79 \u2014 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.

Code:
d&&1<d.length){var f=d.indexOf("#");0<=f&&(d=d.substring(0,f))}return d};EditorUi.prototype.getHashObject=function(){var d=window.location.hash,f={};if(null!=d&&0<d.length){var l=d.lastIndexOf("#");if(0<l){d=decodeURIComponent(d.substring(l+1));try{f=JSON.parse(d)}catch(u){}}}return f};EditorUi.prototype.updateHashObject=function(){if(null!=this.currentFile&&""!=this.currentFile.getHash()&&null!=this.currentPage&&0<this.getSelectedPageIndex()){var d=this.getHashObject();d.pageId=this.currentPage.getId();
this.setHashObject(d)}else this.setHashObject(null)};EditorUi.prototype.setHashObject=function(d){if(Editor.enableHashObjects){var f=window.location.hash;if(null==f||""==f)f="#";var l=f.lastIndexOf("#");0<l&&(f=f.substring(0,l));try{null==d||mxUtils.isEmptyObject(d)||(f=f+"#"+encodeURIComponent(JSON.stringify(d)))}catch(u){}window.location.hash=f}};EditorUi.prototype.loadDescriptor=function(d,f,l){var u=window.location.hash,A=mxUtils.bind(this,function(F){var M=null!=d.data?d.data:"";null!=F&&0<F.length&&