File tree Expand file tree Collapse file tree 4 files changed +8
-11
lines changed Expand file tree Collapse file tree 4 files changed +8
-11
lines changed Original file line number Diff line number Diff line change @@ -59,10 +59,7 @@ cWebem::cWebem(
59
59
}
60
60
61
61
cWebem::~cWebem () {
62
- // Delete server
63
- if (myServer) {
64
- delete myServer;
65
- }
62
+ // Delete server (no need with smart pointer)
66
63
}
67
64
68
65
/* *
Original file line number Diff line number Diff line change @@ -226,7 +226,7 @@ namespace http {
226
226
// / store map between pages and application functions
227
227
std::map < std::string, webem_page_function > myPages_w;
228
228
// / boost::asio web server (RK: plain or secure)
229
- server_base* myServer;
229
+ boost::shared_ptr< server_base> myServer;
230
230
// actual theme selected
231
231
std::string m_actTheme;
232
232
// root of url for reverse proxy servers
Original file line number Diff line number Diff line change @@ -211,18 +211,18 @@ std::string ssl_server::get_passphrase() const {
211
211
}
212
212
#endif
213
213
214
- server_base * server_factory::create (const server_settings & settings, request_handler & user_request_handler) {
214
+ boost::shared_ptr< server_base> server_factory::create (const server_settings & settings, request_handler & user_request_handler) {
215
215
#ifdef WWW_ENABLE_SSL
216
216
if (settings.is_secure ()) {
217
217
return create (dynamic_cast <ssl_server_settings const &>(settings), user_request_handler);
218
218
}
219
219
#endif
220
- return new server (settings, user_request_handler);
220
+ return boost::shared_ptr<server_base>( new server (settings, user_request_handler) );
221
221
}
222
222
223
223
#ifdef WWW_ENABLE_SSL
224
- server_base * server_factory::create (const ssl_server_settings & ssl_settings, request_handler & user_request_handler) {
225
- return new ssl_server (ssl_settings, user_request_handler);
224
+ boost::shared_ptr< server_base> server_factory::create (const ssl_server_settings & ssl_settings, request_handler & user_request_handler) {
225
+ return boost::shared_ptr<server_base>( new ssl_server (ssl_settings, user_request_handler) );
226
226
}
227
227
#endif
228
228
Original file line number Diff line number Diff line change @@ -119,10 +119,10 @@ class ssl_server : public server_base {
119
119
// / server factory
120
120
class server_factory {
121
121
public:
122
- static server_base * create (const server_settings & settings, request_handler & user_request_handler);
122
+ static boost::shared_ptr< server_base> create (const server_settings & settings, request_handler & user_request_handler);
123
123
124
124
#ifdef WWW_ENABLE_SSL
125
- static server_base * create (const ssl_server_settings & ssl_settings, request_handler & user_request_handler);
125
+ static boost::shared_ptr< server_base> create (const ssl_server_settings & ssl_settings, request_handler & user_request_handler);
126
126
#endif
127
127
};
128
128
You can’t perform that action at this time.
0 commit comments