https://bugs.kde.org/show_bug.cgi?id=123481
Maxim Yegorushkin <maxim.yegorush...@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |maxim.yegorush...@gmail.com --- Comment #10 from Maxim Yegorushkin <maxim.yegorush...@gmail.com> --- I do encounter this same crash with diff'ing 2 large files csv files of sizes 1,158,506,947 and 1,158,448,716 bytes. The machine has 32GB RAM most of which is available. It looks like it reads files into memory using QString::append and that crashes on the resize. A better strategy may be to map the input files into memory using mmap. Here follows automatically generated crash report: Application: kdiff3 (0.9.98 (64 bit)) KDE Platform Version: 4.14.17 Qt Version: 4.8.7 Operating System: Linux 4.4.6-201.fc22.x86_64 x86_64 Distribution: "Fedora release 22 (Twenty Two)" -- Information about the crash: The crash can be reproduced every time. -- Backtrace: Application: kdiff3 (kdiff3), signal: Aborted Using host libthread_db library "/lib64/libthread_db.so.1". [Current thread is 1 (Thread 0x7f4af0cd08c0 (LWP 18243))] Thread 2 (Thread 0x7f4ad2b2a700 (LWP 18246)): #0 0x00007f4aec10e57d in poll () at /lib64/libc.so.6 #1 0x00007f4ae7fefdbc in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #2 0x00007f4ae7fefecc in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #3 0x00007f4aed5d3e7e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #4 0x00007f4aed5a2131 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #5 0x00007f4aed5a24a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #6 0x00007f4aed491a99 in QThread::exec() () at /lib64/libQtCore.so.4 #7 0x00007f4aed582203 in QInotifyFileSystemWatcherEngine::run() () at /lib64/libQtCore.so.4 #8 0x00007f4aed49438c in QThreadPrivate::start(void*) () at /lib64/libQtCore.so.4 #9 0x00007f4aed1f2555 in start_thread () at /lib64/libpthread.so.0 #10 0x00007f4aec119ded in clone () at /lib64/libc.so.6 Thread 1 (Thread 0x7f4af0cd08c0 (LWP 18243)): [KCrash Handler] #6 0x00007f4aec04b9c8 in raise () at /lib64/libc.so.6 #7 0x00007f4aec04d65a in abort () at /lib64/libc.so.6 #8 0x00007f4aec986b4d in __gnu_cxx::__verbose_terminate_handler() () at /lib64/libstdc++.so.6 #9 0x00007f4aec9849a6 in () at /lib64/libstdc++.so.6 #10 0x00007f4aec9849f1 in () at /lib64/libstdc++.so.6 #11 0x00007f4aec984c09 in () at /lib64/libstdc++.so.6 #12 0x00007f4aed489402 in () at /lib64/libQtCore.so.4 #13 0x00007f4aed4e423a in QString::realloc(int) () at /lib64/libQtCore.so.4 #14 0x00007f4aed4e7a13 in QString::append(QString const&) () at /lib64/libQtCore.so.4 #15 0x00007f4aed539462 in QTextStreamPrivate::fillReadBuffer(long long) () at /lib64/libQtCore.so.4 #16 0x00007f4aed539b1f in QTextStreamPrivate::read(int) () at /lib64/libQtCore.so.4 #17 0x00007f4aed53aad0 in QTextStream::readAll() () at /lib64/libQtCore.so.4 #18 0x0000000000462401 in SourceData::FileData::preprocess(bool, QTextCodec*) () #19 0x0000000000462ad1 in SourceData::readAndPreprocess(QTextCodec*, bool) () #20 0x000000000044e12f in KDiff3App::mainInit(TotalDiffStatus*, bool, bool) () #21 0x0000000000450db3 in KDiff3App::slotFileOpen() () #22 0x0000000000429f1d in KDiff3App::completeInit(QString const&, QString const&, QString const&) () #23 0x000000000042682d in KDiff3Shell::KDiff3Shell(bool) () #24 0x000000000042221b in main () -- You are receiving this mail because: You are watching all bug changes.