View Issue Details

IDProjectCategoryView StatusLast Update
0002570ardourbugspublic2020-04-19 20:13
Reporterlincoln Assigned Todrobilla  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Summary0002570: Crash on loop with midi region in editor
DescriptionTonight I observed a crash whilst testing ardour 3.0 in loop mode with a midi track in session.

The trace pointed to null buffer in midi_util.h at midi_event_is_valid. I placed a null check at the begining of the method and looping now works when a midi region is in the session.

This does not tackle the root cause of the issue but it is probably a good check to have anyway to avoid surprises.

Patch attached.
Additional InformationFixed in r5052.
TagsNo tags attached.

Activities

2009-02-25 01:29

 

midi_util-null_buffer_guard.patch (419 bytes)   
Index: libs/evoral/evoral/midi_util.h
===================================================================
--- libs/evoral/evoral/midi_util.h	(revision 4650)
+++ libs/evoral/evoral/midi_util.h	(working copy)
@@ -102,6 +102,10 @@
 static inline bool
 midi_event_is_valid(const uint8_t* buffer, size_t len)
 {
+	if(buffer == 0){
+		return false;
+	}
+
 	uint8_t status = buffer[0];
 	if (status < 0x80) {
 		return false;

system

2020-04-19 20:13

developer   ~0021873

Issue has been closed automatically, by Trigger Close Plugin.
Feel free to re-open with additional information if you think the issue is not resolved.

Issue History

Date Modified Username Field Change
2009-02-25 01:29 lincoln New Issue
2009-02-25 01:29 lincoln File Added: midi_util-null_buffer_guard.patch
2009-05-05 02:05 drobilla cost => 0.00
2009-05-05 02:05 drobilla Assigned To => drobilla
2009-05-05 02:05 drobilla Status new => resolved
2009-05-05 02:05 drobilla Resolution open => fixed
2009-05-05 02:05 drobilla Additional Information Updated
2010-04-24 10:28 cth103 Category bugs => bugs2
2010-04-24 10:31 cth103 Category bugs2 => bugs
2020-04-19 20:13 system Note Added: 0021873
2020-04-19 20:13 system Status resolved => closed