projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Prompt the user for confirmation before removing an export format.
[ardour.git]
/
libs
/
midi++2
/
parser.cc
diff --git
a/libs/midi++2/parser.cc
b/libs/midi++2/parser.cc
index 52de52c2d225ffe442e06a65f65371707db389ed..8e3af64504407f8cdbf5e9377256bbdac1a2a3b6 100644
(file)
--- a/
libs/midi++2/parser.cc
+++ b/
libs/midi++2/parser.cc
@@
-105,8
+105,7
@@
Parser::midi_event_type_name (eventType t)
}
Parser::Parser (Port &p)
}
Parser::Parser (Port &p)
- : _port (p)
-
+ : _port(p)
{
trace_stream = 0;
trace_prefix = "";
{
trace_stream = 0;
trace_prefix = "";
@@
-326,6
+325,7
@@
void
Parser::scanner (unsigned char inbyte)
{
bool statusbit;
Parser::scanner (unsigned char inbyte)
{
bool statusbit;
+ boost::optional<int> edit_result;
// cerr << "parse: " << hex << (int) inbyte << dec << " state = " << state << " msgindex = " << msgindex << " runnable = " << runnable << endl;
// cerr << "parse: " << hex << (int) inbyte << dec << " state = " << state << " msgindex = " << msgindex << " runnable = " << runnable << endl;
@@
-497,7
+497,10
@@
Parser::scanner (unsigned char inbyte)
case NEEDONEBYTE:
/* We've completed a 1 or 2 byte message. */
case NEEDONEBYTE:
/* We've completed a 1 or 2 byte message. */
- if (edit.empty() || !(*edit (msgbuf, msgindex) == 0)) {
+
+ edit_result = edit (msgbuf, msgindex);
+
+ if (edit_result.get_value_or (1)) {
/* message not cancelled by an editor */
/* message not cancelled by an editor */