DOOMer / screengrab

Crossplatform tool for fast making screenshots.
http://screengrab.doomer.org/
GNU General Public License v2.0
23 stars 8 forks source link

Segfault at startup #26

Closed iggy closed 10 years ago

iggy commented 11 years ago

Just running screengrab normally, I get a segfault. Rebuilt with debug symbols and got a backtrace. Let me know if you need more info.

$ gdb screengrab 
GNU gdb (GDB) 7.5.91.20130417-cvs-ubuntu
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/iggy/projects/screengrab/_build/screengrab...done.
(gdb) r
Starting program: /home/iggy/projects/screengrab/_build/screengrab 
warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7ffff7ffa000
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
__gconv_transform_internal_utf8 (step=step@entry=0x67f078, data=data@entry=0x67f758, inptrp=inptrp@entry=0x7fffff7ff170, inend=inend@entry=0x67f854 "q", outbufstart=0x0, outbufstart@entry=0x7ffff58da870 <__gconv_transform_internal_utf8>, 
irreversible=irreversible@entry=0x7fffff7ff250, do_flush=do_flush@entry=0, consume_incomplete=consume_incomplete@entry=0) at ../iconv/skeleton.c:394
394     ../iconv/skeleton.c: No such file or directory.
(gdb) thread apply all bt

