summaryrefslogtreecommitdiff
path: root/libs/ardour/playlist.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-07-06 11:33:27 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-07-06 11:33:27 +0000
commit2f9184d65395da75a43ea21ffb5f11b8d577d27a (patch)
treea50a5d5a4bd8b09ca9bd1f3bb6754b7bf86cd3c5 /libs/ardour/playlist.cc
parent2f11b367cac5fe05f5f69e2c73946312d8145260 (diff)
beat slicing patch #1 from lincoln spiteri
git-svn-id: svn://localhost/ardour2/branches/3.0@7381 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/playlist.cc')
-rw-r--r--libs/ardour/playlist.cc14
1 files changed, 7 insertions, 7 deletions
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc
index cc9dc62ec7..20d771c692 100644
--- a/libs/ardour/playlist.cc
+++ b/libs/ardour/playlist.cc
@@ -696,7 +696,7 @@ Playlist::add_region (boost::shared_ptr<Region> region, framepos_t position, flo
framepos_t pos = position;
if (times == 1 && auto_partition){
- partition(pos, (pos + region->length()), true);
+ partition((nframes_t) pos - 1, (nframes_t) (pos + region->length()), true);
}
if (itimes >= 1) {
@@ -869,9 +869,7 @@ Playlist::remove_region_internal (boost::shared_ptr<Region> region)
}
}
- /* XXX and thaw ... */
-
- return ret;
+ return -1;
}
void
@@ -1284,7 +1282,7 @@ Playlist::duplicate (boost::shared_ptr<Region> region, framepos_t position, floa
RegionLock rl (this);
int itimes = (int) floor (times);
- framepos_t pos = position;
+ nframes_t pos = position + 1;
while (itimes--) {
boost::shared_ptr<Region> copy = RegionFactory::create (region);
@@ -2094,6 +2092,7 @@ Playlist::find_next_region_boundary (framepos_t frame, int dir)
return ret;
}
+
/***********************************************************************/
@@ -2257,7 +2256,7 @@ Playlist::set_state (const XMLNode& node, int version)
error << _("Playlist: cannot create region from XML") << endmsg;
continue;
}
-
+
add_region (region, region->position(), 1.0);
// So that layer_op ordering doesn't get screwed up
@@ -2300,7 +2299,7 @@ XMLNode&
Playlist::state (bool full_state)
{
XMLNode *node = new XMLNode (X_("Playlist"));
- char buf[64];
+ char buf[64] = "";
node->add_property (X_("id"), id().to_s());
node->add_property (X_("name"), _name);
@@ -2312,6 +2311,7 @@ Playlist::state (bool full_state)
if (full_state) {
RegionLock rlock (this, false);
+
for (RegionList::iterator i = regions.begin(); i != regions.end(); ++i) {
node->add_child_nocopy ((*i)->get_state());
}