aboutsummaryrefslogtreecommitdiffstats
path: root/src/kvilib/ext/KviProxyDataBase.cpp
diff options
context:
space:
mode:
authorGravatar staticfox2016-08-06 21:08:24 -0400
committerGravatar staticfox2016-08-07 23:12:47 -0400
commit2ceba3c866356522ab72ef0e9bea363e7b801385 (patch)
tree351640564483aa0da9635f2766c2e41a70d37067 /src/kvilib/ext/KviProxyDataBase.cpp
parentKviIrcConnectionAsyncData: Move to std::set (diff)
downloadKVIrc-2ceba3c866356522ab72ef0e9bea363e7b801385.tar.gz
KVIrc-2ceba3c866356522ab72ef0e9bea363e7b801385.tar.bz2
KVIrc-2ceba3c866356522ab72ef0e9bea363e7b801385.zip
KviProxyDatabase: Move to vector and unique pointers
Diffstat (limited to 'src/kvilib/ext/KviProxyDataBase.cpp')
-rw-r--r--src/kvilib/ext/KviProxyDataBase.cpp40
1 files changed, 13 insertions, 27 deletions
diff --git a/src/kvilib/ext/KviProxyDataBase.cpp b/src/kvilib/ext/KviProxyDataBase.cpp
index 2fed69f3b..419b42d4a 100644
--- a/src/kvilib/ext/KviProxyDataBase.cpp
+++ b/src/kvilib/ext/KviProxyDataBase.cpp
@@ -26,21 +26,9 @@
#include "KviConfigurationFile.h"
#include "KviProxy.h"
-KviProxyDataBase::KviProxyDataBase()
-{
- m_pProxyList = new KviPointerList<KviProxy>;
- m_pProxyList->setAutoDelete(true);
- m_pCurrentProxy = nullptr;
-}
-
-KviProxyDataBase::~KviProxyDataBase()
-{
- delete m_pProxyList;
-}
-
void KviProxyDataBase::updateProxyIp(const char * proxy, const char * ip)
{
- for(KviProxy * prx = m_pProxyList->first(); prx; prx = m_pProxyList->next())
+ for(auto & prx : m_pProxyList)
{
if(QString::compare(proxy, prx->m_szHostname, Qt::CaseInsensitive))
{
@@ -52,17 +40,17 @@ void KviProxyDataBase::updateProxyIp(const char * proxy, const char * ip)
KviProxy * KviProxyDataBase::findProxy(const KviProxy * pProxy, bool bName)
{
- for(KviProxy * p = m_pProxyList->first(); p; p = m_pProxyList->next())
+ for(auto & p : m_pProxyList)
{
if(bName)
{
if(QString::compare(p->m_szHostname, pProxy->m_szHostname, Qt::CaseInsensitive))
- return p;
+ return p.get();
}
else
{
if(QString::compare(p->m_szHostname, pProxy->m_szHostname, Qt::CaseInsensitive) && (p->m_uPort == pProxy->m_uPort) && (p->protocol() == pProxy->protocol()) && (p->isIPv6() == pProxy->isIPv6()))
- return p;
+ return p.get();
}
}
return nullptr;
@@ -70,9 +58,7 @@ KviProxy * KviProxyDataBase::findProxy(const KviProxy * pProxy, bool bName)
void KviProxyDataBase::clear()
{
- delete m_pProxyList;
- m_pProxyList = new KviPointerList<KviProxy>;
- m_pProxyList->setAutoDelete(true);
+ m_pProxyList.clear();
m_pCurrentProxy = nullptr;
}
@@ -85,7 +71,7 @@ void KviProxyDataBase::load(const QString & filename)
for(unsigned int i = 0; i < nEntries; i++)
{
- KviProxy * p = new KviProxy();
+ std::unique_ptr<KviProxy> p(new KviProxy());
KviCString tmp(KviCString::Format, "%u_Hostname", i);
p->m_szHostname = cfg.readEntry(tmp.ptr(), "proxy.example.net");
tmp.sprintf("%u_Port", i);
@@ -105,12 +91,12 @@ void KviProxyDataBase::load(const QString & filename)
p->m_bIsIPv6 = cfg.readBoolEntry(tmp.ptr(), false);
tmp.sprintf("%u_Current", i);
if(cfg.readBoolEntry(tmp.ptr(), false))
- m_pCurrentProxy = p;
- m_pProxyList->append(p);
+ m_pCurrentProxy = p.get();
+ m_pProxyList.push_back(std::move(p));
}
- if(!m_pCurrentProxy)
- m_pCurrentProxy = m_pProxyList->first();
+ if(!m_pCurrentProxy && !m_pProxyList.empty())
+ m_pCurrentProxy = m_pProxyList.front().get();
}
void KviProxyDataBase::save(const QString & filename)
@@ -119,11 +105,11 @@ void KviProxyDataBase::save(const QString & filename)
cfg.clear();
- cfg.writeEntry("Entries", m_pProxyList->count());
+ cfg.writeEntry("Entries", static_cast<unsigned>(m_pProxyList.size()));
int i = 0;
- for(KviProxy * p = m_pProxyList->first(); p; p = m_pProxyList->next())
+ for(auto & p : m_pProxyList)
{
KviCString tmp(KviCString::Format, "%u_Hostname", i);
cfg.writeEntry(tmp.ptr(), p->m_szHostname);
@@ -155,7 +141,7 @@ void KviProxyDataBase::save(const QString & filename)
tmp.sprintf("%u_IsIPv6", i);
cfg.writeEntry(tmp.ptr(), p->m_bIsIPv6);
tmp.sprintf("%u_Current", i);
- if(m_pCurrentProxy == p)
+ if(m_pCurrentProxy == p.get())
cfg.writeEntry(tmp.ptr(), true);
i++;
}