-rw-r--r-- | src/eyefiworker.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/eyefiworker.cc b/src/eyefiworker.cc index 1979b46..645069e 100644 --- a/src/eyefiworker.cc +++ b/src/eyefiworker.cc | |||
@@ -21,32 +21,32 @@ | |||
21 | eyefiworker::eyefiworker() | 21 | eyefiworker::eyefiworker() |
22 | : eyefiService(SOAP_IO_STORE|SOAP_IO_KEEPALIVE) { | 22 | : eyefiService(SOAP_IO_STORE|SOAP_IO_KEEPALIVE) { |
23 | bind_flags = SO_REUSEADDR; max_keep_alive = 0; | 23 | bind_flags = SO_REUSEADDR; max_keep_alive = 0; |
24 | socket_flags = | 24 | socket_flags = |
25 | #if defined(MSG_NOSIGNAL) | 25 | #if defined(MSG_NOSIGNAL) |
26 | MSG_NOSIGNAL | 26 | MSG_NOSIGNAL |
27 | #elif defined(SO_NOSIGPIPE) | 27 | #elif defined(SO_NOSIGPIPE) |
28 | SO_NOSIGPIPE | 28 | SO_NOSIGPIPE |
29 | #else | 29 | #else |
30 | #error Something is wrong with sigpipe prevention on the platform | 30 | #error Something is wrong with sigpipe prevention on the platform |
31 | #endif | 31 | #endif |
32 | ; | 32 | ; |
33 | #ifdef HAVE_SQLITE | ||
34 | sqlite3_initialize(); | ||
35 | #endif | ||
33 | } | 36 | } |
34 | eyefiworker::~eyefiworker() { | 37 | eyefiworker::~eyefiworker() { |
35 | } | 38 | } |
36 | 39 | ||
37 | int eyefiworker::run(int bindport) { | 40 | int eyefiworker::run(int bindport) { |
38 | #ifdef HAVE_SQLITE | ||
39 | sqlite3_initialize(); | ||
40 | #endif | ||
41 | if(!soap_valid_socket(bind(0,bindport,64))) | 41 | if(!soap_valid_socket(bind(0,bindport,64))) |
42 | throw std::runtime_error("failed to bind()"); | 42 | throw std::runtime_error("failed to bind()"); |
43 | signal(SIGCHLD,SIG_IGN); | 43 | signal(SIGCHLD,SIG_IGN); |
44 | while(true) { | 44 | while(true) { |
45 | if(!soap_valid_socket(accept())) | 45 | if(!soap_valid_socket(accept())) |
46 | throw std::runtime_error("failed to accept()"); | 46 | throw std::runtime_error("failed to accept()"); |
47 | pid_t p = fork(); | 47 | pid_t p = fork(); |
48 | if(p<0) throw std::runtime_error("failed to fork()"); | 48 | if(p<0) throw std::runtime_error("failed to fork()"); |
49 | if(!p) { | 49 | if(!p) { |
50 | recv_timeout = 600; send_timeout = 120; | 50 | recv_timeout = 600; send_timeout = 120; |
51 | (void)serve(); | 51 | (void)serve(); |
52 | soap_destroy(this); soap_end(this); soap_done(this); | 52 | soap_destroy(this); soap_end(this); soap_done(this); |