diff --git a/src/Clip.cpp b/src/Clip.cpp index cdb83cdca..fa1bb7c7c 100644 --- a/src/Clip.cpp +++ b/src/Clip.cpp @@ -148,11 +148,10 @@ Clip::Clip(ReaderBase* new_reader) : resampler(NULL), reader(new_reader), alloca Open(); Close(); - // Update duration - End(reader->info.duration); - - if (new_reader) { - new_reader->SetClip(this); + // Update duration and set parent + if (reader) { + End(reader->info.duration); + reader->SetClip(this); } } @@ -206,9 +205,10 @@ Clip::Clip(std::string path) : resampler(NULL), reader(NULL), allocated_reader(N } } - // Update duration + // Update duration and set parent if (reader) { End(reader->info.duration); + reader->SetClip(this); allocated_reader = reader; init_reader_rotation(); }