Select statements that contains CASE statements don't execute
authorSubhashini Sooriarachchi <subslk@netbeans.org>
Tue, 30 Apr 2013 09:24:47 +0530
changeset 387ffa00130cfc3
parent 386 1774dada7c53
child 388 c868c6ad73a4
Select statements that contains CASE statements don't execute
PLSQL/Lexer/src/org/netbeans/modules/plsql/lexer/PlsqlBlockFactory.java
     1.1 --- a/PLSQL/Lexer/src/org/netbeans/modules/plsql/lexer/PlsqlBlockFactory.java	Fri Apr 26 08:33:26 2013 +0200
     1.2 +++ b/PLSQL/Lexer/src/org/netbeans/modules/plsql/lexer/PlsqlBlockFactory.java	Tue Apr 30 09:24:47 2013 +0530
     1.3 @@ -393,7 +393,7 @@
     1.4          boolean getName = true;
     1.5          Token<PlsqlTokenId> customStartToken = null;
     1.6          String name = current.text().toString();
     1.7 -
     1.8 +        boolean endBlock = false;
     1.9          while (moveNext) {
    1.10              String image = token.text().toString();
    1.11              PlsqlTokenId tokenID = token.id();
    1.12 @@ -405,6 +405,7 @@
    1.13              if (image.equals(";") || (image.equals("/") && checkForOnlyChar(ts, ts.offset()))) {
    1.14                  block = new PlsqlBlock(stmtBegin.offset(tokenHierarchy), token.offset(tokenHierarchy), name.trim(), "", PlsqlBlockType.STATEMENT);
    1.15                  checkPrefix(stmtBegin.offset(tokenHierarchy), ts, block);
    1.16 +                endBlock = true;
    1.17                  break;
    1.18              } else if (image.equalsIgnoreCase("CREATE")
    1.19                      || image.equalsIgnoreCase("DECLARE")
    1.20 @@ -471,6 +472,11 @@
    1.21              moveNext = ts.moveNext();
    1.22              token = ts.token();
    1.23          }
    1.24 +        
    1.25 +        if(!endBlock){
    1.26 +            block = new PlsqlBlock(stmtBegin.offset(tokenHierarchy), token.offset(tokenHierarchy), name.trim(), "", PlsqlBlockType.STATEMENT);
    1.27 +            checkPrefix(stmtBegin.offset(tokenHierarchy), ts, block);
    1.28 +        }
    1.29  
    1.30          if (block != null) {
    1.31              //add children