summaryrefslogtreecommitdiff
path: root/libs/evoral/src/Event.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/evoral/src/Event.cpp')
-rw-r--r--libs/evoral/src/Event.cpp27
1 files changed, 13 insertions, 14 deletions
diff --git a/libs/evoral/src/Event.cpp b/libs/evoral/src/Event.cpp
index 45935ccf8d..680f488596 100644
--- a/libs/evoral/src/Event.cpp
+++ b/libs/evoral/src/Event.cpp
@@ -107,30 +107,29 @@ Event<Timestamp>::~Event() {
}
template<typename Timestamp>
-const Event<Timestamp>&
-Event<Timestamp>::operator=(const Event& copy)
+void
+Event<Timestamp>::assign(const Event& other)
{
- _id = next_event_id ();
- _type = copy._type;
- _original_time = copy._original_time;
- _nominal_time = copy._nominal_time;
- _owns_buf = copy._owns_buf;
+ _id = other._id;
+ _type = other._type;
+ _original_time = other._original_time;
+ _nominal_time = other._nominal_time;
+ _owns_buf = other._owns_buf;
if (_owns_buf) {
- if (copy._buf) {
- if (copy._size > _size) {
- _buf = (uint8_t*)::realloc(_buf, copy._size);
+ if (other._buf) {
+ if (other._size > _size) {
+ _buf = (uint8_t*)::realloc(_buf, other._size);
}
- memcpy(_buf, copy._buf, copy._size);
+ memcpy(_buf, other._buf, other._size);
} else {
free(_buf);
_buf = NULL;
}
} else {
- _buf = copy._buf;
+ _buf = other._buf;
}
- _size = copy._size;
- return *this;
+ _size = other._size;
}
template<typename Timestamp>