Skip to content

[CRASH] Trimming track on sequence after render, causes a crash.  #2400

Description

@MrCheatEugene

Commit Hash 8ac191c

Platform Windows 10 22H2

Summary
Everything worked fine. I rendered the sequence, then wanted to trim one of the tracks, so I held left mouse button on the beginning of the track, dragged it, released left mouse button, and it crashed.

Steps to Reproduce

  1. Add some media, place them on sequence
  2. Render the sequence
  3. Try then trimming one of the media from the start, to somewhere further. It'll result in a crash (I've tested)
Crash Report

Report #1:
Operating system: Windows NT
10.0.19045 2965
CPU: amd64
family 6 model 165 stepping 3
12 CPUs

Crash reason: EXCEPTION_ACCESS_VIOLATION_READ
Crash address: 0x28

Thread 0 (crashed)
0 olive-editor.exe!QVector::indexOf(QString const &,int) [qvector.h : 1008 + 0xb]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc8ff036b rsp = 0x0014a720 rbp = 0x0014aa68
Found by: given as instruction pointer in context
1 olive-editor.exe!olive::Node::GetInputDataType(QString const &) [node.cpp : 335 + 0x4]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc8fe432c rsp = 0x0014a750 rbp = 0x0014aa68
Found by: call frame info
2 olive-editor.exe!olive::Node::GetStandardValue(QString const &,int) [node.cpp : 709 + 0x7]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc8fe5746 rsp = 0x0014a780 rbp = 0x0014aa68
Found by: call frame info
3 olive-editor.exe!olive::Block::length() [block.cpp : 59 + 0x16]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc8f49190 rsp = 0x0014a7d0 rbp = 0x0014aa68
Found by: call frame info
4 olive-editor.exe!olive::BlockTrimCommand::prepare() [timelineundopointer.cpp : 145 + 0xd]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc906fa2d rsp = 0x0014a810 rbp = 0x0014aa68
Found by: call frame info
5 olive-editor.exe!olive::UndoCommand::redo_now() [undocommand.cpp : 72 + 0x5]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907ca0b rsp = 0x0014a860 rbp = 0x0014aa68
Found by: call frame info
6 olive-editor.exe!olive::UndoCommand::redo_and_set_modified() [undocommand.cpp : 51 + 0xb]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907c9cb rsp = 0x0014a890 rbp = 0x0014aa68
Found by: call frame info
7 olive-editor.exe!olive::MultiUndoCommand::redo() [undocommand.cpp : 30 + 0x7]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907c98f rsp = 0x0014a8c0 rbp = 0x0014aa68
Found by: call frame info
8 olive-editor.exe!olive::UndoCommand::redo_now() [undocommand.cpp : 76 + 0x8]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907ca18 rsp = 0x0014a8f0 rbp = 0x0014aa68
Found by: call frame info
9 olive-editor.exe!olive::UndoCommand::redo_and_set_modified() [undocommand.cpp : 51 + 0xb]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907c9cb rsp = 0x0014a920 rbp = 0x0014aa68
Found by: call frame info
10 olive-editor.exe!olive::UndoStack::push(olive::UndoCommand *,QString const &) [undostack.cpp : 82 + 0x7]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907e219 rsp = 0x0014a950 rbp = 0x0014aa68
Found by: call frame info
11 olive-editor.exe!olive::PointerTool::FinishDrag(olive::TimelineViewMouseEvent *) [pointer.cpp : 818 + 0x47]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc9124042 rsp = 0x0014a9c0 rbp = 0x0014aa68
Found by: call frame info
12 olive-editor.exe!olive::PointerTool::MouseRelease(olive::TimelineViewMouseEvent *) [pointer.cpp : 204 + 0xb]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc91260b6 rsp = 0x0014ac90 rbp = 0x0014aa68
Found by: call frame info
13 olive-editor.exe!olive::TimelineWidget::ViewMouseReleased(olive::TimelineViewMouseEvent *) [timelinewidget.cpp : 1084 + 0xf]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc9147c30 rsp = 0x0014acc0 rbp = 0x0014aa68
Found by: call frame info
14 Qt5Core.dll + 0x1e53b9
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa513f0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0x101c53ba rsp = 0x0014acf0 rbp = 0x0014aa68
Found by: call frame info
15 Qt5Gui.dll + 0xcce6a
rip = 0x1067ce6b rsp = 0x0014ad20
Found by: stack scanning
16 Qt5Gui.dll + 0x623e3f
rip = 0x10bd3e40 rsp = 0x0014ad38
Found by: stack scanning
17 olive-editor.exe!olive::Track::InternalHeightToPixelHeight(double) [track.h : 111 + 0x86]
rip = 0xc8f8fb05 rsp = 0x0014ad60
Found by: stack scanning

