Bug report #16067

Geometry checker crashes/seg fault

Added by Giovanni Manghi over 7 years ago. Updated over 7 years ago.

Status:Closed
Priority:High
Assignee:Sandro Mani
Category:C++ plugins/Geometry Checker
Affected QGIS version:2.14.10 Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:fixed/implemented
Crashes QGIS or corrupts data:Yes Copied to github as #:23982

Description

Use the attached dataset with the provided configurations (see screenshots):

once fixed the auto-intersection the table/resume with fixed problems and new ones is shows (notice that under Linux/kde the list of new/unsolved problems is empty, while it seems to look as expected under Windows).

If the user then clicks on one of the records/rows representing the new/unfixed problems it gets instant crash.

Tested on 2.18.2 on kubuntu 16.04 (qgis from repos) and on Windows under 2.14.10 and 2.18.2.

giovanni@sibirica:~$ qgis
Warning: loading of qgis translation failed [/usr/share/qgis/i18n//qgis_en_US]
Warning: loading of qt translation failed [/usr/share/qt4/translations/qt_en_US]
Warning: QCss::Parser - Failed to load file "/style.qss"
Warning: QLayout: Attempting to add QLayout "" to QgsPanelWidgetStack "mWidgetStack", which already has a layout
Segmentation fault (core dumped)

invalid_geometries.zip (35.3 KB) Giovanni Manghi, 2017-01-12 06:54 AM

Screenshot_20170112_144855.png (127 KB) Giovanni Manghi, 2017-01-12 06:54 AM

Screenshot_20170112_144858.png (131 KB) Giovanni Manghi, 2017-01-12 06:54 AM

Screenshot_20170112_144906.png (133 KB) Giovanni Manghi, 2017-01-12 06:54 AM

Screenshot_20170112_144914.png (106 KB) Giovanni Manghi, 2017-01-12 06:54 AM

Screenshot_20170112_144919.png (138 KB) Giovanni Manghi, 2017-01-12 06:54 AM

Screenshot_20170112_144927.png (109 KB) Giovanni Manghi, 2017-01-12 06:54 AM

History

#1 Updated by Giovanni Manghi over 7 years ago

actually on Windows the crash is instant right after pressing "run".

#2 Updated by Sandro Mani over 7 years ago

Looks like something regressed here... I'll investigate.

#3 Updated by Sandro Mani over 7 years ago

  • Status changed from Open to Closed
  • Resolution set to fixed/implemented

Actually this was already patched in master half a year ago but didn't make it into 2.18... Backported

#660df4ac57f444c67a3e190247250a0928db8eae

#4 Updated by Giovanni Manghi over 7 years ago

Hi Sandro, thanks!

it will also be backported to 2.14?

#5 Updated by Sandro Mani over 7 years ago

2.14 has an earlier version of this patch so should not suffer from this crash.

#6 Updated by Giovanni Manghi over 7 years ago

Sandro Mani wrote:

2.14 has an earlier version of this patch so should not suffer from this crash.

ummm... but it does, at least on my test (see above).

#7 Updated by Sandro Mani over 7 years ago

let me check that

#8 Updated by Sandro Mani over 7 years ago

What rev are you using? Testing with f4d9514c1d1e7bf13b3bc1cba570ba9996f3ebf3 it works fine AFAICS, i.e. no blank entries in the results table.

#9 Updated by Giovanni Manghi over 7 years ago

Sandro Mani wrote:

What rev are you using? Testing with f4d9514c1d1e7bf13b3bc1cba570ba9996f3ebf3 it works fine AFAICS, i.e. no blank entries in the results table.

Hi Sandro,

the blank table entries are only on KDE/Ubuntu, qgis 2.18.2 rev 102ee87

I cannot test other DE now.

The crashes are also on Windows with QGIS 2.14.* (tested different point releases, included .3, .7 and .10)

#10 Updated by Sandro Mani over 7 years ago

So on windows it crashes when selecting one of the newly added errors (i.e. the gaps)?

#11 Updated by Giovanni Manghi over 7 years ago

Sandro Mani wrote:

So on windows it crashes when selecting one of the newly added errors (i.e. the gaps)?

no, it crashes when hitting "run".

#12 Updated by Giovanni Manghi over 7 years ago

Sandro Mani wrote:

So on windows it crashes when selecting one of the newly added errors (i.e. the gaps)?

Confirmed the crash on "run" on Windows with qgis 2.14.11 64bit installed with osgeo4w.

#13 Updated by Giovanni Manghi over 7 years ago

  • Resolution deleted (fixed/implemented)
  • Affected QGIS version changed from 2.18.2 to 2.14.10
  • Target version changed from Version 2.18 to Version 2.14
  • Status changed from Closed to Reopened

Sandro I'm reopening because (unless I'm wrong) this should be fixed also on ltr.

#14 Updated by Bogdan Hlevca over 7 years ago

On Linux, all my versions crash with this error. I tried the official OpenSuse 42.2 builds: master/2.18/ltr and my own builds: master/2.18.1/2.18.3 branches.

I don't think I changed anything in the qt4 environment.

