only reread chatcleaner config if it was modified
This commit is contained in:
@@ -34,6 +34,8 @@ public:
|
|||||||
|
|
||||||
~CleanerConfig();
|
~CleanerConfig();
|
||||||
|
|
||||||
|
std::string getConfigFileName() { return configFileName; }
|
||||||
|
|
||||||
void fillBuffer();
|
void fillBuffer();
|
||||||
void writeBuffer() const;
|
void writeBuffer() const;
|
||||||
|
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
CleanerServer::CleanerServer(): config(0), blockConnection(false)
|
CleanerServer::CleanerServer(): config(0), blockConnection(false), secondsSinceLastConfigChange(0)
|
||||||
{
|
{
|
||||||
config = new CleanerConfig;
|
config = new CleanerConfig;
|
||||||
|
|
||||||
@@ -170,9 +170,13 @@ void CleanerServer::socketStateChanged(QAbstractSocket::SocketState state) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void CleanerServer::refreshConfig() {
|
void CleanerServer::refreshConfig() {
|
||||||
|
|
||||||
config->fillBuffer();
|
QFileInfo configFileInfo(QString::fromUtf8(config->getConfigFileName().c_str()));
|
||||||
myMessageFilter->refreshConfig();
|
|
||||||
|
if(configFileInfo.lastModified().secsTo(QDateTime::currentDateTime()) < 20) {
|
||||||
|
config->fillBuffer();
|
||||||
|
myMessageFilter->refreshConfig();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CleanerServer::sendMessageToClient(InternalChatCleanerPacket &msg)
|
void CleanerServer::sendMessageToClient(InternalChatCleanerPacket &msg)
|
||||||
|
|||||||
@@ -36,6 +36,8 @@ private:
|
|||||||
|
|
||||||
unsigned char m_recvBuf[2*MAX_CLEANER_PACKET_SIZE];
|
unsigned char m_recvBuf[2*MAX_CLEANER_PACKET_SIZE];
|
||||||
unsigned m_recvBufUsed;
|
unsigned m_recvBufUsed;
|
||||||
|
|
||||||
|
int secondsSinceLastConfigChange;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // CLEANERSERVER_H
|
#endif // CLEANERSERVER_H
|
||||||
|
|||||||
Reference in New Issue
Block a user