Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CRASH] Olive randomly crashing #2308

Open
SamuraiDestroy opened this issue Feb 1, 2024 · 3 comments
Open

[CRASH] Olive randomly crashing #2308

SamuraiDestroy opened this issue Feb 1, 2024 · 3 comments
Labels
Crash Unexpected termination or freeze of Olive Triage This issue is yet to be triaged

Comments

@SamuraiDestroy
Copy link

Commit Hash

Platform Windows 10

Summary
Olive just randomly crashes.

Steps to Reproduce

  1. Open a file
  2. Use playback
    (I honestly don't know if it was caused by playback but that's what I was doing both times it crashed)
Crash Report

No crash report provided

Additional Information
This is most likely something to do with playback but I'm unsure

@SamuraiDestroy SamuraiDestroy added Crash Unexpected termination or freeze of Olive Triage This issue is yet to be triaged labels Feb 1, 2024
@loadfred
Copy link

loadfred commented Feb 7, 2024

Same thing happens to me, crashing on playback with any ove file. Restarting my pc fixes playback.

Platform
FreeBSD

Commit Hash
8ca1672 AND
bfc0d31 (I compiled this latest from source and both crashes still occurred)

I think it happens with certain bezier edits in the curve editor.
I can't reproduce the crash where it crashes after every playback of any ove file, until you restart your pc. (for this one I tried deleting .cache/olivevideoeditor.org/ and it didn't solve it, I had to restart my pc to get playback working again)

But I reproduce a similar playback crash that happens one time and playback after reopening the file works fine (even with the edited curves that crashed it on playback).
I add two position keyframes in curve editor (using only the x). Make second keyframe bezier, move it up, move it left, changing the position, then move the first keyframe a little. Then playback and it crashed after 2 seconds of playing.
Sometimes editing curves works fine, but after some messing around with the curve edits it crashes on playback.
It seems to work fine with multiple keyed items (e.g. position + scale) on one object, just not one keyed item (e.g. position x only keyed), but I'm not certain.

I got two crash logs of the same curve editor crash:

Crash 1 (this log I reproduced 4 times)