high:~ # qgis
Warning: loading of qgis translation failed [/usr/local/share/qgis/i18n//qgis_en_CA]
Warning: loading of qt translation failed [/usr/share/qt4/translations/qt_en_CA]
Warning: QCss::Parser - Failed to load file "/style.qss"
QInotifyFileSystemWatcherEngine::addPaths: inotify_add_watch failed: No such file or directory
Warning: QFileSystemWatcher: failed to add paths: /root/.qgis2//project_templates
Warning: QLayout: Attempting to add QLayout "" to QgsPanelWidgetStack "mWidgetStack", which already has a layout
Segmentation fault (core dumped)

#15 Updated by Sandro Mani over 7 years ago

Uhm, even latest 2.18 with f4d9514c1d1e7bf13b3bc1cba570ba9996f3ebf3? If so, can you give more details steps to reproduce or a backtrace?

#16 Updated by Bogdan Hlevca over 7 years ago

Unfortunately, there is not much to be said except that I should build it in debug mode to capture more output.

The crash happens on startup. I tried to remove the plugins and the .qgis/ but it did not make a difference. I am o KDE platform with the newest QT5 which may interfere. I tried to build the QT5 version. Actually in master I could build only in Qt5. That crashes with no trace so it is even worse.

I tried to compile now 2.18 and I cannot. it complains abouterror: ‘sipName_QString’ was not declared in this scope.

I see that other people complain about it [[https://aur.archlinux.org/packages/qgis/]]. It appears that it is sip related and I don't think that I can downgrade anything. I guess I am stuck of not being able to use QGIS for a while.

I will try to build again in Debug mode and see if I can get you more information. I can send you a 'ltrace` run see below:

bogdan@high:QGIS/build-master> ltrace /usr/bin/qgis
__libc_start_main([ "/usr/bin/qgis" ] <unfinished ...>
_ZNSt8ios_base4InitC1Ev(0xad6878, 0x7ffc49597e88, 0x7ffc49597e98, 16)        = 1299
__cxa_atexit(0x405660, 0xad6878, 0xad6600, 16)                               = 0
_ZN7QString16fromAscii_helperEPKci(0x40dbde, 0xffffffff, 18, 17)             = 0x7f99f82478e0
__cxa_atexit(0x40c8f0, 0xad6870, 0xad6600, 17)                               = 0
__cxa_atexit(0x40c910, 0xad6860, 0xad6600, 18)                               = 0
_Z21qRegisterResourceDataiPKhS0_S0_(1, 0x40e8c0, 0x410900, 0x416b80)         = 1
__cxa_atexit(0x40da00, 0xad687c, 0xad6600, 0x1c6f8e0)                        = 0
_Z21qRegisterResourceDataiPKhS0_S0_(1, 0x894640, 0x8946c0, 0x8947a0)         = 1
__cxa_atexit(0x40da80, 0xad6884, 0xad6600, 0x1c6f8e0)                        = 0
_Z18qInstallMsgHandlerPFv9QtMsgTypePKcE(0x40af90, 0x7ffc49597e88, 0x7ffc49597e98, 21) = 0
time(nil)                                                                    = 1485275035
_Z6qsrandj(0x58877f9b, 0x7ffc49597e88, 0x7ffc49597e98, 21)                   = 0x1c7e648
_ZN7QString16fromAscii_helperEPKci(0x40dbde, 0xffffffff, 1, 0x7f99f1472620)  = 0x7f99f82478e0
_ZN7QString16fromAscii_helperEPKci(0x40dc09, 0xffffffff, 0x40db01, 0x7f99f1472620) = 0x1c7e660
_ZN12QgsRectangleC1Edddd(0x7ffc49597b00, 50, 6, 0x1c7e67a)                   = 1
_ZN7QString16fromAscii_helperEPKci(0x40dbde, 0xffffffff, 6, 0x1c7e67a)       = 0x7f99f82478e0                                 
_ZN7QString9fromAsciiEPKci(0x7ffc49597820, 0x40dc10, 0xffffffff, 0x1c7e67a)  = 0x7ffc49597820                                 
_ZN16QCoreApplicationC1ERiPPci(0x7ffc49597b40, 0x7ffc4959734c, 0x7ffc49597e88, 0x1040806) = 0x7f99f8245e30                    
_ZN16QCoreApplication9argumentsEv(0x7ffc49597410, 0x1c85420, 0x1c987c0, 1)   = 0x7ffc49597410                                 
_ZN16QCoreApplicationD1Ev(0x7ffc49597b40, 0x7ffc49597410, 0, 0)              = 0x7ffc49597b40                                 
_ZN9QFileInfoC1ERK7QString(0x7ffc49597620, 0x1c9bab8, 2, 1)                  = 0x1c8f601                                      
_ZNK9QFileInfo16absoluteFilePathEv(0x7ffc49597630, 0x7ffc49597620, 0x1c8f601, 0x7f99f1472620) = 0x7ffc49597630                
_ZN4QDir18toNativeSeparatorsERK7QString(0x7ffc49597b20, 0x7ffc49597630, 0x1c8df01, 0x7f99f1472620) = 0x7ffc49597b20           
_ZN9QFileInfoD1Ev(0x7ffc49597620, 0x7ffc49597630, 0x1c8df01, 0x7f99f1472601) = 1                                              
_ZN7QString16fromAscii_helperEPKci(0x40ddbf, 0xffffffff, 0, 0x1c8f3c0)       = 0x1c8f380                                      
_ZNK7QString7indexOfERKS_iN2Qt15CaseSensitivityE(0x7ffc49597b20, 0x7ffc49597b40, 0, 1) = 0xffffffff                           
_ZN7QString4freeEPNS_4DataE(0x1c8f380, 1474, 0x7ffc49597a00, 3)              = 0x1c7cbe0                                      
_ZN7QString4freeEPNS_4DataE(0x1c8df40, 0xffffffff, 0x7f99f1472600, 0x1c7cbe0) = 0x1c98800                                     
getenv("DISPLAY")                                                            = ":0"                                           
_ZN7QString16fromAscii_helperEPKci(0x40ddcc, 0xffffffff, 5, 6)               = 0x1c84260                                      
_ZN14QgsApplicationC1ERiPPcbRK7QStringS5_(0x7ffc49597ac0, 0x7ffc4959734c, 0x7ffc49597e88, 1) = 0x1dc3c90                      
_ZN14QgsApplication11appIconPathEv(0x7ffc49597660, 0xffffffff, 0x7f99f1472601, 0x1dc3c90) = 0x7ffc49597660                    
_ZN5QIconC1ERK7QString(0x7ffc49597670, 0x7ffc49597660, 3, 0x1da79aa)         = 0                                              
_ZN12QApplication13setWindowIconERK5QIcon(0x7ffc49597670, 0x7f99fb1ab190, 1, 0x7f99fb1aa878) = 0x7f99f8242890                 
_ZN5QIconD1Ev(0x7ffc49597670, 0, 0xad6601, 0)                                = 0x1da8690
_ZN7QString4freeEPNS_4DataE(0x1da7970, 0, 0xad6600, 0)                       = 0
_ZN7QString16fromAscii_helperEPKci(0x7f99f8ca5cac, 0xffffffff, 0x7f99f1472640, 0) = 0x1da3570
_ZN16QCoreApplication19setOrganizationNameERK7QString(0x7ffc49597b40, 83, 4, 0x1da358a) = 0x1c84050
_ZN7QString16fromAscii_helperEPKci(0x7f99f8c8d7f5, 0xffffffff, 1, 0x1da358a) = 0x1de8570
_ZN16QCoreApplication21setOrganizationDomainERK7QString(0x7ffc49597b40, 103, 8, 0x1de858a) = 0x1c84058
_ZN7QString16fromAscii_helperEPKci(0x7f99f8c8d7ef, 0xffffffff, 1, 0x1de858a) = 0x1d83ec0
_ZN16QCoreApplication18setApplicationNameERK7QString(0x7ffc49597b40, 50, 5, 0x1d83eda) = 0x1c84060
_ZN16QCoreApplication12setAttributeEN2Qt20ApplicationAttributeEb(2, 0, 1, 0x1d83eda) = 0xfffffffb
_ZN7QString16fromAscii_helperEPKci(0x40ddd4, 0xffffffff, 0x7f99f82487f0, 2)  = 0x1d43800
_ZN7QString16fromAscii_helperEPKci(0x40ddd9, 0xffffffff, 4, 0x1d4381a)       = 0x1da7970
_Znwm(16, 50, 2, 0x1da79aa)                                                  = 0x1de7ed0
_ZN9QSettingsC1ERK7QStringS2_P7QObject(0x1de7ed0, 0x7ffc49597b20, 0x7ffc49597b40, 0) = 0x7f99f8244a10
_ZN16QgsCustomization8instanceEv(0x7ffc49597b20, 0x7f99fb1ab190, 1, 0x7f99fb1aa878) = 0x1de8200
_ZN16QgsCustomization8instanceEv(0x7f99f1472620, 0, 0, 0x1d84220)            = 0x1de8200
_ZN16QgsCustomization11loadDefaultEv(0x1de8200, 0, 0, 0x1d84220)             = 0x7ffc49597210
_ZN9QSettingsC1EP7QObject(0x7ffc49597920, 0, 0, 0x1d84220)                   = 0x7f99f8244a10
_ZN7QString16fromAscii_helperEPKci(0x40ddec, 0xffffffff, 1, 0x7f99fb1aa878)  = 0x1d84230
_ZNK9QSettings8containsERK7QString(0x7ffc49597920, 0x7ffc49597b40, 7, 0x1d8424a) = 1
_ZN7QString4freeEPNS_4DataE(0x1d84230, 0xffffffff, 0x7f99f1472600, 0x1d834b0) = 0x1d84b40
_ZN8QVariantC1EPKc(0x7ffc49597930, 0x40ddf4, 0x7f99f1472638, 0x1d84b40)      = 0x1d84230
_ZN7QString16fromAscii_helperEPKci(0x40ddec, 0xffffffff, 0xfa328001, 0x1d8424a) = 0x1d84b50
_ZNK9QSettings5valueERK7QStringRK8QVariant(0x7ffc49597940, 0x7ffc49597920, 0x7ffc49597b40, 0x7ffc49597930) = 0x7ffc49597940
_ZNK8QVariant8toStringEv(0x7ffc49597ae0, 0x7ffc49597940, 0x7f99f1472638, 0x1d84760) = 0x7ffc49597ae0
_ZN8QVariantD1Ev(0x7ffc49597940, 0x7ffc49597940, 1, 0x1d84760)               = 0
_ZN7QString4freeEPNS_4DataE(0x1d84b50, 0x7ffc49597940, 0xfffffffffff45200, 0x1d84760) = 0x1d834b0
_ZN8QVariantD1Ev(0x7ffc49597930, 0xffffffff, 0x7f99f1472638, 0x1d834b0)      = 0
_ZNK7QStringeqERK13QLatin1String(0x7ffc49597ae0, 0x7ffc495972a0, 0x7f99f1472638, 0x1d84b40) = 0
_ZNK7QStringeqERK13QLatin1String(0x7ffc49597ae0, 0x7ffc495972a0, 0x40ddfc, 103) = 0
_ZNK7QStringeqERK13QLatin1String(0x7ffc49597ae0, 0x7ffc495972a0, 0x40de00, 99) = 0
_ZN8QVariantC1Eb(0x7ffc49597960, 0, 0x40de01, 110)                           = 1
_ZN7QString16fromAscii_helperEPKci(0x40de0e, 0xffffffff, 0x40de01, 110)      = 0x1d84390
_ZNK9QSettings5valueERK7QStringRK8QVariant(0x7ffc49597970, 0x7ffc49597920, 0x7ffc49597b40, 0x7ffc49597960) = 0x7ffc49597970
_ZNK8QVariant6toBoolEv(0x7ffc49597970, 0xffffffff, 0x7f99f1472601, 0)        = 0
_ZN8QVariantD1Ev(0x7ffc49597970, 0x7ffc495971e0, 0x7f99f7f44c01, 0)          = 0
_ZN7QString4freeEPNS_4DataE(0x1d84390, 0x7ffc495971e0, 0xfffffffffff45200, 0) = 0x1d840c0
_ZN8QVariantD1Ev(0x7ffc49597960, 0xffffffff, 0x7f99f1472648, 0x1d840c0)      = 0x3ffffff9
_ZN7QString16fromAscii_helperEPKci(0x40de56, 0xffffffff, 0x7f99f1472648, 0x1d840c0) = 0x1d8afe0
_ZNK9QSettings5valueERK7QStringRK8QVariant(0x7ffc495979a0, 0x7ffc49597920, 0x7ffc49597b20, 0x7ffc49597b40) = 0x7ffc495979a0
_ZNK8QVariant8toStringEv(0x7ffc49597850, 0x7ffc495979a0, 0x7f99f1472638, 0)  = 0x7ffc49597850
_ZN8QVariantD1Ev(0x7ffc495979a0, 0x7ffc495979a0, 1, 0)                       = 0
_ZN7QString4freeEPNS_4DataE(0x1d8afe0, 0x7ffc495979a0, 0xfffffffffff45200, 0) = 0x1d6ad60
_ZN8QVariantD1Ev(0x7ffc49597b40, 0xffffffff, 0x7f99f1472638, 0x1d6ad60)      = 0x3ffffff8
_ZN12QApplication8setStyleERK7QString(0x7ffc49597850, 0xffffffff, 0x7f99f1472638, 0x1d6ad60 <unfinished ...>
_ZN6QMutexD1Ev(0x1d49938, 0xffffffff, 0x7f99f1472628, 0x1d33dc0)             = 0x1ded310
<... _ZN12QApplication8setStyleERK7QString resumed> )                        = 0x1d6adb0
_ZN12QApplication5styleEv(0x7ffc49597230, 0, 1, 4)                           = 0x1d6adb0
_ZNK7QObject10objectNameEv(0x7ffc495976d0, 0x1d6adb0, 1, 4)                  = 0x7ffc495976d0
_ZN8QVariantC1ERK7QString(0x7ffc495979b0, 0x7ffc495976d0, 0x1d71ff0, 1)      = 0x1d71ff0
_ZN7QString16fromAscii_helperEPKci(0x40de56, 0xffffffff, 0x1d71f01, 1)       = 0x1d34940
_ZN9QSettings8setValueERK7QStringRK8QVariant(0x7ffc49597920, 0x7ffc49597b40, 0x7ffc495979b0, 0x1d3495a) = 0x1d349c0
_ZN7QString4freeEPNS_4DataE(0x1d34940, 0x7ffc495971e8, 0, 0x7f99f11b2560)    = 0x1d348f0
_ZN8QVariantD1Ev(0x7ffc495979b0, 0xffffffff, 0x7f99f1472638, 0x1d348f0)      = 0
_ZN14QgsApplication8i18nPathEv(0x7ffc49597860, 0xffffffff, 0xfffffffffff45201, 0x1d348f0) = 0x7ffc49597860
_ZN8QVariantC1EPKc(0x7ffc495979c0, 0x40dbde, 0x7f99f1472638, 0x1d348f0)      = 0x7f99f82478e0
_ZN7QString16fromAscii_helperEPKci(0x40de62, 0xffffffff, 0xfa328001, 0x1d348f0) = 0x1dac9f0
_ZNK9QSettings5valueERK7QStringRK8QVariant(0x7ffc495979d0, 0x7ffc49597920, 0x7ffc49597b40, 0x7ffc495979c0) = 0x7ffc495979d0
_ZNK8QVariant8toStringEv(0x7ffc49597870, 0x7ffc495979d0, 0x7f99f1472601, 0x1d84a10) = 0x7ffc49597870
_ZN8QVariantD1Ev(0x7ffc495979d0, 0x7ffc495979d0, 1, 0x1d84a10)               = 0
_ZN7QString4freeEPNS_4DataE(0x1dac9f0, 0x7ffc495979d0, 0xfffffffffff45200, 0x1d84a10) = 0x1da6b50
_ZN8QVariantD1Ev(0x7ffc495979c0, 0xffffffff, 0x7f99f1472640, 0x1da6b50)      = 0
_ZN8QVariantC1Eb(0x7ffc495979e0, 0, 0xfffffffffff45201, 0x1da6b50)           = 1
_ZN7QString16fromAscii_helperEPKci(0x40de74, 0xffffffff, 0xfffffffffff45201, 0x1da6b50) = 0x1dac9f0
_ZNK9QSettings5valueERK7QStringRK8QVariant(0x7ffc495979f0, 0x7ffc49597920, 0x7ffc49597b40, 0x7ffc495979e0) = 0x7ffc495979f0
_ZNK8QVariant6toBoolEv(0x7ffc495979f0, 0xffffffff, 0x7f99f1472601, 0x1d84a10) = 0
_ZN8QVariantD1Ev(0x7ffc495979f0, 0x7ffc495971e0, 0x7f99f7f44c01, 0)          = 0
_ZN7QString4freeEPNS_4DataE(0x1dac9f0, 0x7ffc495971e0, 0xfffffffffff45200, 0) = 0x1da6b50
_ZN8QVariantD1Ev(0x7ffc495979e0, 0xffffffff, 0x7f99f1472640, 0x1da6b50)      = 0x3ffffff9
_ZN7QLocale6systemEv(0x7ffc49597b40, 0xffffffff, 0xad6800, 0x1da6b50)        = 0x7ffc49597b40
_ZNK7QLocale4nameEv(0x7ffc495976e0, 0x7ffc49597b40, 0x7f99f7f76b40, 0)       = 0x7ffc495976e0
_ZN8QVariantC1ERK7QString(0x7ffc49597a10, 0x7ffc495973a0, 0x1d84901, 65)     = 0x1d849e0
_ZN7QString16fromAscii_helperEPKci(0x40de62, 0xffffffff, 0x1d84901, 65)      = 0x1dac9f0
_ZN9QSettings8setValueERK7QStringRK8QVariant(0x7ffc49597920, 0x7ffc49597b40, 0x7ffc49597a10, 0x1daca2a) = 0x1dac9f0
_ZN8QVariantD1Ev(0x7ffc49597a10, 0x7ffc49597a10, 0x1d84001, 1)               = 0
_ZN11QTranslatorC1EP7QObject(0x7ffc49597a20, 0, 0xfffffffffff45201, 1)       = 0x7f99f8245b90
_ZN11QTranslatorC1EP7QObject(0x7ffc49597a30, 0, 69, 0x7f99fb1aa878)          = 0x7f99f8245b90
_ZNK7QStringeqERK13QLatin1String(0x7ffc495973a0, 0x7ffc495972a0, 69, 0x7f99fb1aa878) = 0
_ZN7QString16fromAscii_helperEPKci(0x40de88, 0xffffffff, 0x40dc48, 67)       = 0x1deb490
_ZN7QString6appendERKS_(0x7ffc495976f0, 0x7ffc495973a0, 0x7ffc495973a0, 0x1deb401) = 0x7ffc495976f0
_ZN11QTranslator4loadERK7QStringS2_S2_S2_(0x7ffc49597a20, 0x7ffc495976f0, 0x7ffc49597860, 0x7ffc49597b20) = 0
_ZN7QString4freeEPNS_4DataE(0x1deb450, 0xffffffff, 0x7f99f1472600, 0x1dcb0a0) = 0x1d78c10
_ZN7QString4freeEPNS_4DataE(0x1deb490, 0xffffffff, 0x7f99f1472600, 0x1d78c10) = 0x1deb440
_ZN7QString16fromAscii_helperEPKci(0x40de8e, 0xffffffff, 0x7f99f1472601, 0x1deb440) = 0x1deb490
_ZNK7QString8multiArgEiPPKS_(0x7ffc49597700, 0x7ffc49597b40, 2, 0x7ffc49597aa0) = 0x7ffc49597700
_ZNK7QString11toLocal8BitEv(0x7ffc49597710, 0x7ffc49597700, 0, 0x1da6840)    = 0x7ffc49597710
_Z8qWarningPKcz(0x40e7b8, 0x1d84a38, 0x1d84a01, 0x7ffc49597710 <unfinished ...>
vfprintf(0x7f99f1473060, "Warning: %s\
", 0x7ffc49597018Warning: loading of qgis translation failed [/usr/share/qgis/i18n//qgis_en_CA]
)                    = 79
<... _Z8qWarningPKcz resumed> )                                              = 0x1da68f0
_Z5qFreePv(0x1d84a20, 0xffffffff, 0x7f99f1472600, 0x1da68f0)                 = 0x1d5e2f0
_ZN7QString4freeEPNS_4DataE(0x1dc3480, 0xffffffff, 0x7f99f1472600, 0x1d5e2f0) = 1
_ZN7QString4freeEPNS_4DataE(0x1deb490, 0, 0, 0x1d5e2f0)                      = 0x1deb440
_ZN12QLibraryInfo8locationENS_15LibraryLocationE(0x7ffc49597730, 7, 0x7f99f1472638, 0x1deb440) = 0x7ffc49597730
_ZN7QString16fromAscii_helperEPKci(0x40de99, 0xffffffff, 0, 0x1d66120)       = 0x1dc3f20
_ZN7QString6appendERKS_(0x7ffc49597720, 0x7ffc495973a0, 0x7ffc495973a0, 0x1dc3f01) = 0x7ffc49597720
_ZN11QTranslator4loadERK7QStringS2_S2_S2_(0x7ffc49597a30, 0x7ffc49597720, 0x7ffc49597730, 0x7ffc49597b20) = 0
_ZN7QString4freeEPNS_4DataE(0x1deb490, 0xffffffff, 0x7f99f1472600, 0x1d78c10) = 0x1deb440
_ZN7QString4freeEPNS_4DataE(0x1dc3f20, 0xffffffff, 0x7f99f1472600, 0x1deb440) = 0x1dc40e0
_ZN7QString4freeEPNS_4DataE(0x1d4f420, 0xffffffff, 0x7f99f1472600, 0x1dc40e0) = 1
_ZN12QLibraryInfo8locationENS_15LibraryLocationE(0x7ffc49597740, 7, 1, 0x1dc40e0) = 0x7ffc49597740
_ZN7QString16fromAscii_helperEPKci(0x40de9d, 0xffffffff, 0, 0x1d66120)       = 0x1deb490
_ZNK7QString8multiArgEiPPKS_(0x7ffc49597750, 0x7ffc49597b40, 2, 0x7ffc49597ab0) = 0x7ffc49597750
_ZNK7QString11toLocal8BitEv(0x7ffc49597760, 0x7ffc49597750, 0, 0x1dcc1b0)    = 0x7ffc49597760
_Z8qWarningPKcz(0x40e7e0, 0x1d84a38, 0x1d84a01, 0x7ffc49597760 <unfinished ...>
vfprintf(0x7f99f1473060, "Warning: %s\
", 0x7ffc49597018Warning: loading of qt translation failed [/usr/share/qt4/translations/qt_en_CA]
)                    = 81
<... _Z8qWarningPKcz resumed> )                                              = 0
_Z5qFreePv(0x1d84a20, 0xffffffff, 0x7f99f1472600, 0)                         = 0x1d5e2f0
_ZN7QString4freeEPNS_4DataE(0x1dc3550, 0xffffffff, 0x7f99f1472600, 0x1d5e2f0) = 1
_ZN7QString4freeEPNS_4DataE(0x1deb490, 0, 0, 0x1d5e2f0)                      = 0x1deb440
_ZN7QString4freeEPNS_4DataE(0x1dfd900, 0xffffffff, 0x7f99f1472600, 0x1deb440) = 1
_ZN16QgsCustomization8instanceEv(0x7f99f1472620, 0, 0, 0x1deb440)            = 0x1de8200
_ZN16QgsCustomization10splashPathEv(0x7ffc49597880, 0x1de8200, 0, 0x1deb440) = 0x7ffc49597880
_ZN7QString17fromLatin1_helperEPKci(0x40dea6, 0xffffffff, 0xfffffffffff45201, 0x1d66120) = 0x1d81a90
_ZN7QString6appendERKS_(0x7ffc49597770, 0x7ffc49597b40, 0x7ffc49597b40, 0x1d81a01) = 0x7ffc49597770
_ZN7QPixmapC1ERK7QStringPKc6QFlagsIN2Qt19ImageConversionFlagEE(0x7ffc49597ae0, 0x7ffc49597770, 0, 0x7ffc49597b20) = 1
_ZN7QString4freeEPNS_4DataE(0x1ee5590, 0, 0, 0)                              = 1
_ZN7QString4freeEPNS_4DataE(0x1d81a90, 0, 0, 0)                              = 0x1ee56f0
_ZN12QApplication7desktopEv(0, 0xffffffff, 0x7f99f1472638, 0x1ee56f0)        = 0x1ee5780
_ZN12QApplication7desktopEv(0, 7, 10000, 0)                                  = 0x1ee5780
_ZNK7QPixmap6scaledERK5QSizeN2Qt15AspectRatioModeENS3_18TransformationModeE(0x7ffc49597b20, 0x7ffc49597ae0, 0x7ffc49597810, 1) = 0x7ffc49597b20
_Znwm(40, 0x7f99fb1ab190, 1, 0x7f99fb1aa878)                                 = 0x1ee5af0
_ZN13QSplashScreenC1ERK7QPixmap6QFlagsIN2Qt10WindowTypeEE(0x1ee5af0, 0x7ffc49597b20, 0x7ffc49597b40, 0x7f99f1472620) = 0x1f4ce08
_ZN7QPixmapD1Ev(0x7ffc49597b20, 34, 4, 0x1f4ccc0)                            = 0
_ZN7QString16fromAscii_helperEPKci(0x40deb1, 0xffffffff, 1, 0x1f4ccc0)       = 0x1ee56e0
_ZNK9QSettings5valueERK7QStringRK8QVariant(0x7ffc49597a40, 0x7ffc49597920, 0x7ffc49597780, 0x7ffc49597b40) = 0x7ffc49597a40
_ZNK8QVariant6toBoolEv(0x7ffc49597a40, 0xffffffff, 0x7f99f1472648, 0)        = 0
_ZN8QVariantD1Ev(0x7ffc49597a40, 0x7ffc495971e0, 0x7f99f7f44c01, 0)          = 0
_ZN7QString4freeEPNS_4DataE(0x1ee56e0, 0x7ffc495971e0, 0xfffffffffff45200, 0) = 0x1dbdef0
_ZN8QVariantD1Ev(0x7ffc49597b40, 0xffffffff, 0x7f99f1472648, 0x1dbdef0)      = 0x3ffffff8
_ZNK7QPixmap4maskEv(0x7ffc49597b40, 0x7ffc49597ae0, 0x7f99f1472648, 0x1dbdef0) = 0x7ffc49597b40
_ZN7QWidget7setMaskERK7QBitmap(0x1ee5af0, 0x7ffc49597b40, 1, 0x7fffffff)     = 0x7f99f7d597a0
_ZN7QBitmapD1Ev(0x7ffc49597b40, 0x1f4cf20, 1, 0)                             = 0
_ZN8QVariantC1Eb(0x7ffc49597a50, 0, 26, 0x1f4ce08)                           = 1
_ZN7QString16fromAscii_helperEPKci(0x40e808, 0xffffffff, 26, 0x1f4ce08)      = 0x1f35670
_ZNK9QSettings5valueERK7QStringRK8QVariant(0x7ffc49597a60, 0x7ffc49597920, 0x7ffc49597790, 0x7ffc49597a50) = 0x7ffc49597a60
_ZNK8QVariant6toBoolEv(0x7ffc49597a60, 0xffffffff, 0x7f99f1472650, 0x218e6c0) = 0
_ZN8QVariantD1Ev(0x7ffc49597a60, 0xffffffff, 0x7f99f1472650, 0x218e6c0)      = 0x3ffffff9
_ZN7QString4freeEPNS_4DataE(0x1f35670, 0xffffffff, 0x7f99f1472600, 0x218e6c0) = 0x218e610
_ZN8QVariantD1Ev(0x7ffc49597a50, 0xffffffff, 0x7f99f1472650, 0x218e610)      = 0x3ffffff9
_ZN8QVariantC1Ei(0x7ffc49597a80, 0xffffffff, 0x7f99f1472650, 0x218e610)      = 2
_ZN7QString16fromAscii_helperEPKci(0x40decc, 0xffffffff, 0x7f99f1472650, 0x218e610) = 0x1dac9f0
_ZN9QSettingsC1EP7QObject(0x7ffc49597a70, 0, 1, 0x1daca2a)                   = 0x7f99f8244a10
_ZNK9QSettings5valueERK7QStringRK8QVariant(0x7ffc49597a90, 0x7ffc49597a70, 0x7ffc49597b40, 0x7ffc49597a80) = 0x7ffc49597a90
_ZNK8QVariant5toIntEPb(0x7ffc49597a90, 0, 0x7f99f1472640, 0)                 = 0xffffffff
_ZN14QgsApplication13setMaxThreadsEi(0xffffffff, 0xffffffd0, 0x7ffc49597002, 0x7ffc495971cf) = 1
_ZN8QVariantD1Ev(0x7ffc49597a90, 12, 0x1c9bbb0, 1)                           = 0
_ZN9QSettingsD1Ev(0x7ffc49597a70, 12, 0xfffffffffff45201, 1)                 = 0x7ffc49597a70
_ZN7QString4freeEPNS_4DataE(0x1dac9f0, 0, 0, 0x1f37ae0)                      = 0x20f7ba0
_ZN8QVariantD1Ev(0x7ffc49597a80, 0xffffffff, 0x7f99f1472640, 0x20f7ba0)      = 0x3ffffffa
_Znwm(2784, 0xffffffff, 0x7f99f1472640, 0x20f7ba0)                           = 0x1d690a0
_ZN7QgisAppC1EP13QSplashScreenbbP7QWidget6QFlagsIN2Qt10WindowTypeEE(0x1d690a0, 0x1ee5af0, 1, 0 <no return ...>
--- SIGCHLD (Child exited) ---
vfprintf(0x7f99f1473060, "Warning: %s\
", 0x7ffc49596038Warning: QCss::Parser - Failed to load file  "/style.qss" 
)                    = 59
vfprintf(0x7f99f1473060, "Warning: %s\
", 0x7ffc49596868Warning: QLayout: Attempting to add QLayout "" to QgsPanelWidgetStack "mWidgetStack", which already has a layout
)                    = 113
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++

#17 Updated by Sandro Mani over 7 years ago

Is your segfault actually related to the geometry checker?

#18 Updated by Bogdan Hlevca over 7 years ago

I am not sure. It happens at startup. This may be the wrong place to report it, but I found it based on the crash reports. I believe that there is a sip related problem.

#19 Updated by Sandro Mani over 7 years ago

So this is most definitely not this (or even a) geometry checker bug. Please have a look at the description of the issue to ensure the information you post is actually relevant.

In your case you should use gdb to gather a stack trace and then report a new issues with that information. Without a stack trace, it is near impossible for people to help you since "crash on start" is way to vague.

Concerning the sip problem in particular: the recently released sip-4.19 removes a number of methods which have been marked deprecated for a number of years. Some of these methods are still used in recent qgis 2.x releases, hence the build failure. I've a work-in-progress patch here [1] which should get most things building except an issue with the qgis-server code I haven't yet managed to figure out how to fix.

[1] https://smani.fedorapeople.org/qgis-2.18_sip-4.19.patch

#20 Updated by Giovanni Manghi over 7 years ago

In your case you should use gdb to gather a stack trace and then report a new issues with that information. Without a stack trace, it is near impossible for people to help you since "crash on start" is way to vague.

Sandro, I will try to get you the stack trace from Windows crash (that I have no idea how to get it, but I will try). But the description is defintely NOT vague. With the provided dataset, with the provided configurations, on Windows, QGIS crashes when clicking on "run" in the geometry checker tool. I can't see how this is vague.

This does NOT happens on Linux (not on clicking "run" anyway). There it happens after clicking on the (new) errors rows after a first run to clean an auto-intersection. That row by the way, are empty here on KDE.

#21 Updated by Giovanni Manghi over 7 years ago

In your case you should use gdb to gather a stack trace and then report a new issues with that information. Without a stack trace, it is near impossible for people to help you since "crash on start" is way to vague.

A screencast is ok to clear this "vagueness"?

#22 Updated by Sandro Mani over 7 years ago

I was referring to the issue Bogdan Hlevca is experiencing which is a crash when starting qgis. In his case, since no actual steps were performed in QGIS itself as I understand, for a developer there is no way to know what's going on without a stacktrace.

In your case, you reported pretty detailed steps how to reproduce and as far as Linux was concerned it was pretty straight forward to debug. Windows which cannot be reproduced on Linux are more annoying because I need access to a windows + visual studio machine and then build qgis there before even being able to start debugging... That said, if you can provide a stracktrace of the windows crash I'd clearly be happy, especially if it spares me the effort of the windows build ;)

#23 Updated by Bogdan Hlevca over 7 years ago

Because I cannot compile I can run only the binaries provided by OpenSuse, which do not have enough debug info. See below. I thought that ltrace may have helped you a bit. I still think it is sip related as is the only dependency that got changed at the latest upgrade. I will try you patch and see if I can compile

bogdan@high:/software/software/Graphics/Maps/QGIS/build-master> gdb /usr/bin/qgis
GNU gdb (GDB; openSUSE Leap 42.2) 7.11.1
Copyright (C) 2016 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-suse-linux".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.opensuse.org/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/qgis...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/qgis 
Missing separate debuginfos, use: zypper install qgis-debuginfo-2.18.3-2.2.x86_64
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Warning: loading of qgis translation failed [/usr/share/qgis/i18n//qgis_en_CA]
Warning: loading of qt translation failed [/usr/share/qt4/translations/qt_en_CA]
[New Thread 0x7fffd49bc700 (LWP 4821)]
[New Thread 0x7fffcf5b7700 (LWP 4822)]
[New Thread 0x7fffce736700 (LWP 4823)]
[New Thread 0x7fffcdf35700 (LWP 4824)]
Detaching after fork from child process 4825.
Warning: QCss::Parser - Failed to load file  "/style.qss" 
[New Thread 0x7fffcd734700 (LWP 4826)]
[New Thread 0x7fffccf33700 (LWP 4827)]
[New Thread 0x7fffbffff700 (LWP 4828)]
Warning: QLayout: Attempting to add QLayout "" to QgsPanelWidgetStack "mWidgetStack", which already has a layout

Thread 1 "qgis" received signal SIGSEGV, Segmentation fault.
0x00007fffedf041ea in strlen () from /lib64/libc.so.6

#24 Updated by Bogdan Hlevca over 7 years ago

I compiled fine with your patch but the crash is still there. Here is a backtrace

(gdb) backtrace
#0  0x00007ffff636b937 in QwtSeriesStore<QPointF>::setData(QwtSeriesData<QPointF>*) () at /usr/lib64/libqwt.so.6
#1  0x00007ffff6369c68 in QwtPlotCurve::init() () at /usr/lib64/libqwt.so.6
#2  0x00007fffed96fb61 in QwtPlotCurve::QwtPlotCurve() () at /usr/lib64/libqwt.so.5
#3  0x00007ffff7868010 in QgsGPSInformationWidget::QgsGPSInformationWidget(QgsMapCanvas*, QWidget*, QFlags<Qt::WindowType>) () at /usr/lib64/libqgis_app.so.2.18.3
#4  0x00007ffff755adc4 in QgisApp::QgisApp(QSplashScreen*, bool, bool, QWidget*, QFlags<Qt::WindowType>) ()
    at /usr/lib64/libqgis_app.so.2.18.3
#5  0x0000000000409f9e in main ()


(gdb) new-backtrace
Python Exception <type 'exceptions.TypeError'> 'NoneType' object is not iterable: 
#0  0x7ffff636b937 in QwtSeriesStore<QPointF>::setData(QwtSeriesData<QPointF>*) (Error occurred in Python command: 'NoneType' object is not iterable

I hope that it helps because I am really depending on the tools and I don't have a single version that works on my machine and changing the whole library environment is not a viable option.

#25 Updated by Bogdan Hlevca over 7 years ago

now that I look again at the backtrace I noticed that The app uses both libqwt 5 and 6. This is wrong

#26 Updated by Bogdan Hlevca over 7 years ago

Does not crash anymore. I deleted libqwt6 and I recompiled qwtpolar with qwt5. Recompiled everything from scratch.

To recapitulate:
  1. Needs your sip patch to compile
  2. very sensitive to qwt libraries. People must check if 2 different versions are on the path

I hope that this helps other to find their own problems with 2.18 and sip 4.28 and various qwt libraries

#27 Updated by Giovanni Manghi over 7 years ago

  • Status changed from Reopened to Closed
  • Resolution set to fixed/implemented

Retested on the same platform on 2.18.4 and it worked as expected. Thanks!

Also available in: Atom PDF