From 8b9f540b428d5b2141c6f17893fc2cb0c9ecdbf2 Mon Sep 17 00:00:00 2001 From: tpearson Date: Tue, 7 Sep 2010 22:57:14 +0000 Subject: * Merged bugfix patches from Chakra project git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdeutils@1172733 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- ark/arch.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'ark/arch.cpp') diff --git a/ark/arch.cpp b/ark/arch.cpp index a08484c..92e7424 100644 --- a/ark/arch.cpp +++ b/ark/arch.cpp @@ -33,6 +33,7 @@ // QT includes #include #include +#include // KDE includes #include @@ -330,15 +331,20 @@ void Arch::slotReceivedTOC( KProcess*, char* data, int length ) bool Arch::processLine( const TQCString &line ) { TQString columns[ 11 ]; + TQString unicode_line; unsigned int pos = 0; int strpos, len; + TQTextCodec *codec = TQTextCodec::codecForLocale(); + unicode_line = codec->toUnicode( line ); + + // Go through our columns, try to pick out data, return silently on failure for ( TQPtrListIterator col( m_archCols ); col.current(); ++col ) { ArchColumns *curCol = *col; - strpos = curCol->pattern.search( line, pos ); + strpos = curCol->pattern.search( unicode_line, pos ); len = curCol->pattern.matchedLength(); if ( ( strpos == -1 ) || ( len > curCol->maxLength ) ) @@ -354,7 +360,7 @@ bool Arch::processLine( const TQCString &line ) pos = strpos + len; - columns[curCol->colRef] = TQString::fromLocal8Bit( line.mid(strpos, len) ); + columns[curCol->colRef] = TQString::fromLocal8Bit( unicode_line.mid(strpos, len) ); } -- cgit v1.2.3