]> git.sesse.net Git - cubemap/blobdiff - main.cpp
Split config parsing out of parse.h.
[cubemap] / main.cpp
index 03ef0d7aaa5ef587cd2547be0b07b38abe0f7183..d77fb2e357cfbdc2f41c2abfcc3a90e3e5b31695 100644 (file)
--- a/main.cpp
+++ b/main.cpp
@@ -215,7 +215,7 @@ vector<Acceptor *> create_acceptors(
                        acceptor = deserialized_acceptor_it->second;
                        deserialized_acceptors->erase(deserialized_acceptor_it);
                } else {
-                       int server_sock = create_server_socket(port);
+                       int server_sock = create_server_socket(port, TCP_SOCKET);
                        acceptor = new Acceptor(server_sock, port);
                }
                acceptor->run();
@@ -262,6 +262,7 @@ vector<Input *> create_inputs(const vector<ConfigLine> &config,
                        if (input->get_url() != src) {
                                fprintf(stderr, "INFO: Stream '%s' has changed URL from '%s' to '%s', restarting input.\n",
                                        stream_id.c_str(), input->get_url().c_str(), src.c_str());
+                               input->close_socket();
                                delete input;
                                input = NULL;
                        }
@@ -269,6 +270,11 @@ vector<Input *> create_inputs(const vector<ConfigLine> &config,
                }
                if (input == NULL) {
                        input = create_input(stream_id, src);
+                       if (input == NULL) {
+                               fprintf(stderr, "ERROR: did not understand URL '%s', clients will not get any data.\n",
+                                       src.c_str());
+                               continue;
+                       }
                }
                input->run();
                inputs.push_back(input);