Report #2 (Got when reproducing the bug):
Operating system: Windows NT
10.0.19045 2965
CPU: amd64
family 6 model 165 stepping 3
12 CPUs

Crash reason: EXCEPTION_ACCESS_VIOLATION_READ
Crash address: 0x28

Thread 0 (crashed)
0 olive-editor.exe!QVector::indexOf(QString const &,int) [qvector.h : 1008 + 0xb]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc8ff036b rsp = 0x0014a720 rbp = 0x0014aa68
Found by: given as instruction pointer in context
1 olive-editor.exe!olive::Node::GetInputDataType(QString const &) [node.cpp : 335 + 0x4]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc8fe432c rsp = 0x0014a750 rbp = 0x0014aa68
Found by: call frame info
2 olive-editor.exe!olive::Node::GetStandardValue(QString const &,int) [node.cpp : 709 + 0x7]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc8fe5746 rsp = 0x0014a780 rbp = 0x0014aa68
Found by: call frame info
3 olive-editor.exe!olive::Block::length() [block.cpp : 59 + 0x16]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc8f49190 rsp = 0x0014a7d0 rbp = 0x0014aa68
Found by: call frame info
4 olive-editor.exe!olive::BlockTrimCommand::prepare() [timelineundopointer.cpp : 145 + 0xd]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc906fa2d rsp = 0x0014a810 rbp = 0x0014aa68
Found by: call frame info
5 olive-editor.exe!olive::UndoCommand::redo_now() [undocommand.cpp : 72 + 0x5]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907ca0b rsp = 0x0014a860 rbp = 0x0014aa68
Found by: call frame info
6 olive-editor.exe!olive::UndoCommand::redo_and_set_modified() [undocommand.cpp : 51 + 0xb]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907c9cb rsp = 0x0014a890 rbp = 0x0014aa68
Found by: call frame info
7 olive-editor.exe!olive::MultiUndoCommand::redo() [undocommand.cpp : 30 + 0x7]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907c98f rsp = 0x0014a8c0 rbp = 0x0014aa68
Found by: call frame info
8 olive-editor.exe!olive::UndoCommand::redo_now() [undocommand.cpp : 76 + 0x8]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907ca18 rsp = 0x0014a8f0 rbp = 0x0014aa68
Found by: call frame info
9 olive-editor.exe!olive::UndoCommand::redo_and_set_modified() [undocommand.cpp : 51 + 0xb]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907c9cb rsp = 0x0014a920 rbp = 0x0014aa68
Found by: call frame info
10 olive-editor.exe!olive::UndoStack::push(olive::UndoCommand *,QString const &) [undostack.cpp : 82 + 0x7]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc907e219 rsp = 0x0014a950 rbp = 0x0014aa68
Found by: call frame info
11 olive-editor.exe!olive::PointerTool::FinishDrag(olive::TimelineViewMouseEvent *) [pointer.cpp : 818 + 0x47]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc9124042 rsp = 0x0014a9c0 rbp = 0x0014aa68
Found by: call frame info
12 olive-editor.exe!olive::PointerTool::MouseRelease(olive::TimelineViewMouseEvent *) [pointer.cpp : 204 + 0xb]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc91260b6 rsp = 0x0014ac90 rbp = 0x0014aa68
Found by: call frame info
13 olive-editor.exe!olive::TimelineWidget::ViewMouseReleased(olive::TimelineViewMouseEvent *) [timelinewidget.cpp : 1084 + 0xf]
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0xc9147c30 rsp = 0x0014acc0 rbp = 0x0014aa68
Found by: call frame info
14 Qt5Core.dll + 0x1e53b9
rbx = 0x00000000 r12 = 0x00000000 r13 = 0x0fa9bda0 r14 = 0x0014a7f0
r15 = 0xc92c46a0 rip = 0x10b653ba rsp = 0x0014acf0 rbp = 0x0014aa68
Found by: call frame info
15 Qt5Gui.dll + 0xcce6a
rip = 0x1101ce6b rsp = 0x0014ad20
Found by: stack scanning
16 Qt5Gui.dll + 0x623e3f
rip = 0x11573e40 rsp = 0x0014ad38
Found by: stack scanning
17 olive-editor.exe!olive::Track::InternalHeightToPixelHeight(double) [track.h : 111 + 0x86]
rip = 0xc8f8fb05 rsp = 0x0014ad60
Found by: stack scanning

Additional Information
I couldn't paste full reports, so I'll add them as files.
My project contained a WEBM video, and a few PNG images.

ol2.txt
ol1.txt

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    CrashUnexpected termination or freeze of OliveTriageThis issue is yet to be triaged

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions