aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/control_interface.cpp3
-rw-r--r--src/wandad.cpp10
2 files changed, 10 insertions, 3 deletions
diff --git a/src/control_interface.cpp b/src/control_interface.cpp
index 85d1dca..caeb6da 100644
--- a/src/control_interface.cpp
+++ b/src/control_interface.cpp
@@ -121,8 +121,9 @@ control_interface::pointer make_interface(boost::asio::io_service &service, std:
{
if (std::filesystem::exists(file))
{
- std::filesystem::remove(file);
+ return {};
}
+
control_interface::protocol::endpoint endpoint{file.string()};
return std::make_shared<control_interface>(control_interface::key{}, service, std::move(endpoint));
}
diff --git a/src/wandad.cpp b/src/wandad.cpp
index 04f3394..beb9040 100644
--- a/src/wandad.cpp
+++ b/src/wandad.cpp
@@ -45,9 +45,15 @@ int main()
std::clog << "[wandad::main] Initializing control interface on socket '" << socket_path.native() << "'\n";
auto interface = wanda::make_interface(service, socket_path);
- auto status = interface->start();
- if (status)
+ if(!interface)
+ {
+ std::cerr << "[wandad::main] Failed to initialize control interface on socket '" << socket_path.native() << "'\n"
+ << "[wandad::main] File already existed. Is 'wandad' running already?\n";
+ return;
+ }
+
+ if (interface->start())
{
return;
}