Commit 34d38b35 authored by Florian Schlichting's avatar Florian Schlichting

New upstream version 4.0.1+hg487+dfsg

parent a581e23f
Makefile
Makefile.in
config.*
configure
aclocal.m4
ltmain.sh
ltconfig
libtool
config.sub
config.guess
xxdiff-*.tar.gz
repo: 154177f7265bd40cddcb304bc937b0eed40ec5a5
node: 689ce10e17721ae7ed4464a3a6df0f1c483a756b
branch: default
latesttag: null
latesttagdistance: 351
changessincelatesttag: 469
syntax: glob
*.o
*.pyc
moc_*.cpp
bin/xxdiff
bin/xxdiff.app
src/Makefile
src/Makefile.qmake
src/doc.h
src/markersWidgetBase.cpp
src/markersWidgetBase.h
src/optionsDialogBase.cpp
src/optionsDialogBase.h
src/resParser_lex.cpp
src/resParser_lex.h
src/resParser_yacc.cpp
src/resParser_yacc.h
src/searchDialogBase.cpp
src/searchDialogBase.h
src/core
src/ui_markersWidgetBase.h
src/ui_optionsDialogBase.h
src/ui_searchDialogBase.h
......@@ -5,6 +5,19 @@ CHANGES: xxdiff
Current Development Version
---------------------------
* Applied patch from Vadim Zhukov <persgray at gmail dot com> for more general
local encoding conversion.
* Fixed coredump on long lines by allowing line length up to 2^32.
(Thanks to Jim Diamond for finding the issue.)
Version 5.0b1: Port to Qt5 by Rene J.V. Bertin
----------------------------------------------
* Switch to Qt5 (tested with 5.6, probably ok with older versions too)
* Add keyboard shortcuts for "Save as left" and "Save as right"
* Prevent accidental wheel-zoom when pressing the Ctrl key while inertial scroll events are coming in.
Version 4.0.1: Port to Qt4 by Alexandre Feblot
----------------------------------------------
......
......@@ -206,7 +206,7 @@ the relevant pages. The author does not publish binaries anymore.
Reporting Bugs
==============
* `Reporting Bugs <http://sourceforge.net/tracker/?group_id=2198>`_
* `Reporting Bugs <https://sourceforge.net/p/xxdiff/bugs/>`_
*(bugs and feature requests)*
**PLEASE!** report bugs using the bug tracker instead of email. It is extremely
......
......@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="generator" content="Docutils 0.11: http://docutils.sourceforge.net/" />
<meta name="generator" content="Docutils 0.12: http://docutils.sourceforge.net/" />
<title>Integrating xxdiff with scripts</title>
<meta name="author" content="Martin Blais &lt;blais&#64;furius.ca&gt;" />
<meta name="date" content="2004-01-21" />
......@@ -13,7 +13,7 @@
<div id="project-header">
<a href="http://furius.ca/"><img src="http://furius.ca/home/furius-logo-w.png" id="logo"></a>
<div id="project-home"><a href="http://furius.ca/xxdiff">Project Home</a></div>
<div id="project-home"><a href="..">Project Home</a></div>
</div>
<div class="document" id="integrating-xxdiff-with-scripts">
......
......@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="generator" content="Docutils 0.11: http://docutils.sourceforge.net/" />
<meta name="generator" content="Docutils 0.12: http://docutils.sourceforge.net/" />
<title>The Almost Secret Features of xxdiff</title>
<meta name="author" content="Martin Blais &lt;blais&#64;furius.ca&gt;" />
<link rel="stylesheet" href="../style.css" type="text/css" />
......@@ -12,7 +12,7 @@
<div id="project-header">
<a href="http://furius.ca/"><img src="http://furius.ca/home/furius-logo-w.png" id="logo"></a>
<div id="project-home"><a href="http://furius.ca/xxdiff">Project Home</a></div>
<div id="project-home"><a href="..">Project Home</a></div>
</div>
<div class="document" id="the-almost-secret-features-of-xxdiff">
......
......@@ -3,14 +3,14 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils 0.10: http://docutils.sourceforge.net/" />
<meta name="generator" content="Docutils 0.12: http://docutils.sourceforge.net/" />
<title>xxdiff: Graphical File And Directories Comparator And Merge Tool</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<div id="project-header">
<a href="/"><img src="/home/furius-logo-w.png" id="logo"></a>
<a href="http://furius.ca/"><img src="http://furius.ca/home/furius-logo-w.png" id="logo"></a>
</div>
......@@ -223,7 +223,7 @@ SGI freeware team (version may be lagging behind))</li>
<div class="section" id="reporting-bugs">
<h1><a class="toc-backref" href="#id12">Reporting Bugs</a></h1>
<ul class="simple">
<li><a class="reference external" href="http://sourceforge.net/tracker/?group_id=2198">Reporting Bugs</a>
<li><a class="reference external" href="https://sourceforge.net/p/xxdiff/bugs/">Reporting Bugs</a>
<em>(bugs and feature requests)</em></li>
</ul>
<p><strong>PLEASE!</strong> report bugs using the bug tracker instead of email. It is extremely
......
......@@ -5,19 +5,22 @@
#
# Rule to generate the qmake Makefile for building xxdiff.
QMAKE ?= /usr/bin/qmake
QMAKE ?= qmake
MAKEDIR ?= .
QMAKEOPTS =
all: Makefile
OS := $(shell uname -s)
ifeq ($(OS),Darwin)
# Default is an Xcode project, so force a makefile build
export QMAKESPEC=macx-g++
export QMAKESPEC=macx-clang
endif
Makefile.qmake: xxdiff.pro
$(QMAKE) -o Makefile.qmake $<
Makefile.qmake: $(MAKEDIR)/xxdiff.pro
$(QMAKE) $(QMAKEOPTS) -o Makefile.qmake $<
Makefile: Makefile.qmake Makefile.extra
cat $^ > Makefile
Makefile: Makefile.qmake $(MAKEDIR)/Makefile.extra
echo "MAKEDIR = $(MAKEDIR)" > Makefile
cat $^ >> Makefile
......@@ -4,7 +4,7 @@
#
# Extra targets.
EXTRA_FILES = version.h doc.h
EXTRA_FILES = version.h $(MAKEDIR)/doc.h
.SUFFIXES: .html .txt .h
......@@ -23,8 +23,8 @@ resParser.cpp: resParser_lex.h
#
# Automatically generate a simple include file with version number in it.
version.h: ../VERSION
echo "#define XX_VERSION \"`cat ../VERSION`\"" > $@
version.h: $(MAKEDIR)/../VERSION
echo "#define XX_VERSION \"`cat $(MAKEDIR)/../VERSION`\"" > $@
# Dependencies for the generated version file.
proginfo.o: version.h
......@@ -41,8 +41,8 @@ proginfo.obj: version.h
sed -e 's/\"/\\\"/g;s/$$/\\n\\/;1s/^/char text[]=\"/;$$s/\\$$/\"\;/' $< > $@
# Dependencies for the generated documentation file.
help.o: doc.h
help.obj: doc.h
help.o: $(MAKEDIR)/doc.h
help.obj: $(MAKEDIR)/doc.h
# Convert the reStructuredText documentation to html. (this is only used by the
# author, directly, manually, not that important for xxdiff packagers.)
......@@ -60,13 +60,9 @@ clean_extra:
rm -f $(EXTRA_FILES)
# Override the qmake we use because the one in the path might be different.
QMAKE = qmake
# Note: we would need to add this to be correct. Danger! If the Makefile gets
# remade, this file does not get appended again to the new makefile!
all: Makefile
Makefile: xxdiff.pro
$(MAKE) -f Makefile.bootstrap Makefile
Makefile: $(MAKEDIR)/xxdiff.pro
$(MAKE) -f $(MAKEDIR)/Makefile.bootstrap Makefile
......@@ -27,7 +27,7 @@
#include <accelUtil.h>
#include <resources.h>
#include <QtGui/QKeySequence>
#include <QKeySequence>
#include <iostream>
#include <string.h>
......@@ -49,7 +49,7 @@ bool XxAccelUtil::read( const QString& val, int& accel )
QString cval = val.trimmed().toLower();
QKeySequence keyseq = QKeySequence::fromString( cval );
accel = (int)keyseq;
accel = keyseq[0];
// Check that converting back gets the original value
return ( cval == keyseq.toString().toLower() );
......@@ -59,7 +59,7 @@ bool XxAccelUtil::read( const QString& val, int& accel )
//
void XxAccelUtil::write( std::ostream& os, int accel )
{
os << QKeySequence( accel ).toString().toAscii().constData();
os << QKeySequence( accel ).toString().toLocal8Bit().constData();
}
XX_NAMESPACE_END
......
......@@ -32,7 +32,7 @@
#endif
#ifndef INCL_QT_QSTRING
#include <QtCore/QString>
#include <QString>
#define INCL_QT_QSTRING
#endif
......
......@@ -49,31 +49,31 @@
#include <central.h>
#include <borderLabel.h>
#include <QtGui/QMainWindow>
#include <QtGui/QMenu>
#include <QtGui/QMenuBar>
#include <QtGui/QLayout>
#include <QtGui/QScrollBar>
#include <QtGui/QLabel>
#include <QtGui/QStyleFactory>
#include <QtGui/QFont>
#include <QtGui/QMessageBox>
#include <QtGui/QFileDialog>
#include <QtGui/QShortcut>
#include <QtGui/QWhatsThis>
#include <QtGui/QClipboard>
#include <QtCore/QProcess>
#include <QtGui/QToolBar>
#include <QtGui/QAction>
#include <QtCore/QTextStream>
#include <QtCore/QFile>
#include <QtGui/QSplitter>
#include <QtCore/QRegExp>
#include <QtGui/QCheckBox>
#include <QtCore/QDateTime>
#include <QtGui/QPixmap>
#include <QtGui/QHBoxLayout>
#include <QtGui/QVBoxLayout>
#include <QMainWindow>
#include <QMenu>
#include <QMenuBar>
#include <QLayout>
#include <QScrollBar>
#include <QLabel>
#include <QStyleFactory>
#include <QFont>
#include <QMessageBox>
#include <QFileDialog>
#include <QShortcut>
#include <QWhatsThis>
#include <QClipboard>
#include <QProcess>
#include <QToolBar>
#include <QAction>
#include <QTextStream>
#include <QFile>
#include <QSplitter>
#include <QRegExp>
#include <QCheckBox>
#include <QDateTime>
#include <QPixmap>
#include <QHBoxLayout>
#include <QVBoxLayout>
#ifdef XX_KDE
......@@ -179,7 +179,7 @@ public:
XxMainWindow(
XxApp* app,
QWidget* parent = 0,
Qt::WFlags f = Qt::Window
Qt::WindowFlags f = Qt::Window
);
......@@ -197,11 +197,13 @@ private:
XxMainWindow::XxMainWindow(
XxApp* app,
QWidget* parent,
Qt::WFlags f
Qt::WindowFlags f
) :
QkMainWindow( parent, f ),
_app( app )
{}
{
(void)_app; // suppress "unused" warning
}
}
......@@ -243,14 +245,14 @@ XxApp::XxApp( int& argc, char** argv, XxCmdline& cmdline ) :
// Read in the resources and create resources object.
_resources = buildResources();
// We do not force the style anymore.
// #ifndef XX_KDE
// // By default, if not specified, force SGI style.
// if ( !_cmdline._forceStyle ) {
// _style = QStyleFactory::create( _resources->getStyleKey() );
// setStyle( _style );
// }
// #endif
#ifndef XX_KDE
if ( !_cmdline._forceStyle ) {
_style = QStyleFactory::create( _resources->getStyleKey() );
if (_style) {
setStyle( _style );
}
}
#endif
#ifndef XX_KDE
if ( _cmdline._forceFont == false ) {
......@@ -2283,12 +2285,12 @@ bool XxApp::processDiff()
if ( _resources->getBoolOpt( BOOL_DIRDIFF_RECURSIVE ) ) {
dirdiff_command = _resources->getCommand(
CMD_DIFF_DIRECTORIES_REC
).toAscii();
).toLocal8Bit();
}
else {
dirdiff_command = _resources->getCommand(
CMD_DIFF_DIRECTORIES
).toAscii();
).toLocal8Bit();
}
std::auto_ptr<XxDiffs> tmp(
dirsBuilder->process( dirdiff_command.constData(), *_files[0], *_files[1] )
......@@ -3522,7 +3524,7 @@ void XxApp::diffFilesAtCursor()
QString * tmpTitle = new QString();
tmpTitle->sprintf( "--title%d=%s",
ii+1,
_cmdline._userFilenames[ii].toLatin1().constData() );
_cmdline._userFilenames[ii].toLocal8Bit().constData() );
titles[ii] = tmpTitle;
}
}
......@@ -3547,7 +3549,7 @@ void XxApp::diffFilesAtCursor()
if ( filenames.count() > 0 ) {
// Spawn a diff.
QString command = argv()[0];
QString command = arguments()[0];
if ( filenames.count() == 1 ) {
command += QString(" --single ");
......
......@@ -48,12 +48,12 @@
#endif
#ifndef INCL_QT_QAPPLICATION
#include <QtGui/QApplication>
#include <QApplication>
#define INCL_QT_QAPPLICATION
#endif
#ifndef INCL_QT_QFILEINFO
#include <QtCore/QFileInfo>
#include <QFileInfo>
#define INCL_QT_QFILEINFO
#endif
......
......@@ -37,7 +37,7 @@
#endif
#ifndef INCL_QT_QSCROLLBAR
#include <QtGui/QScrollBar>
#include <QScrollBar>
#define INCL_QT_QSCROLLBAR
#endif
......
......@@ -27,13 +27,13 @@
#include <borderLabel.h>
#include <app.h>
#include <QtGui/QPainter>
#include <QtGui/QBrush>
#include <QtGui/QPen>
#include <QtGui/QColor>
#include <QPainter>
#include <QBrush>
#include <QPen>
#include <QColor>
#include <QtGui/QApplication>
#include <QtGui/QLabel>
#include <QApplication>
#include <QLabel>
#include <stdio.h>
......
......@@ -36,7 +36,7 @@
#endif
#ifndef INCL_QT_QLABEL
#include <QtGui/QLabel>
#include <QLabel>
#define INCL_QT_QLABEL
#endif
......
......@@ -28,10 +28,10 @@
#include <exceptions.h>
#include <util.h>
#include <QtGui/QFontMetrics>
#include <QtGui/QFont>
#include <QtCore/QRect>
#include <QtCore/QDir>
#include <QFontMetrics>
#include <QFont>
#include <QRect>
#include <QDir>
#include <iostream>
#include <string.h>
......@@ -52,21 +52,7 @@ namespace {
//------------------------------------------------------------------------------
//
const char* strnchr( const char* s, int c, const char* end )
{
const char* pc = s;
while ( pc < end ) {
if ( *pc == c ) {
return pc;
}
pc++;
}
return 0;
}
//------------------------------------------------------------------------------
//
const char* strnstr( const char* haystack, const uint n, const char* needle )
const char* strnstr( const char* haystack, const uint n, const char* needle )
{
const char* p = haystack;
const char* pe = p + n - ::strlen( needle );
......@@ -101,7 +87,7 @@ XX_NAMESPACE_BEGIN
//------------------------------------------------------------------------------
//
XxBuffer::XxBuffer(
XxBuffer::XxBuffer(
const bool /*passiveDummy*/, // ignored
const QString& filename,
const QString& displayFilename,
......@@ -123,7 +109,7 @@ XxBuffer::XxBuffer(
//------------------------------------------------------------------------------
//
XxBuffer::XxBuffer(
XxBuffer::XxBuffer(
const QString& filename,
const QString& displayFilename,
const QFileInfo& fileInfo,
......@@ -213,7 +199,7 @@ XxBuffer::~XxBuffer()
}
if ( _deleteFile == true ) {
XxUtil::removeFile( _name.toLatin1().constData() );
XxUtil::removeFile( _name.toLocal8Bit().constData() );
}
}
......@@ -282,7 +268,7 @@ void XxBuffer::loadStream( FILE* fin )
void XxBuffer::loadFile( const QFileInfo& finfo )
{
// Read file into buffer.
FILE* fp = fopen( _name.toLatin1().constData(), "r" );
FILE* fp = fopen( _name.toLocal8Bit().constData(), "r" );
if ( fp == 0 ) {
throw XxIoError( XX_EXC_PARAMS );
}
......@@ -334,16 +320,16 @@ void XxBuffer::loadDirectory()
{
QDir dir( _name );
dir.setFilter( QDir::Dirs | QDir::Files | QDir::Hidden | QDir::System );
// Dirs - List directories only
// Files - List files only
// Drives - List disk drives (does nothing under unix)
// NoSymLinks - Do not list symbolic links (where they exist)
// Readable - List files for which the application has read access.
// Writable - List files for which the application has write access.
// Executable - List files for which the application has execute access
// Modified - Only list files that have been modified (does nothing under unix)
// Hidden - List hidden files (on unix, files starting with a .)
// System - List system files (does nothing under unix)
// Dirs - List directories only
// Files - List files only
// Drives - List disk drives (does nothing under unix)
// NoSymLinks - Do not list symbolic links (where they exist)
// Readable - List files for which the application has read access.
// Writable - List files for which the application has write access.
// Executable - List files for which the application has execute access
// Modified - Only list files that have been modified (does nothing under unix)
// Hidden - List hidden files (on unix, files starting with a .)
// System - List system files (does nothing under unix)
dir.setSorting( QDir::Unsorted );
XX_CHECK( dir.exists() );
......@@ -355,14 +341,14 @@ void XxBuffer::loadDirectory()
//------------------------------------------------------------------------------
//
void XxBuffer::setDirectoryEntries(
const QStringList& directoryEntries
void XxBuffer::setDirectoryEntries(
const QStringList& directoryEntries
)
{
_directoryEntries = directoryEntries;
_bufferSize = 0;
for ( QStringList::Iterator itr = _directoryEntries.begin();
for ( QStringList::Iterator itr = _directoryEntries.begin();
itr != _directoryEntries.end();
++itr ) {
_bufferSize += (*itr).length() + 1;
......@@ -371,13 +357,13 @@ void XxBuffer::setDirectoryEntries(
// Allocate buffer.
// add one for potential added newline.
_buffer = static_cast<char*>( malloc( (_bufferSize + 1) * sizeof(char) ) );
char* bufferPtr = _buffer;
for ( QStringList::Iterator it = _directoryEntries.begin();
for ( QStringList::Iterator it = _directoryEntries.begin();
it != _directoryEntries.end();
++it ) {
int len = (*it).length();
::strncpy( bufferPtr, (*it).toLatin1().constData(), len );
::strncpy( bufferPtr, (*it).toLocal8Bit().constData(), len );
bufferPtr[len] = _newlineChar;
bufferPtr += len + 1;
}
......@@ -433,7 +419,7 @@ void XxBuffer::indexFile()
_index.push_back( ii + 1 );
#ifdef XX_ENABLED_BUFFER_LINE_LENGTHS
_lengths.push_back( ii - prev );
prev = static_cast<short>( ii + 1 );
prev = static_cast<unsigned int>( ii + 1 );
#endif
}
}
......@@ -457,7 +443,7 @@ void XxBuffer::reindex( const std::vector<XxFln>& reindexTbl )
std::swap( _index, oldIndex );
#ifdef XX_ENABLED_BUFFER_LINE_LENGTHS
std::vector<short> oldLengths;
std::vector<unsigned int> oldLengths;
std::swap( _lengths, oldLengths );
#endif
......@@ -466,7 +452,7 @@ void XxBuffer::reindex( const std::vector<XxFln>& reindexTbl )
#ifdef XX_ENABLED_BUFFER_LINE_LENGTHS
_lengths.push_back( -1 );
#endif
for ( ii = 1; ii < reindexTbl.size(); ++ii ) {
int reidx = reindexTbl[ii];
_index.push_back( oldIndex[reidx] );
......@@ -519,7 +505,7 @@ uint XxBuffer::computeTextWidth(
const char* lineText = getTextLine( ii, length );
int rlength;
const char* renderedText =
const char* renderedText =
renderTextWithTabs( lineText, length, tabWidth, hideCR, rlength, 0 );
QString str( renderedText );
......@@ -555,7 +541,7 @@ uint XxBuffer::computeLineNumbersWidth( const QFont& font ) const
//------------------------------------------------------------------------------
//
const char* XxBuffer::renderTextWithTabs(
const char* XxBuffer::renderTextWithTabs(
const char* lineText,
const uint length,
const uint tabWidth,
......@@ -591,7 +577,7 @@ const char* XxBuffer::renderTextWithTabs(
// that will accomodate all possible cases below.
const int requiredSize = curcol + maxIncrement;
if ( _renderBufferSize <= requiredSize ) {
_renderBufferSize =
_renderBufferSize =
( (requiredSize / renderBufferIncrement) + 1 ) *
renderBufferIncrement;
_renderBuffer = (char*)realloc( _renderBuffer,
......@@ -606,9 +592,9 @@ const char* XxBuffer::renderTextWithTabs(
// We detected a tab character.
//
if ( tabWidth != 0 ) {
// Compute amount of chars to insert.
int bcol = pd - _renderBuffer;
int bcol = pd - _renderBuffer;
uint nspaces = tabWidth - (bcol % tabWidth);
// Output equivalent spaces for tab in the destination.
......@@ -636,7 +622,7 @@ const char* XxBuffer::renderTextWithTabs(
continue;
}
}
else {
else {
XX_LOCAL_TRACE( " output:" << *ps );
*pd++ = *ps;
XX_CHECK( pd - _renderBuffer < _renderBufferSize );
......@@ -678,7 +664,7 @@ const char* XxBuffer::renderTextWithTabs(
// Expand render buffer if necessary.
const int requiredSize = curcol + 1;
if ( _renderBufferSize <= requiredSize ) {
_renderBufferSize =
_renderBufferSize =
( (requiredSize / renderBufferIncrement) + 1 ) *
renderBufferIncrement;
_renderBuffer = (char*)realloc( _renderBuffer, _renderBufferSize );
......@@ -705,12 +691,12 @@ uint XxBuffer::getNbDigits() const
//------------------------------------------------------------------------------
//
const QString& XxBuffer::renderLineNumber(
const QString& XxBuffer::renderLineNumber(
const XxFln lineNumber,
const QString& format
)
{
_lnBuffer.sprintf( format.toLatin1().constData(), lineNumber );
_lnBuffer.sprintf( format.toLocal8Bit().constData(), lineNumber );
return _lnBuffer;
}
......@@ -721,7 +707,7 @@ bool XxBuffer::searchLine( const XxFln lineno, const QString& searchText ) const
bool found = false;
uint len;
const char* text = getTextLine( lineno, len );
if ( strnstr( text, len, searchText.toLatin1().constData() ) != 0 ) {
if ( strnstr( text, len, searchText.toLocal8Bit().constData() ) != 0 ) {
found = true;
}
return found;
......@@ -749,7 +735,7 @@ QString XxBuffer::getBufferAtLine( const XxFln lineno ) const
if ( filename.at( filename.length()-1 ) != '/' ) {
filename.append( "/" );
}
XX_CHECK( lineno - 1 < XxFln(_directoryEntries.count()) );
// Note: QStringList O(n) lookup.
......@@ -768,22 +754,22 @@ void XxBuffer::makeTemporary()
// Open the temporary file.
char temporaryFilename[32] = "/var/tmp/xxdiff-tmp.XXXXXX";
FILE* fout = XxUtil::tempfile( temporaryFilename );
// Write contents.
uint size;
const char* buffer = getBuffer( size );
if ( ::fwrite( buffer, 1, size, fout ) != size ) {
throw XxIoError( XX_EXC_PARAMS,
throw XxIoError( XX_EXC_PARAMS,
"Error writing to temporary file." );
}
// Close the temporary file.
if ( ::fclose( fout ) != 0 ) {
throw XxIoError( XX_EXC_PARAMS,
throw XxIoError( XX_EXC_PARAMS,
"Error closing temporary file." );
}
// Make this buffer a temporary to be deleted.
_name = QString(temporaryFilename);
_deleteFile = true;
......
......@@ -51,17 +51,17 @@
#endif
#ifndef INCL_QT_QSTRING
#include <QtCore/QString>
#include <QString>
#define INCL_QT_QSTRING
#endif
#ifndef INCL_QT_QSTRINGLIST
#include <QtCore/QStringList>
#include <QStringList>
#define INCL_QT_QSTRINGLIST
#endif
#ifndef INCL_QT_QFILEINFO
#include <QtCore/QFileInfo>
#include <QFileInfo>
#define INCL_QT_QFILEINFO
#endif
......@@ -95,15 +95,15 @@ public:
// Passive constructor, will not build buffer contents.
XxBuffer(