Revision 44592 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/DefaultExpressionEvaluatorManager.java

View differences:

DefaultExpressionEvaluatorManager.java
361 361

  
362 362
    }
363 363

  
364
    private static final Pattern RE_LANG = Pattern.compile(".*lang[:]\\s*([a-zA-Z_][a-zA-Z_0-9]*)");
365
    private static final Pattern RE_ENCODING = Pattern.compile(".*encoding[:]\\s*([a-zA-Z_][a-zA-Z_0-9]*)");
364
    private static final Pattern RE_LANG = Pattern.compile(".*lang[:]\\s*([a-zA-Z_][a-zA-Z_0-9_]*).*");
365
    private static final Pattern RE_ENCODING = Pattern.compile(".*encoding[:]\\s*([a-zA-Z_][a-zA-Z0-9_-]*).*");
366 366
    
367 367
    private Script loadScript(ResourcesStorage.Resource res, String name) {
368 368
        try {
......
376 376
            if( StringUtils.isEmpty(head) ) {
377 377
                return null;
378 378
            }
379
            head = StringUtils.split("\n")[0];
379
            head = StringUtils.split(head, "\n")[0];
380 380
            
381 381
            String lang = "cosa";
382 382
            String encoding = null;
383 383
            Matcher m = RE_LANG.matcher(head);
384
            if( m.groupCount()==1 ) {
384
            if( m!=null && m.matches() && m.groupCount()==1 ) {
385 385
                String s = m.group(1);
386 386
                if( !StringUtils.isBlank(s) ) {
387 387
                    lang = s;
388 388
                }
389 389
            }
390 390
            m = RE_ENCODING.matcher(head);
391
            if( m.groupCount()==1 ) {
391
            if( m!=null && m.matches() && m.groupCount()==1 ) {
392 392
                String s = m.group(1);
393 393
                if( !StringUtils.isBlank(s) ) {
394 394
                    encoding = s;

Also available in: Unified diff