diff --git a/src/Prefs.cpp b/src/Prefs.cpp index 5f4503627e21..bd00bfa7cd4f 100644 --- a/src/Prefs.cpp +++ b/src/Prefs.cpp @@ -219,8 +219,8 @@ Prefs::Prefs(Ntop *_ntop) { ls_proto = NULL; has_cmdl_trace_lvl = false; - dns_servers = new (std::nothrow) ServerConfiguration(); - ntp_servers = new (std::nothrow) ServerConfiguration(); + dns_servers = new (std::nothrow) ServerConfiguration(); + ntp_servers = new (std::nothrow) ServerConfiguration(); dhcp_servers = new (std::nothrow) ServerConfiguration(); smtp_servers = new (std::nothrow) ServerConfiguration(); @@ -316,6 +316,11 @@ Prefs::~Prefs() { if(modbus_allowed_function_codes) ndpi_bitmap_free(modbus_allowed_function_codes); #endif + + if(dns_servers) delete dns_servers; + if(ntp_servers) delete ntp_servers; + if(dhcp_servers) delete dhcp_servers; + if(smtp_servers) delete smtp_servers; } /* ******************************************* */ @@ -3198,4 +3203,4 @@ bool Prefs::isDHCPServer(IpAddress *ip, u_int16_t vlan_id) { bool Prefs::isSMTPServer(IpAddress *ip, u_int16_t vlan_id) { return smtp_servers->findAddress(ip, vlan_id); -} \ No newline at end of file +}