Core was generated by `olive-editor'.
Program terminated with signal SIGBUS, Bus error.
Object-specific hardware error.
#0  0x000000083564b91e in QObject::~QObject() () from /usr/local/lib/qt5/libQt5Core.so.5
[Current thread is 1 (LWP 100952)]
(gdb) bt
#0  0x000000083564b91e in QObject::~QObject() () from /usr/local/lib/qt5/libQt5Core.so.5
#1  0x0000000000c5af60 in std::__1::__shared_count::__release_shared[abi:v160006]() (this=0x231e2c013450) at /usr/include/c++/v1/__memory/shared_ptr.h:157
#2  std::__1::__shared_weak_count::__release_shared[abi:v160006]() (this=0x231e2c013450) at /usr/include/c++/v1/__memory/shared_ptr.h:198
#3  std::__1::shared_ptr::~shared_ptr[abi:v160006]() (this=0x82180d1c8) at /usr/include/c++/v1/__memory/shared_ptr.h:745
#4  olive::PreviewAutoCacher::ClearSingleFrameRenders (this=) at /home/me/.local/src/olive-video-editor/olive/app/render/previewautocacher.cpp:105
#5  0x0000000000d4a112 in olive::ViewerWidget::PauseInternal (this=0x231e2ec89800) at /home/me/.local/src/olive-video-editor/olive/app/widget/viewer/viewer.cpp:1023
#6  0x00000008356579da in ?? () from /usr/local/lib/qt5/libQt5Core.so.5
#7  0x00000008356579da in ?? () from /usr/local/lib/qt5/libQt5Core.so.5
#8  0x0000000832090e33 in QAction::activate(QAction::ActionEvent) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#9  0x0000000832090c4d in QAction::event(QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#10 0x0000000832099af3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#11 0x000000083209ae9e in QApplication::notify(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#12 0x0000000835624161 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Core.so.5
#13 0x0000000833382b29 in QShortcutMap::dispatchEvent(QKeyEvent*) () from /usr/local/lib/qt5/libQt5Gui.so.5
#14 0x0000000833381e58 in QShortcutMap::tryShortcut(QKeyEvent*) () from /usr/local/lib/qt5/libQt5Gui.so.5
#15 0x00000008333321bb in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short)
    () from /usr/local/lib/qt5/libQt5Gui.so.5
#16 0x00000008333525a1 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /usr/local/lib/qt5/libQt5Gui.so.5
#17 0x0000000833335c7b in QWindowSystemInterface::sendWindowSystemEvents(QFlags) () from /usr/local/lib/qt5/libQt5Gui.so.5
#18 0x000000087d6a4baf in ?? () from /usr/local/lib/qt5/libQt5XcbQpa.so.5
#19 0x0000000864952ea1 in ?? () from /usr/local/lib/libglib-2.0.so.0
#20 0x0000000864953239 in ?? () from /usr/local/lib/libglib-2.0.so.0
#21 0x00000008649532d6 in g_main_context_iteration () from /usr/local/lib/libglib-2.0.so.0
#22 0x0000000835676c75 in QEventDispatcherGlib::processEvents(QFlags) () from /usr/local/lib/qt5/libQt5Core.so.5
#23 0x0000000835620af6 in QEventLoop::exec(QFlags) () from /usr/local/lib/qt5/libQt5Core.so.5
#24 0x00000008356247e1 in QCoreApplication::exec() () from /usr/local/lib/qt5/libQt5Core.so.5
#25 0x0000000000addfb8 in main (argc=, argv=0x82180ddc0) at /home/me/.local/src/olive-video-editor/olive/app/main.cpp:342
Crash 2 (same curve editor playback crash)

Core was generated by `olive-editor'.
Program terminated with signal SIGSEGV, Segmentation fault.
Address not mapped to object.
#0  0x000000083386ed90 in QMutex::lock() () from /usr/local/lib/qt5/libQt5Core.so.5
[Current thread is 1 (LWP 100891)]
(gdb) bt
#0  0x000000083386ed90 in QMutex::lock() () from /usr/local/lib/qt5/libQt5Core.so.5
#1  0x0000000000c6edb3 in QMutexLocker::QMutexLocker (m=0x30, this=) at /usr/local/include/qt5/QtCore/qmutex.h:257
#2  olive::CancelAtom::Cancel (this=0x30) at /home/me/.local/src/olive-video-editor/olive/app/render/cancelatom.h:27
#3  olive::CancelableObject::Cancel (this=0x28) at /home/me/.local/src/olive-video-editor/olive/app/common/cancelableobject.h:37
#4  olive::RenderTicketWatcher::Cancel (this=) at /home/me/.local/src/olive-video-editor/olive/app/render/renderticket.cpp:200
#5  0x0000000000c5af05 in olive::PreviewAutoCacher::ClearSingleFrameRenders (this=) at /home/me/.local/src/olive-video-editor/olive/app/render/previewautocacher.cpp:103
#6  0x0000000000d4a112 in olive::ViewerWidget::PauseInternal (this=this@entry=0xb7251e8f800) at /home/me/.local/src/olive-video-editor/olive/app/widget/viewer/viewer.cpp:1023
#7  0x0000000000d49d91 in olive::ViewerWidget::TimeChangedEvent (this=0xb7251e8f800, time=...) at /home/me/.local/src/olive-video-editor/olive/app/widget/viewer/viewer.cpp:171
#8  0x0000000000d079a7 in olive::TimeBasedWidget::PlayheadTimeChanged (this=0xb7251e8f800, time=...) at /home/me/.local/src/olive-video-editor/olive/app/widget/timebased/timebasedwidget.cpp:384
#9  0x0000000833a579da in ?? () from /usr/local/lib/qt5/libQt5Core.so.5
#10 0x0000000000ae9ef9 in olive::ViewerOutput::PlayheadChanged (this=0x30, _t1=...) at libolive-editor_autogen/TZS4I5HN7D/moc_viewer.cpp:336
#11 0x0000000000d3e3e8 in olive::SeekableWidget::SeekToScenePoint (this=this@entry=0xb7251f95400, scene=104) at /home/me/.local/src/olive-video-editor/olive/app/widget/timeruler/seekablewidget.cpp:403
#12 0x0000000000d3e2c8 in olive::SeekableWidget::mousePressEvent (this=0xb7251f95400, event=0x821a1c338) at /home/me/.local/src/olive-video-editor/olive/app/widget/timeruler/seekablewidget.cpp:197
#13 0x00000008308d311e in QWidget::event(QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#14 0x000000083096fb5b in QFrame::event(QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#15 0x0000000830be96a9 in QGraphicsView::viewportEvent(QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#16 0x0000000833a244b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Core.so.5
#17 0x0000000830899adf in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#18 0x000000083089c9d0 in QApplication::notify(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#19 0x0000000833a24161 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Core.so.5
#20 0x000000083089a455 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer&, bool, bool) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#21 0x00000008308f02a7 in ?? () from /usr/local/lib/qt5/libQt5Widgets.so.5
#22 0x00000008308ef1a4 in ?? () from /usr/local/lib/qt5/libQt5Widgets.so.5
#23 0x0000000830899af3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#24 0x000000083089ae9e in QApplication::notify(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#25 0x0000000833a24161 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Core.so.5
#26 0x000000082d2b1d2c in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/local/lib/qt5/libQt5Gui.so.5
#27 0x000000082d295c7b in QWindowSystemInterface::sendWindowSystemEvents(QFlags) () from /usr/local/lib/qt5/libQt5Gui.so.5
#28 0x0000000875fe0baf in ?? () from /usr/local/lib/qt5/libQt5XcbQpa.so.5
#29 0x000000086093eea1 in ?? () from /usr/local/lib/libglib-2.0.so.0
#30 0x000000086093f239 in ?? () from /usr/local/lib/libglib-2.0.so.0
#31 0x000000086093f2d6 in g_main_context_iteration () from /usr/local/lib/libglib-2.0.so.0
#32 0x0000000833a76c75 in QEventDispatcherGlib::processEvents(QFlags) () from /usr/local/lib/qt5/libQt5Core.so.5
#33 0x0000000833a20af6 in QEventLoop::exec(QFlags) () from /usr/local/lib/qt5/libQt5Core.so.5
#34 0x0000000833a247e1 in QCoreApplication::exec() () from /usr/local/lib/qt5/libQt5Core.so.5
#35 0x0000000000addfb8 in main (argc=, argv=0x821a1cd08) at /home/me/.local/src/olive-video-editor/olive/app/main.cpp:342

