diff options
| author | 2009-12-29 15:39:33 +0000 | |
|---|---|---|
| committer | 2009-12-29 15:39:33 +0000 | |
| commit | 043a9aa0c443e7f26bb3412f11ec1344f6875c9c (patch) | |
| tree | c533fd5642be71c1c3394d3f57be97cc44635ad3 /src/modules | |
| parent | quick fix (diff) | |
| download | KVIrc-043a9aa0c443e7f26bb3412f11ec1344f6875c9c.tar.gz KVIrc-043a9aa0c443e7f26bb3412f11ec1344f6875c9c.tar.bz2 KVIrc-043a9aa0c443e7f26bb3412f11ec1344f6875c9c.zip | |
fix for #34
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@3761 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/logview/logviewmdiwindow.cpp | 38 |
1 files changed, 23 insertions, 15 deletions
diff --git a/src/modules/logview/logviewmdiwindow.cpp b/src/modules/logview/logviewmdiwindow.cpp index 9eeff7e44..bedd6db56 100644 --- a/src/modules/logview/logviewmdiwindow.cpp +++ b/src/modules/logview/logviewmdiwindow.cpp @@ -384,39 +384,47 @@ void KviLogViewMDIWindow::deleteCurrent() } } -KviLogFile::KviLogFile(const QString& name) +KviLogFile::KviLogFile(const QString & szName) { - QString szTmpName=name; - m_szFilename=name; + /* + Log is in the format + $type_$nick.$network_$YYYY.$MM.$DD.log + Examples: + query_noldor.azzurra_2009.05.20.log + channel_#slackware.azzurra_2009.11.03.log + */ + + QString szTmpName = szName; + m_szFilename = szName; QFileInfo fi(m_szFilename); - m_bCompressed=(fi.suffix()=="gz"); + m_bCompressed = (fi.suffix() == "gz"); if(m_bCompressed) { //removes trailing dot and extension szTmpName.chop(3); } - QString typeToken = szTmpName.section('_',0,0); + QString szTypeToken = szTmpName.section('_',0,0); // Ignore non-logs files, this includes '.' and '..' - if( KviQString::equalCI(typeToken,"channel") ) + if(KviQString::equalCI(szTypeToken,"channel")) m_type = Channel; - else if( KviQString::equalCI(typeToken,"console") ) + else if(KviQString::equalCI(szTypeToken,"console")) m_type = Console; - else if( KviQString::equalCI(typeToken,"dccchat") ) + else if(KviQString::equalCI(szTypeToken,"dccchat")) m_type = DccChat; - else if( KviQString::equalCI(typeToken,"query") ) + else if(KviQString::equalCI(szTypeToken,"query")) m_type = Query; else m_type = Other; - KviStr undecoded = szTmpName.section('.',0,0); - undecoded.cutToFirst('_'); - m_szName = undecoded.hexDecode(undecoded.ptr()).ptr(); + KviStr szUndecoded = szTmpName.section('.',0,0); + szUndecoded.cutToFirst('_'); + m_szName = szUndecoded.hexDecode(szUndecoded.ptr()).ptr(); - undecoded = szTmpName.section('.',1).section('_',0,-2); - m_szNetwork = undecoded.hexDecode(undecoded.ptr()).ptr(); + szUndecoded = szTmpName.section('.',1).section('_',0,-2); + m_szNetwork = szUndecoded.hexDecode(szUndecoded.ptr()).ptr(); - QString szDate = szTmpName.section('_', -1).section('.',0,-2); + QString szDate = szTmpName.section('_',2).section('.',0,2); int iYear = szDate.section('.',0,0).toInt(); int iMonth = szDate.section('.',1,1).toInt(); int iDay = szDate.section('.',2,2).toInt(); |
