X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FServerSocket.cpp;h=fd903ce18fa4f69898da1516ae4d2acb5b2b2602;hb=62af7ee772f16f154225d2d0b65d77f4376b6001;hp=3535ee4560a94c309ebed3ab80ff58a41f72d9c3;hpb=4a439d6ac0c8bf3a7de6f0172e14ae964a12733b;p=lyx.git diff --git a/src/ServerSocket.cpp b/src/ServerSocket.cpp index 3535ee4560..fd903ce18f 100644 --- a/src/ServerSocket.cpp +++ b/src/ServerSocket.cpp @@ -26,17 +26,23 @@ #include "support/debug.h" #include "support/environment.h" #include "support/FileName.h" +#include "support/lassert.h" #include "support/socktools.h" -#include "support/bind.h" +#include #include +#include #include #if defined (_WIN32) # include #endif +#ifdef HAVE_UNISTD_H +# include +#endif + using namespace std; using namespace lyx::support; @@ -110,8 +116,7 @@ void ServerSocket::serverCallback() } // Register the new client. - clients[client_fd] = - shared_ptr(new LyXDataSocket(client_fd)); + clients[client_fd] = make_shared(client_fd); theApp()->registerSocketCallback( client_fd, bind(&ServerSocket::dataCallback, @@ -129,11 +134,11 @@ void ServerSocket::dataCallback(int fd) return; shared_ptr client = it->second; string line; - size_t pos; bool saidbye = false; while (!saidbye && client->readln(line)) { // The protocol must be programmed here // Split the key and the data + size_t pos; if ((pos = line.find(':')) == string::npos) { client->writeln("ERROR:" + line + ":malformed message"); continue;