Add an assert.
[dcpomatic.git] / src / lib / dcp_content.cc
index 8d27406fe1cc4917eae28173b6aa79829d28a976..f3751b1d83e665c0ae909ab48ba749be7488b404 100644 (file)
@@ -31,7 +31,6 @@
 #include "job.h"
 #include "log.h"
 #include "overlaps.h"
-#include "scope_guard.h"
 #include "text_content.h"
 #include "video_content.h"
 #include <dcp/dcp.h>
@@ -41,6 +40,7 @@
 #include <dcp/reel_picture_asset.h>
 #include <dcp/reel_subtitle_asset.h>
 #include <dcp/reel.h>
+#include <dcp/scope_guard.h>
 #include <libxml++/libxml++.h>
 #include <iterator>
 #include <iostream>
@@ -224,7 +224,7 @@ DCPContent::examine (shared_ptr<const Film> film, shared_ptr<Job> job)
        string const old_name = name ();
 
        ContentChangeSignalDespatcher::instance()->suspend();
-       ScopeGuard sg = []() {
+       dcp::ScopeGuard sg = []() {
                ContentChangeSignalDespatcher::instance()->resume();
        };
 
@@ -747,7 +747,7 @@ DCPContent::can_reference_text (shared_ptr<const Film> film, TextType type, stri
 
         for (auto i: decoder->reels()) {
                 if (type == TextType::OPEN_SUBTITLE) {
-                       if (i->main_subtitle()->entry_point().get_value_or(0) != 0) {
+                       if (i->main_subtitle() && i->main_subtitle()->entry_point().get_value_or(0) != 0) {
                                /// TRANSLATORS: this string will follow "Cannot reference this DCP: "
                                why_not = _("one of its subtitle reels has a non-zero entry point so it must be re-written.");
                                return false;