close stream in finally block
diff --git a/core/plugins/org.eclipse.dltk.core/search/org/eclipse/dltk/internal/core/structure/StructureIndexer.java b/core/plugins/org.eclipse.dltk.core/search/org/eclipse/dltk/internal/core/structure/StructureIndexer.java
index 2e6e0cd..88e0b7f 100644
--- a/core/plugins/org.eclipse.dltk.core/search/org/eclipse/dltk/internal/core/structure/StructureIndexer.java
+++ b/core/plugins/org.eclipse.dltk.core/search/org/eclipse/dltk/internal/core/structure/StructureIndexer.java
@@ -137,12 +137,19 @@
 							stream, requestor);
 					processor.perform();
 					performed = true;
-					stream.close();
 				} catch (IOException e) {
 					performed = false;
 					if (DLTKCore.DEBUG) {
 						e.printStackTrace();
 					}
+				} finally {
+					try {
+						stream.close();
+					} catch (IOException e) {
+						if (DLTKCore.DEBUG) {
+							e.printStackTrace();
+						}
+					}
 				}
 			}
 		}