@loadfred
Copy link

I encountered this bug again, and this time I got the crash report. (It crashing when you playback, no matter what file you open) it's not keyframe related

Crash Report

#0  0x0000000836a4b91e in QObject::~QObject() () from /usr/local/lib/qt5/libQt5Core.so.5
#1  0x0000000000c5af60 in std::__1::__shared_count::__release_shared[abi:v160006]() (this=0x1ee87a356030) at /usr/include/c++/v1/__memory/shared_ptr.h:157
#2  std::__1::__shared_weak_count::__release_shared[abi:v160006]() (this=0x1ee87a356030) at /usr/include/c++/v1/__memory/shared_ptr.h:198
#3  std::__1::shared_ptr::~shared_ptr[abi:v160006]() (this=0x821de9e38) at /usr/include/c++/v1/__memory/shared_ptr.h:745
#4  olive::PreviewAutoCacher::ClearSingleFrameRenders (this=) at /home/me/.local/src/olive-video-editor/olive/app/render/previewautocacher.cpp:105
#5  0x0000000000d4a112 in olive::ViewerWidget::PauseInternal (this=0x1ee845294d00) at /home/me/.local/src/olive-video-editor/olive/app/widget/viewer/viewer.cpp:1023
#6  0x0000000836a579da in ?? () from /usr/local/lib/qt5/libQt5Core.so.5
#7  0x0000000836a579da in ?? () from /usr/local/lib/qt5/libQt5Core.so.5
#8  0x0000000832c90e33 in QAction::activate(QAction::ActionEvent) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#9  0x0000000832c90c4d in QAction::event(QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#10 0x0000000832c99af3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#11 0x0000000832c9ae9e in QApplication::notify(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.5
#12 0x0000000836a24161 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/local/lib/qt5/libQt5Core.so.5
#13 0x0000000833c23b29 in QShortcutMap::dispatchEvent(QKeyEvent*) () from /usr/local/lib/qt5/libQt5Gui.so.5
#14 0x0000000833c22e58 in QShortcutMap::tryShortcut(QKeyEvent*) () from /usr/local/lib/qt5/libQt5Gui.so.5
#15 0x0000000833bd31bb in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short)
    () from /usr/local/lib/qt5/libQt5Gui.so.5
#16 0x0000000833bf35a1 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /usr/local/lib/qt5/libQt5Gui.so.5
#17 0x0000000833bd6c7b in QWindowSystemInterface::sendWindowSystemEvents(QFlags) () from /usr/local/lib/qt5/libQt5Gui.so.5
#18 0x000000087c5cabaf in ?? () from /usr/local/lib/qt5/libQt5XcbQpa.so.5
#19 0x0000000862260ea1 in ?? () from /usr/local/lib/libglib-2.0.so.0
#20 0x0000000862261239 in ?? () from /usr/local/lib/libglib-2.0.so.0
#21 0x00000008622612d6 in g_main_context_iteration () from /usr/local/lib/libglib-2.0.so.0
#22 0x0000000836a76c75 in QEventDispatcherGlib::processEvents(QFlags) () from /usr/local/lib/qt5/libQt5Core.so.5
#23 0x0000000836a20af6 in QEventLoop::exec(QFlags) () from /usr/local/lib/qt5/libQt5Core.so.5
#24 0x0000000836a247e1 in QCoreApplication::exec() () from /usr/local/lib/qt5/libQt5Core.so.5
#25 0x0000000000addfb8 in main (argc=, argv=0x821deaa30) at /home/me/.local/src/olive-video-editor/olive/app/main.cpp:342

@loadfred
Copy link

It stops crashing when you log out and back into your system, so you don't need to restart your pc, deleting cache files without logging out doesn't fix it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Crash Unexpected termination or freeze of Olive Triage This issue is yet to be triaged
Projects
None yet
Development

No branches or pull requests

2 participants