Language: JavaScript
Label: vulnerable
CWE: CWE-400 \u2014 Uncontrolled Resource Consumption
The product does not properly control the allocation and maintenance of a limited resource, thereby enabling an actor to influence the amount of resources consumed, eventually leading to the exhaustion of available resources.

Code:
FilenameDialog.createFileTypes=function(a,c,f){var e=document.createElement("select");for(a=0;a<f.length;a++){var g=document.createElement("option");g.setAttribute("value",a);mxUtils.write(g,mxResources.get(f[a].description)+" (."+f[a].extension+")");e.appendChild(g)}mxEvent.addListener(e,"change",function(d){d=f[e.value].extension;var k=c.value.lastIndexOf(".drawio.");k=0<k?k:c.value.lastIndexOf(".");"drawio"!=d&&(d="drawio."+d);c.value=0<k?c.value.substring(0,k+1)+d:c.value+"."+d;"createEvent"in
document?(d=document.createEvent("HTMLEvents"),d.initEvent("change",!1,!0),c.dispatchEvent(d)):c.fireEvent("onchange")});a=function(d){d=c.value.toLowerCase();for(var k=0,n=0;n<f.length;n++){var u=f[n].extension,m=null;"drawio"!=u&&(m=u,u=".drawio."+u);if(d.substring(d.length-u.length-1)=="."+u||null!=m&&d.substring(d.length-m.length-1)=="."+m){k=n;break}}e.value=k};mxEvent.addListener(c,"change",a);mxEvent.addListener(c,"keyup",a);a();return e};