Language: JavaScript
Label: vulnerable
CWE: CWE-78 \u2014 Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
The product constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component.

Code:
EditorUi.prototype.updateTabContainer=function(){if(null!=this.tabContainer&&null!=this.pages){var b=this.editor.graph,e=document.createElement("div");e.className="geTabScroller";for(var g=null,p=0;p<this.pages.length;p++)mxUtils.bind(this,function(y,q){q.className=this.pages[y]==this.currentPage?"geTab gePageTab geActivePage":"geTab gePageTab geInactivePage";q.setAttribute("draggable","true");mxEvent.addListener(q,"dragstart",mxUtils.bind(this,function(E){b.isEnabled()?(mxClient.IS_FF&&E.dataTransfer.setData("Text",
"<diagram/>"),g=y):mxEvent.consume(E)}));mxEvent.addListener(q,"dragend",mxUtils.bind(this,function(E){g=null;E.stopPropagation();E.preventDefault()}));mxEvent.addListener(q,"dragover",mxUtils.bind(this,function(E){null!=g&&(E.dataTransfer.dropEffect="move");E.stopPropagation();E.preventDefault()}));mxEvent.addListener(q,"drop",mxUtils.bind(this,function(E){null!=g&&y!=g&&this.movePage(g,y);E.stopPropagation();E.preventDefault()}));e.appendChild(q)})(p,this.createTabForPage(this.pages[p],p+1));p=
null!=this.tabScroller?this.tabScroller.scrollLeft:0;this.tabContainer.innerText="";"simple"!=Editor.currentTheme&&(this.pageMenuTab=this.createPageMenuTab(),this.tabContainer.appendChild(this.pageMenuTab));this.tabContainer.appendChild(e);this.isPageInsertTabVisible()&&this.tabContainer.appendChild(this.createPageInsertTab());this.leftScrollTab=this.createLeftScrollTab();this.tabContainer.appendChild(this.leftScrollTab);this.rightScrollTab=this.createRightScrollTab();this.tabContainer.appendChild(this.rightScrollTab);
this.tabScroller=e;this.tabScroller.scrollLeft=p;this.checkTabScrollerOverflow();mxEvent.addListener(this.tabScroller,"scroll",mxUtils.bind(this,function(y){this.checkTabScrollerOverflow()}));window.setTimeout(mxUtils.bind(this,function(){mxUtils.setPrefixedStyle(this.leftScrollTab.style,"transition","all 0.2s linear");mxUtils.setPrefixedStyle(this.rightScrollTab.style,"transition","all 0.2s linear")}),0)}};