Thread 1 (Thread 0x7ffff7fc67c0 (LWP 26862)):
#0  __gconv_transform_internal_utf8 (step=step@entry=0x67f078, data=data@entry=0x67f758, inptrp=inptrp@entry=0x7fffff7ff170, inend=inend@entry=0x67f854 "q", outbufstart=0x0, outbufstart@entry=0x7ffff58da870 <__gconv_transform_internal_utf8>, 
irreversible=irreversible@entry=0x7fffff7ff250, do_flush=do_flush@entry=0, consume_incomplete=consume_incomplete@entry=0) at ../iconv/skeleton.c:394
#1  0x00007ffff1eeec26 in gconv (step=0x67f010, data=data@entry=0x67f720, inptrp=inptrp@entry=0x7fffff7ff2e8, inend=inend@entry=0x6eef44 "", outbufstart=outbufstart@entry=0x0, irreversible=irreversible@entry=0x7fffff7ff250, do_flush=do_flush@entry=0, 
consume_incomplete=consume_incomplete@entry=0) at ../iconv/skeleton.c:673
#2  0x00007ffff58d6191 in __gconv (cd=0x67f710, inbuf=inbuf@entry=0x7fffff7ff2e8, inbufend=0x6eef44 "", outbuf=0x67f854, outbuf@entry=0x7fffff7ff2f0, outbufend=<optimized out>, irreversible=irreversible@entry=0x7fffff7ff250) at gconv.c:79
#3  0x00007ffff58d575b in iconv (cd=<optimized out>, inbuf=0x7fffff7ff2e8, inbytesleft=0x7fffff7ff2f8, outbuf=0x7fffff7ff2f0, outbytesleft=0x7fffff7ff308) at iconv.c:52
#4  0x00007ffff63460c4 in QIconvCodec::convertFromUnicode (this=<optimized out>, uc=0x6eeeea, len=45, convState=0x0) at codecs/qiconvcodec.cpp:398
#5  0x00007ffff633fd38 in QTextCodec::fromUnicode (this=<optimized out>, str=...) at codecs/qtextcodec.cpp:1375
#6  0x00007ffff6256a11 in QString::toLocal8Bit (this=0x7fffff7ff3a0) at tools/qstring.cpp:3767
#7  0x00007ffff6297089 in locale_encode (f=...) at io/qfile.cpp:72
#8  0x00007ffff62974fa in QFile::encodeName (fileName=...) at io/qfile.cpp:515
#9  0x00007ffff62e0e95 in QFileSystemEntry::resolveNativeFilePath (this=this@entry=0x3370f58) at io/qfilesystementry.cpp:171
#10 0x00007ffff62e0f3c in QFileSystemEntry::nativeFilePath (this=this@entry=0x3370f58) at io/qfilesystementry.cpp:139
#11 0x00007ffff62e4c38 in QFileSystemEngine::fillMetaData (entry=..., data=..., what=...) at io/qfilesystemengine_unix.cpp:370
#12 0x00007ffff629d313 in QFileInfo::size (this=this@entry=0x7fffff7ff530) at io/qfileinfo.cpp:1228
#13 0x00007ffff62d50b6 in QConfFileSettingsPrivate::syncConfFile (this=this@entry=0x3370bc0, confFileNo=confFileNo@entry=0) at io/qsettings.cpp:1546
#14 0x00007ffff62d5ad1 in QConfFileSettingsPrivate::sync (this=0x3370bc0) at io/qsettings.cpp:1370
#15 0x00007ffff62d0619 in QConfFileSettingsPrivate::QConfFileSettingsPrivate (this=0x3370bc0, fileName=..., format=<optimized out>) at io/qsettings.cpp:1200
#16 0x00007ffff62d06b4 in QSettingsPrivate::create (fileName=..., format=QSettings::IniFormat) at io/qsettings.cpp:376
#17 0x00007ffff62d06fe in QSettings::QSettings (this=0x33695d0, fileName=..., format=<optimized out>, parent=0x0) at io/qsettings.cpp:2717
#18 0x0000000000425b6d in Config::Config (this=0x3370db0) at /home/iggy/projects/screengrab/src/core/config.cpp:67
#19 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
#20 0x0000000000421838 in Core::Core (this=0x336b9f0) at /home/iggy/projects/screengrab/src/core/core.cpp:56
#21 0x0000000000421cf8 in Core::instance () at /home/iggy/projects/screengrab/src/core/core.cpp:92
#22 0x00000000004291d8 in Config::setDefaultSettings (this=0x3370190) at /home/iggy/projects/screengrab/src/core/config.cpp:570
#23 0x0000000000425be0 in Config::Config (this=0x3370190) at /home/iggy/projects/screengrab/src/core/config.cpp:75
#24 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
#25 0x0000000000421838 in Core::Core (this=0x33706d0) at /home/iggy/projects/screengrab/src/core/core.cpp:56
#26 0x0000000000421cf8 in Core::instance () at /home/iggy/projects/screengrab/src/core/core.cpp:92
#27 0x00000000004291d8 in Config::setDefaultSettings (this=0x336f570) at /home/iggy/projects/screengrab/src/core/config.cpp:570
#28 0x0000000000425be0 in Config::Config (this=0x336f570) at /home/iggy/projects/screengrab/src/core/config.cpp:75
#29 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
#30 0x0000000000421838 in Core::Core (this=0x336fab0) at /home/iggy/projects/screengrab/src/core/core.cpp:56
#31 0x0000000000421cf8 in Core::instance () at /home/iggy/projects/screengrab/src/core/core.cpp:92
#32 0x00000000004291d8 in Config::setDefaultSettings (this=0x336e950) at /home/iggy/projects/screengrab/src/core/config.cpp:570
#33 0x0000000000425be0 in Config::Config (this=0x336e950) at /home/iggy/projects/screengrab/src/core/config.cpp:75
#34 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
#35 0x0000000000421838 in Core::Core (this=0x336ee90) at /home/iggy/projects/screengrab/src/core/core.cpp:56
#36 0x0000000000421cf8 in Core::instance () at /home/iggy/projects/screengrab/src/core/core.cpp:92
#37 0x00000000004291d8 in Config::setDefaultSettings (this=0x336dd30) at /home/iggy/projects/screengrab/src/core/config.cpp:570
#38 0x0000000000425be0 in Config::Config (this=0x336dd30) at /home/iggy/projects/screengrab/src/core/config.cpp:75
#39 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
#40 0x0000000000421838 in Core::Core (this=0x336e270) at /home/iggy/projects/screengrab/src/core/core.cpp:56
#41 0x0000000000421cf8 in Core::instance () at /home/iggy/projects/screengrab/src/core/core.cpp:92
#42 0x00000000004291d8 in Config::setDefaultSettings (this=0x336d110) at /home/iggy/projects/screengrab/src/core/config.cpp:570
#43 0x0000000000425be0 in Config::Config (this=0x336d110) at /home/iggy/projects/screengrab/src/core/config.cpp:75
#44 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
#45 0x0000000000421838 in Core::Core (this=0x336d650) at /home/iggy/projects/screengrab/src/core/core.cpp:56
#46 0x0000000000421cf8 in Core::instance () at /home/iggy/projects/screengrab/src/core/core.cpp:92
#47 0x00000000004291d8 in Config::setDefaultSettings (this=0x336c4f0) at /home/iggy/projects/screengrab/src/core/config.cpp:570
#48 0x0000000000425be0 in Config::Config (this=0x336c4f0) at /home/iggy/projects/screengrab/src/core/config.cpp:75
#49 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
#50 0x0000000000421838 in Core::Core (this=0x336ca30) at /home/iggy/projects/screengrab/src/core/core.cpp:56
#51 0x0000000000421cf8 in Core::instance () at /home/iggy/projects/screengrab/src/core/core.cpp:92
#52 0x00000000004291d8 in Config::setDefaultSettings (this=0x336b8d0) at /home/iggy/projects/screengrab/src/core/config.cpp:570
#53 0x0000000000425be0 in Config::Config (this=0x336b8d0) at /home/iggy/projects/screengrab/src/core/config.cpp:75
#54 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
#55 0x0000000000421838 in Core::Core (this=0x336be10) at /home/iggy/projects/screengrab/src/core/core.cpp:56
#56 0x0000000000421cf8 in Core::instance () at /home/iggy/projects/screengrab/src/core/core.cpp:92
#57 0x00000000004291d8 in Config::setDefaultSettings (this=0x336acb0) at /home/iggy/projects/screengrab/src/core/config.cpp:570
#58 0x0000000000425be0 in Config::Config (this=0x336acb0) at /home/iggy/projects/screengrab/src/core/config.cpp:75
#59 0x0000000000425e5a in Config::instance () at /home/iggy/projects/screengrab/src/core/config.cpp:97
---Type <return> to continue, or q <return> to quit---q
Quit
(gdb)

