Bug 448954 - skrooge-2.26.1: segmentation fault with std::unique_ptr<char []> = {get() = 0x0}
Summary: skrooge-2.26.1: segmentation fault with std::unique_ptr<char []> = {get() = 0x0}
Status: RESOLVED WORKSFORME
Alias: None
Product: skrooge
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Guillaume DE BURE
URL:
Keywords: drkonqi
: 448955 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-01-22 13:56 UTC by James Beddek
Modified: 2022-10-31 05:04 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description James Beddek 2022-01-22 13:56:49 UTC
Application: skrooge (2.26.1)
 (Compiled from sources)
Qt Version: 5.15.2
Frameworks Version: 5.90.0
Operating System: Linux 5.16.0-gentoo x86_64
Windowing System: X11
Distribution: Gentoo Linux
DrKonqi: 5.23.5 [KCrashBackend]

-- Information about the crash:
- What I was doing when the application crashed:

From a fresh install.
Creating a new account either via the default introductory page or by editing any information regarding bank accounts.

Warnings in stdout: "[warn] epoll_wait: Bad file descriptor"

The crash can be reproduced every time.

-- Backtrace:
Application: Skrooge (skrooge), signal: Segmentation fault
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0}
[KCrash Handler]
#5  std::__atomic_base<int>::load(std::memory_order) const (this=0x4, __m=std::memory_order_relaxed) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/g++-v11/bits/atomic_base.h:481
#6  QAtomicOps<int>::loadRelaxed<int>(std::atomic<int> const&) (_q_value=...) at ../../include/QtCore/../../../qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/corelib/thread/qatomic_cxx11.h:239
#7  QBasicAtomicInteger<int>::loadRelaxed() const (this=0x4) at ../../include/QtCore/../../../qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/corelib/thread/qbasicatomic.h:107
#8  QWeakPointer<QObject>::internalData() const (this=0x5630621da000) at ../../include/QtCore/../../../qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/corelib/tools/qsharedpointer_impl.h:698
#9  QPointer<QWidget>::data() const (this=0x5630621da000) at ../../include/QtCore/../../../qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/corelib/kernel/qpointer.h:77
#10 QPointer<QWidget>::operator->() const (this=0x5630621da000) at ../../include/QtCore/../../../qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/corelib/kernel/qpointer.h:79
#11 QScrollArea::ensureWidgetVisible(QWidget*, int, int) (this=this@entry=0x563061cbe410, childWidget=0x563062c6f150, xmargin=xmargin@entry=50, ymargin=ymargin@entry=50) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/widgets/qscrollarea.cpp:474
#12 0x00007f02978c9d24 in QScrollArea::focusNextPrevChild(bool) (this=0x563061cbe410, next=<optimized out>) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/widgets/qscrollarea.cpp:428
#13 0x00007f0297772369 in QWidget::focusNextPrevChild(bool) (this=0x563062632570, next=<optimized out>) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/kernel/qwidget.cpp:6561
#14 0x00007f0297775b47 in QWidgetPrivate::hide_helper() (this=this@entry=0x5630625e9100) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/kernel/qwidget.cpp:7957
#15 0x00007f029777617a in QWidgetPrivate::setVisible(bool) (this=0x5630625e9100, visible=<optimized out>) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/kernel/qwidget.cpp:8133
#16 0x00007f0297eb45de in SKGMainPanel::refresh() (this=0x563061c480d0) at /usr/src/debug/app-office/skrooge-2.26.1/skrooge-2.26.1/skgbasegui/skgmainpanel.cpp:1653
#17 0x00007f0296d86c1b in QtPrivate::QSlotObjectBase::call(QObject*, void**) (this=0x563062092e40, r=0x563061c480d0, a=0x7fffd44ce808) at ../../include/QtCore/../../../qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qobjectdefs_impl.h:398
#18 doActivate<false>(QObject*, int, void**) (sender=0x563061c480d0, signal_index=12, argv=0x7fffd44ce808) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qobject.cpp:3886
#19 0x00007f0296d86c1b in QtPrivate::QSlotObjectBase::call(QObject*, void**) (this=0x56306212c340, r=0x563061c480d0, a=0x7fffd44ce930) at ../../include/QtCore/../../../qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qobjectdefs_impl.h:398
#20 doActivate<false>(QObject*, int, void**) (sender=0x5630621c7ed0, signal_index=7, argv=0x7fffd44ce930) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qobject.cpp:3886
#21 0x00007f02978e61a6 in QTabBar::currentChanged(int) (this=0x5630621c7ed0, _t1=0) at .moc/moc_qtabbar.cpp:338
#22 QTabBar::setCurrentIndex(int) (this=this@entry=0x5630621c7ed0, index=index@entry=0) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/widgets/qtabbar.cpp:1450
#23 0x00007f02978e5e14 in QTabBar::insertTab(int, QIcon const&, QString const&) (this=0x5630621c7ed0, index=0, icon=<optimized out>, text=<optimized out>) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/widgets/qtabbar.cpp:1003
#24 0x00007f0297902ba6 in QTabWidget::insertTab(int, QWidget*, QIcon const&, QString const&) (this=0x5630621c46d0, index=0, w=<optimized out>, icon=..., label=...) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/widgets/qtabwidget.cpp:477
#25 QTabWidget::addTab(QWidget*, QIcon const&, QString const&) (this=0x5630621c46d0, child=<optimized out>, icon=..., label=...) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/widgets/qtabwidget.cpp:416
#26 0x00007f0297ec1115 in SKGMainPanel::openPage(SKGInterfacePlugin*, int, QString const&, QString const&, QString const&, bool) (this=<optimized out>, this@entry=0x563061c480d0, plugin=<optimized out>, plugin@entry=0x563061f571a0, index=<optimized out>, index@entry=-1, parameters=<optimized out>, title=<optimized out>, iID=<optimized out>, iSetCurrent=<optimized out>) at /usr/src/debug/app-office/skrooge-2.26.1/skrooge-2.26.1/skgbasegui/skgmainpanel.cpp:1890
#27 0x00007f0297ec58b3 in SKGMainPanel::openPage(QUrl const&, bool) (this=0x563061c480d0, iUrl=<optimized out>, iNewPage=false) at /usr/src/debug/app-office/skrooge-2.26.1/skrooge-2.26.1/skgbasegui/skgmainpanel.cpp:2001
#28 0x00007f0297f2b2e5 in SKGWebEnginePage::acceptNavigationRequest(QUrl const&, QWebEnginePage::NavigationType, bool) (this=0x5630627ee990, url=..., type=QWebEnginePage::NavigationTypeLinkClicked, isMainFrame=true) at /usr/src/debug/app-office/skrooge-2.26.1/skrooge-2.26.1/skgbasegui/skgwebview.cpp:64
#29 0x00007f029625b421 in QWebEnginePagePrivate::navigationRequested(int, QUrl const&, int&, bool) (this=0x563062585200, navigationType=50, url=..., navigationRequestAction=@0x7fffd44ced58: 0, isMainFrame=false) at /usr/src/debug/dev-qt/qtwebengine-5.15.2_p20211216/qtwebengine-5.15.2_p20211216/src/webenginewidgets/api/qwebenginepage.cpp:1671
#30 0x00007f028db2b37c in QtWebEngineCore::WebContentsDelegateQt::launchExternalURL(QUrl const&, ui::PageTransition, bool, bool) (this=0x5630627c2ee0, url=..., page_transition=<optimized out>, is_main_frame=true, has_user_gesture=<optimized out>) at /usr/src/debug/dev-qt/qtwebengine-5.15.2_p20211216/qtwebengine-5.15.2_p20211216/src/core/web_contents_delegate_qt.cpp:752
#31 0x00007f028dab5552 in QtWebEngineCore::LaunchURL(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool) (url=<optimized out>, web_contents_getter=..., page_transition=ui::PAGE_TRANSITION_FIRST, is_main_frame=true, has_user_gesture=true) at /usr/src/debug/dev-qt/qtwebengine-5.15.2_p20211216/qtwebengine-5.15.2_p20211216/src/core/content_browser_client_qt.cpp:872
#32 0x00007f028dab9c18 in base::internal::FunctorTraits<void (*)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), void>::Invoke<void (*)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), GURL, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool>(void (*&&)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), GURL&&, base::OnceCallback<content::WebContents* ()>&&, ui::PageTransition&&, bool&&, bool&&) (function=<optimized out>, args=..., args=<optimized out>, args=<optimized out>, args=<optimized out>, args=<optimized out>) at ../../../../qtwebengine-5.15.2_p20211216/src/3rdparty/chromium/base/bind_internal.h:393
#33 base::internal::InvokeHelper<false, void>::MakeItSo<void (*)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), GURL, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool>(void (*&&)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), GURL&&, base::OnceCallback<content::WebContents* ()>&&, ui::PageTransition&&, bool&&, bool&&) (functor=<optimized out>, args=..., args=<optimized out>, args=<optimized out>, args=<optimized out>, args=<optimized out>) at ../../../../qtwebengine-5.15.2_p20211216/src/3rdparty/chromium/base/bind_internal.h:637
#34 base::internal::Invoker<base::internal::BindState<void (*)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), GURL, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool>, void ()>::RunImpl<void (*)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), std::tuple<GURL, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool>, 0ul, 1ul, 2ul, 3ul, 4ul>(void (*&&)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), std::tuple<GURL, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool>&&, std::integer_sequence<unsigned long, 0ul, 1ul, 2ul, 3ul, 4ul>) (functor=<optimized out>, bound=<optimized out>) at ../../../../qtwebengine-5.15.2_p20211216/src/3rdparty/chromium/base/bind_internal.h:711
#35 base::internal::Invoker<base::internal::BindState<void (*)(GURL const&, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool), GURL, base::OnceCallback<content::WebContents* ()>, ui::PageTransition, bool, bool>, void ()>::RunOnce(base::internal::BindStateBase*) (base=<optimized out>) at ../../../../qtwebengine-5.15.2_p20211216/src/3rdparty/chromium/base/bind_internal.h:679
#36 0x00007f028f9381ca in base::TaskAnnotator::RunTask(char const*, base::PendingTask*) () at /usr/lib64/libQt5WebEngineCore.so.5
#37 0x00007f028f948863 in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::sequence_manager::LazyNow*) () at /usr/lib64/libQt5WebEngineCore.so.5
#38 0x00007f028f9485f4 in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork() () at /usr/lib64/libQt5WebEngineCore.so.5
#39 0x00007f028daa2013 in QtWebEngineCore::MessagePumpForUIQt::handleScheduledWork() (this=0x5630628206a0) at /usr/src/debug/dev-qt/qtwebengine-5.15.2_p20211216/qtwebengine-5.15.2_p20211216/src/core/browser_main_parts_qt.cpp:208
#40 0x00007f0296d7b7b8 in QObject::event(QEvent*) (this=0x563061f51a40, e=0x7f021c5935b0) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qobject.cpp:1291
#41 0x00007f029773c3e0 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, this@entry=0x563061649890, receiver=receiver@entry=0x563061f51a40, e=0x7f021c5935b0, e@entry=0x0) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/kernel/qapplication.cpp:3632
#42 0x00007f029773d74f in QApplication::notify(QObject*, QEvent*) (this=0x7fffd44cf730, receiver=<optimized out>, e=0x0) at /usr/src/debug/dev-qt/qtwidgets-5.15.2-r12/qtbase-c9fde86b0a2440133bc08f4811b6ca793be47f0a/src/widgets/kernel/qapplication.cpp:2971
#43 0x00007f0296d53f40 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=receiver@entry=0x563061f51a40, event=event@entry=0x7f021c5935b0) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qcoreapplication.cpp:1064
#44 0x00007f0296d54e72 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=0x563061f51a40, event=0x7f021c5935b0) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qcoreapplication.cpp:1462
#45 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x56306160b950) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qcoreapplication.cpp:1821
#46 0x00007f0296da7bf3 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) (s=0x5630617dad30) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qeventdispatcher_glib.cpp:277
#47 0x00007f02941af4b3 in g_main_dispatch (context=<optimized out>) at ../glib-2.70.2/glib/gmain.c:3381
#48 g_main_context_dispatch (context=context@entry=0x7f0274005000) at ../glib-2.70.2/glib/gmain.c:4099
#49 0x00007f02941af832 in g_main_context_iterate (context=context@entry=0x7f0274005000, block=<optimized out>, block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib-2.70.2/glib/gmain.c:4175
#50 0x00007f02941af8f0 in g_main_context_iteration (context=0x7f0274005000, may_block=1) at ../glib-2.70.2/glib/gmain.c:4240
#51 0x00007f0296da7688 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x5630617de520, flags=...) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qeventdispatcher_glib.cpp:423
#52 0x00007f0296d50766 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffd44cf618, flags=...) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qeventloop.cpp:139
#53 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffd44cf618, flags=...) at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qeventloop.cpp:232
#54 0x00007f0296d545df in QCoreApplication::exec() () at /usr/src/debug/dev-qt/qtcore-5.15.2-r14/qtbase-f4ac0b55c37f2b594ffbe639db43dac365825c7c/src/corelib/kernel/qcoreapplication.cpp:1375
#55 0x0000563061492153 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/app-office/skrooge-2.26.1/skrooge-2.26.1/skrooge/main.cpp:203
[Inferior 1 (process 93577) detached]

