Program: 72595
Project: 72595
Buggy source:
private static void _loadSemanticFiles(StringBuffer buffer,boolean inline) throws IllegalActionException {
  if (inline) {
    ClassLoader loader=RTMaudeUtility.class.getClassLoader();
    InputStream stream=loader.getResourceAsStream(SEMANTIC_FILE_PATH + "String_Node_Str");
    BufferedReader reader=null;
    Stack<BufferedReader> readerStack=null;
    try {
      reader=new BufferedReader(new InputStreamReader(stream));
      readerStack=new Stack<BufferedReader>();
      readerStack.push(null);
      while (!readerStack.isEmpty()) {
        try {
          String line=reader.readLine();
          boolean skip=false;
          while (line != null) {
            String trim=line.trim();
            if (trim.startsWith("String_Node_Str")) {
              trim=trim.substring(5).trim();
              stream=loader.getResourceAsStream(SEMANTIC_FILE_PATH + "String_Node_Str" + trim+ "String_Node_Str");
              if (stream != null) {
                readerStack.push(reader);
                reader=new BufferedReader(new InputStreamReader(stream));
                skip=true;
              }
            }
            if (skip) {
              skip=false;
            }
 else {
              buffer.append(line);
              buffer.append("String_Node_Str");
            }
            line=reader.readLine();
          }
        }
 catch (        IOException e) {
          throw new IllegalActionException("String_Node_Str");
        }
 finally {
          try {
            if (reader != null) {
              reader.close();
              reader=null;
            }
          }
 catch (          IOException e) {
            throw new IllegalActionException("String_Node_Str" + reader);
          }
        }
        reader=readerStack.pop();
      }
    }
  finally {
      if (reader != null) {
        try {
          reader.close();
        }
 catch (        IOException ex) {
          throw new IllegalActionException("String_Node_Str" + reader);
        }
      }
      if (readerStack != null) {
        while (!readerStack.isEmpty()) {
          reader=readerStack.pop();
          if (reader != null) {
            try {
              reader.close();
            }
 catch (            IOException ex) {
              throw new IllegalActionException("String_Node_Str" + reader);
            }
          }
        }
      }
    }
  }
 else {
    buffer.append("String_Node_Str");
  }
}

Fixed version (ground truth):
private static void _loadSemanticFiles(StringBuffer buffer,boolean inline) throws IllegalActionException {
  if (inline) {
    ClassLoader loader=RTMaudeUtility.class.getClassLoader();
    InputStream stream=loader.getResourceAsStream(SEMANTIC_FILE_PATH + "String_Node_Str");
    BufferedReader reader=null;
    Stack<BufferedReader> readerStack=null;
    try {
      reader=new BufferedReader(new InputStreamReader(stream,java.nio.charset.Charset.defaultCharset()));
      readerStack=new Stack<BufferedReader>();
      readerStack.push(null);
      while (!readerStack.isEmpty()) {
        try {
          String line=reader.readLine();
          boolean skip=false;
          while (line != null) {
            String trim=line.trim();
            if (trim.startsWith("String_Node_Str")) {
              trim=trim.substring(5).trim();
              stream=loader.getResourceAsStream(SEMANTIC_FILE_PATH + "String_Node_Str" + trim+ "String_Node_Str");
              if (stream != null) {
                readerStack.push(reader);
                reader=new BufferedReader(new InputStreamReader(stream,java.nio.charset.Charset.defaultCharset()));
                skip=true;
              }
            }
            if (skip) {
              skip=false;
            }
 else {
              buffer.append(line);
              buffer.append("String_Node_Str");
            }
            line=reader.readLine();
          }
        }
 catch (        IOException e) {
          throw new IllegalActionException("String_Node_Str");
        }
 finally {
          try {
            if (reader != null) {
              reader.close();
              reader=null;
            }
          }
 catch (          IOException e) {
            throw new IllegalActionException("String_Node_Str" + reader);
          }
        }
        reader=readerStack.pop();
      }
    }
  finally {
      if (reader != null) {
        try {
          reader.close();
        }
 catch (        IOException ex) {
          throw new IllegalActionException("String_Node_Str" + reader);
        }
      }
      if (readerStack != null) {
        while (!readerStack.isEmpty()) {
          reader=readerStack.pop();
          if (reader != null) {
            try {
              reader.close();
            }
 catch (            IOException ex) {
              throw new IllegalActionException("String_Node_Str" + reader);
            }
          }
        }
      }
    }
  }
 else {
    buffer.append("String_Node_Str");
  }
}