The last couple of lines repeat forever from what I can tell.

DOOMer commented 11 years ago

Please give me log of build and infor of Qt & gcc useed.

iggy commented 10 years ago

Totally missed that you wanted more info. My bad.

Build log

iggy@iggy-XPS12:~/projects/screengrab/_build$ make [ 1%] Generating moc_extedit.cxx Scanning dependencies of target extedit [ 2%] Building CXX object src/modules/extedit/CMakeFiles/extedit.dir/moduleextedit.cpp.o [ 3%] Building CXX object src/modules/extedit/CMakeFiles/extedit.dir/extedit.cpp.o /home/iggy/projects/screengrab/src/modules/extedit/extedit.cpp:81:6: warning: unused parameter ‘exitCode’ [-Wunused-parameter /home/iggy/projects/screengrab/src/modules/extedit/extedit.cpp:81:6: warning: unused parameter ‘exitStatus’ [-Wunused-parameter /home/iggy/projects/screengrab/src/modules/extedit/extedit.cpp:98:6: warning: unused parameter ‘path’ [-Wunused-parameter [ 4%] Building CXX object src/modules/extedit/CMakeFiles/extedit.dir/moc_extedit.cxx.o Linking CXX shared library libextedit.so [ 4%] Built target extedit [ 6%] Generating ui_uploaderconfigwidget_imgshack.h [ 7%] Generating moc_moduleuploader.cxx [ 8%] Generating moc_uploader.cxx [ 9%] Generating imgshack/moc_uploader_imgshack.cxx [ 10%] Generating imgur/moc_uploader_imgur.cxx [ 12%] Generating moc_dialoguploader.cxx [ 13%] Generating moc_uploaderconfigwidget.cxx [ 14%] Generating imgur/moc_uploader_imgur_widget.cxx [ 15%] Generating imgur/moc_uploaderconfigwidget_imgur.cxx [ 17%] Generating imgshack/moc_uploader_imgshack_widget.cxx [ 18%] Generating imgshack/moc_uploaderconfigwidget_imgshack.cxx [ 19%] Generating ui_dialoguploader.h /home/iggy/projects/screengrab/src/modules/uploader/dialoguploader.ui: Warning: Z-order assignment: 'verticalSpacer_2' is not a valid widget [ 20%] Generating ui_uploaderconfigwidget.h [ 21%] Generating ui_uploader_imgur_widget.h [ 23%] Generating ui_uploaderconfigwidget_imgur.h [ 24%] Generating ui_uploader_imgshack_widget.h Scanning dependencies of target uploader [ 25%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/moduleuploader.cpp.o [ 26%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/uploader.cpp.o [ 28%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgshack/uploader_imgshack.cpp.o [ 29%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgur/uploader_imgur.cpp.o [ 30%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/uploaderconfig.cpp.o [ 31%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/dialoguploader.cpp.o [ 32%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/uploaderconfigwidget.cpp.o [ 34%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgur/uploader_imgur_widget.cpp.o [ 35%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgur/uploaderconfigwidget_imgur.cpp.o [ 36%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgshack/uploader_imgshack_widget.cpp.o [ 37%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgshack/uploaderconfigwidget_imgshack.cpp.o [ 39%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/moc_moduleuploader.cxx.o [ 40%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/moc_uploader.cxx.o [ 41%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgshack/moc_uploader_imgshack.cxx.o [ 42%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgur/moc_uploader_imgur.cxx.o [ 43%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/moc_dialoguploader.cxx.o [ 45%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/moc_uploaderconfigwidget.cxx.o [ 46%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgur/moc_uploader_imgur_widget.cxx.o [ 47%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgur/moc_uploaderconfigwidget_imgur.cxx.o [ 48%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgshack/moc_uploader_imgshack_widget.cxx.o [ 50%] Building CXX object src/modules/uploader/CMakeFiles/uploader.dir/imgshack/moc_uploaderconfigwidget_imgshack.cxx.o Linking CXX shared library libuploader.so [ 50%] Built target uploader [ 51%] Generating src/gui/moc_qxtglobalshortcut.cxx Scanning dependencies of target qxt [ 52%] Building CXX object src/3rdparty/qxt/CMakeFiles/qxt.dir/src/core/qxtglobal.cpp.o [ 53%] Building CXX object src/3rdparty/qxt/CMakeFiles/qxt.dir/src/gui/qxtglobalshortcut.cpp.o [ 54%] Building CXX object src/3rdparty/qxt/CMakeFiles/qxt.dir/src/gui/qxtglobalshortcut_x11.cpp.o [ 56%] Building CXX object src/3rdparty/qxt/CMakeFiles/qxt.dir/src/gui/moc_qxtglobalshortcut.cxx.o Linking CXX static library libqxt.a [ 56%] Built target qxt [ 57%] Generating src/moc_qkeysequencewidget_p.cxx [ 58%] Generating qrc_qkeysequencewidget.cxx [ 59%] Generating src/moc_qkeysequencewidget.cxx Scanning dependencies of target qkeysequencewidget [ 60%] Building CXX object src/common/qkeysequencewidget/CMakeFiles/qkeysequencewidget.dir/src/qkeysequencewidget.cpp.o [ 62%] Building CXX object src/common/qkeysequencewidget/CMakeFiles/qkeysequencewidget.dir/src/moc_qkeysequencewidget.cxx.o [ 63%] Building CXX object src/common/qkeysequencewidget/CMakeFiles/qkeysequencewidget.dir/src/moc_qkeysequencewidget_p.cxx.o [ 64%] Building CXX object src/common/qkeysequencewidget/CMakeFiles/qkeysequencewidget.dir/qrc_qkeysequencewidget.cxx.o Linking CXX static library libqkeysequencewidget.a [ 64%] Built target qkeysequencewidget [ 65%] Generating moc_singleapp.cxx Scanning dependencies of target singleapp [ 67%] Building CXX object src/common/singleapp/CMakeFiles/singleapp.dir/singleapp.cpp.o [ 68%] Building CXX object src/common/singleapp/CMakeFiles/singleapp.dir/moc_singleapp.cxx.o Linking CXX static library libsingleapp.a [ 68%] Built target singleapp [ 69%] Generating qrc_screengrab.cxx [ 70%] Generating src/core/moc_core.cxx [ 71%] Generating src/core/moc_regionselect.cxx [ 73%] Generating src/ui/moc_configwidget.cxx [ 74%] Generating src/ui/moc_about.cxx [ 75%] Generating src/ui/moc_mainwindow.cxx [ 76%] Generating ui_configwidget.h [ 78%] Generating ui_aboutwidget.h [ 79%] Generating ui_mainwindow.h Scanning dependencies of target screengrab [ 80%] Building CXX object CMakeFiles/screengrab.dir/src/main.cpp.o [ 81%] Building CXX object CMakeFiles/screengrab.dir/src/core/core.cpp.o /home/iggy/projects/screengrab/src/core/core.cpp:540:6: warning: unused parameter ‘exitCode’ [-Wunused-parameter /home/iggy/projects/screengrab/src/core/core.cpp:540:6: warning: unused parameter ‘exitStatus’ [-Wunused-parameter [ 82%] Building CXX object CMakeFiles/screengrab.dir/src/core/config.cpp.o [ 84%] Building CXX object CMakeFiles/screengrab.dir/src/core/regionselect.cpp.o [ 85%] Building CXX object CMakeFiles/screengrab.dir/src/core/cmdline.cpp.o [ 86%] Building CXX object CMakeFiles/screengrab.dir/src/core/shortcutmanager.cpp.o [ 87%] Building CXX object CMakeFiles/screengrab.dir/src/core/modulemanager.cpp.o [ 89%] Building CXX object CMakeFiles/screengrab.dir/src/ui/configwidget.cpp.o [ 90%] Building CXX object CMakeFiles/screengrab.dir/src/ui/about.cpp.o [ 91%] Building CXX object CMakeFiles/screengrab.dir/src/ui/mainwindow.cpp.o [ 92%] Building CXX object CMakeFiles/screengrab.dir/src/common/netwm/netwm.cpp.o [ 93%] Building CXX object CMakeFiles/screengrab.dir/src/core/moc_core.cxx.o [ 95%] Building CXX object CMakeFiles/screengrab.dir/src/core/moc_regionselect.cxx.o [ 96%] Building CXX object CMakeFiles/screengrab.dir/src/ui/moc_configwidget.cxx.o [ 97%] Building CXX object CMakeFiles/screengrab.dir/src/ui/moc_about.cxx.o [ 98%] Building CXX object CMakeFiles/screengrab.dir/src/ui/moc_mainwindow.cxx.o [100%] Building CXX object CMakeFiles/screengrab.dir/qrc_screengrab.cxx.o Linking CXX executable screengrab [100%] Built target screengrab

Info

LSB Version: core-2.0-amd64:core-2.0-noarch:core-3.0-amd64:core-3.0-noarch:core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-noarch:core-4.0-amd64:core-4.0-noarch:cxx-3.0-amd64:cxx-3.0-noarch:cxx-3.1-amd64:cxx-3.1-noarch:cxx-3.2-amd64:cxx-3.2-noarch:cxx-4.0-amd64:cxx-4.0-noarch:desktop-3.1-amd64:desktop-3.1-noarch:desktop-3.2-amd64:desktop-3.2-noarch:desktop-4.0-amd64:desktop-4.0-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.0-amd64:graphics-3.0-noarch:graphics-3.1-amd64:graphics-3.1-noarch:graphics-3.2-amd64:graphics-3.2-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-3.2-amd64:printing-3.2-noarch:printing-4.0-amd64:printing-4.0-noarch:qt4-3.1-amd64:qt4-3.1-noarch Distributor ID: Ubuntu Description: Ubuntu 13.04 Release: 13.04 Codename: raring

QT 4.8.4

gcc (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3

agaida commented 10 years ago

have this segfault too on a sid system. Solution:

mkdir ~/.config/sreengrab 
touch ~/.config/screengrab/screengrab.conf
iggy commented 10 years ago

Confirmed it's fixed. Thanks for getting it fixed guys.