Finish pipeline when an exception occurs.
[sonitus.git] / src / main / java / net / pterodactylus / sonitus / data / Pipeline.java
index 3ee0c9d..d9efcae 100644 (file)
@@ -255,7 +255,7 @@ public class Pipeline {
 
                @Override
                public void run() {
-                       Metadata firstMetadata = source.metadata();
+                       Metadata firstMetadata = null;
                        while (!stopped.get()) {
                                try {
                                        final Metadata lastMetadata = firstMetadata;
@@ -285,12 +285,15 @@ public class Pipeline {
                                } catch (IOException e) {
                                        /* TODO */
                                        e.printStackTrace();
+                                       break;
                                } catch (InterruptedException e) {
                                        /* TODO */
                                        e.printStackTrace();
+                                       break;
                                } catch (ExecutionException e) {
                                        /* TODO */
                                        e.printStackTrace();
+                                       break;
                                }
                        }
                }