Possible duplicates by query: bug 407271.

Reported using DrKonqi
Comment 1 Stephane MANKOWSKI 2022-01-22 21:09:22 UTC
Hi,
This call stack is strange.
The issue could be due to a bad alignment between  libraries.
Could you rebuild skrooge and test again ?
Comment 2 Bug Janitor Service 2022-02-06 04:37:30 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 3 James Beddek 2022-02-15 10:51:02 UTC
(In reply to Stephane MANKOWSKI from comment #1)
> Hi,
> This call stack is strange.
> The issue could be due to a bad alignment between  libraries.
> Could you rebuild skrooge and test again ?

Whoops! Sorry Stephane, I thought I had replied to this. I've rebuilt with clang-13 and the clang-14 rc with no changes. Do you have any tests I can do to help track this down? Thanks.
Comment 4 James Beddek 2022-02-15 10:54:20 UTC
*** Bug 448955 has been marked as a duplicate of this bug. ***
Comment 5 Stephane MANKOWSKI 2022-10-01 11:42:28 UTC
Hi,

In your backtrace, I can see that SKGWebEnginePage is called.
This could be the case only if you enabled SKG_WEBENGINE during the build.
Could you confirm that you did it ?
If yes, why ? 
Could you try with default option (SKG_WEBENGINE disabled) ?
Comment 6 Bug Janitor Service 2022-10-16 04:55:35 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 7 Bug Janitor Service 2022-10-31 05:04:07 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!