diff options
author | Carl Hetherington <carl@carlh.net> | 2011-04-04 12:21:26 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2011-04-04 12:21:26 +0000 |
commit | 02cfe41bff57712e59f7169037d694a3dd6a1420 (patch) | |
tree | 02d58170bfc5567caff21b8a6b08e66cd9f790dc /libs | |
parent | b850f5846799ce416b3203a4ee585f5d925ef066 (diff) |
Update region peak amplitude when the region is trimmed (#3931).
git-svn-id: svn://localhost/ardour2/branches/3.0@9276 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r-- | libs/midi++2/port.cc | 2 | ||||
-rw-r--r-- | libs/pbd/base_ui.cc | 3 | ||||
-rw-r--r-- | libs/pbd/crossthread.cc | 20 | ||||
-rw-r--r-- | libs/pbd/pbd/crossthread.h | 2 |
4 files changed, 16 insertions, 11 deletions
diff --git a/libs/midi++2/port.cc b/libs/midi++2/port.cc index 539d5c49cb..59f76041d6 100644 --- a/libs/midi++2/port.cc +++ b/libs/midi++2/port.cc @@ -50,6 +50,7 @@ Port::Port (string const & name, Flags flags, jack_client_t* jack_client) , _jack_client (jack_client) , _jack_port (0) , _last_read_index (0) + , xthread (true) , output_fifo (512) , input_fifo (1024) , _flags (flags) @@ -64,6 +65,7 @@ Port::Port (const XMLNode& node, jack_client_t* jack_client) , _jack_client (jack_client) , _jack_port (0) , _last_read_index (0) + , xthread (true) , output_fifo (512) , input_fifo (1024) { diff --git a/libs/pbd/base_ui.cc b/libs/pbd/base_ui.cc index ce7018a005..d56e4a31a4 100644 --- a/libs/pbd/base_ui.cc +++ b/libs/pbd/base_ui.cc @@ -41,7 +41,8 @@ BaseUI::RequestType BaseUI::CallSlot = BaseUI::new_request_type(); BaseUI::RequestType BaseUI::Quit = BaseUI::new_request_type(); BaseUI::BaseUI (const string& str) - : run_loop_thread (0) + : request_channel (true) + , run_loop_thread (0) , _name (str) { base_ui_instance = this; diff --git a/libs/pbd/crossthread.cc b/libs/pbd/crossthread.cc index 12ca19b945..553c8d52f3 100644 --- a/libs/pbd/crossthread.cc +++ b/libs/pbd/crossthread.cc @@ -30,7 +30,7 @@ using namespace std; using namespace PBD; using namespace Glib; -CrossThreadChannel::CrossThreadChannel () +CrossThreadChannel::CrossThreadChannel (bool non_blocking) { _ios = 0; fds[0] = -1; @@ -41,14 +41,16 @@ CrossThreadChannel::CrossThreadChannel () return; } - if (fcntl (fds[0], F_SETFL, O_NONBLOCK)) { - error << "cannot set non-blocking mode for x-thread pipe (read) (" << ::strerror (errno) << ')' << endmsg; - return; - } - - if (fcntl (fds[1], F_SETFL, O_NONBLOCK)) { - error << "cannot set non-blocking mode for x-thread pipe (write) (%2)" << ::strerror (errno) << ')' << endmsg; - return; + if (non_blocking) { + if (fcntl (fds[0], F_SETFL, O_NONBLOCK)) { + error << "cannot set non-blocking mode for x-thread pipe (read) (" << ::strerror (errno) << ')' << endmsg; + return; + } + + if (fcntl (fds[1], F_SETFL, O_NONBLOCK)) { + error << "cannot set non-blocking mode for x-thread pipe (write) (%2)" << ::strerror (errno) << ')' << endmsg; + return; + } } } diff --git a/libs/pbd/pbd/crossthread.h b/libs/pbd/pbd/crossthread.h index f16cab9405..a791be5798 100644 --- a/libs/pbd/pbd/crossthread.h +++ b/libs/pbd/pbd/crossthread.h @@ -28,7 +28,7 @@ class CrossThreadChannel { public: - CrossThreadChannel(); + CrossThreadChannel(bool); ~CrossThreadChannel(); void wakeup(); |