Просмотр исходного кода

Ensure input stream is closed when reading C++ files.

Timur Sağlam 4 лет назад
Родитель
Сommit
06c54c825e
1 измененных файлов с 3 добавлено и 4 удалено
  1. 3 4
      jplag.frontend.cpp/src/main/javacc/CPP.jj

+ 3 - 4
jplag.frontend.cpp/src/main/javacc/CPP.jj

@@ -16,7 +16,7 @@ package de.jplag.cpp;
 
 import java.io.File;
 import java.io.FileInputStream;
-import java.io.FileNotFoundException;
+import java.io.IOException;
 import java.io.InputStream;
 
 public class CPPScanner implements CPPTokenConstants {
@@ -24,11 +24,10 @@ public class CPPScanner implements CPPTokenConstants {
 
     public static boolean scanFile(File dir, String fileName, Scanner delegatingScanner) {
         CPPScanner scanner;
-        try {
-            InputStream input = new NewlineStream(new FileInputStream(new File(dir, fileName)));
+        try(InputStream input = new NewlineStream(new FileInputStream(new File(dir, fileName)))) {
             scanner = new CPPScanner(input, "UTF-8");
             scanner.delegatingScanner = delegatingScanner;
-        } catch (FileNotFoundException e) {
+        } catch (IOException e) {
             System.out.println("C/C++ Scanner: File " + fileName + " not found.");
             return false;
         }