]> git.sesse.net Git - casparcg/commitdiff
[thumbnail_generator] #579 Throw file_not_found in generate() for non existant media...
authorHelge Norberg <helge.norberg@svt.se>
Tue, 21 Mar 2017 10:07:00 +0000 (11:07 +0100)
committerHelge Norberg <helge.norberg@svt.se>
Tue, 21 Mar 2017 10:07:00 +0000 (11:07 +0100)
core/thumbnail_generator.cpp

index 7f41ed3a3c5d8348b3f6dc2f13ec506c5762d77f..b2a00e957541fb2af27c0cedb2559086872094a0 100644 (file)
@@ -171,16 +171,24 @@ public:
        void generate(const std::wstring& media_file)
        {
                using namespace boost::filesystem;
-               auto base_file = media_path_ / media_file;
-               auto folder = base_file.parent_path();
+
+               auto base_file  = media_path_ / media_file;
+               auto folder             = base_file.parent_path();
+               bool found              = false;
 
                for (boost::filesystem::directory_iterator iter(folder); iter != boost::filesystem::directory_iterator(); ++iter)
                {
                        auto stem = iter->path().stem();
 
                        if (boost::iequals(stem.wstring(), base_file.filename().wstring()))
+                       {
                                monitor_->reemmit(iter->path());
+                               found = true;
+                       }
                }
+
+               if (!found)
+                       CASPAR_THROW_EXCEPTION(file_not_found() << msg_info(L"Media file " + media_file + L" not found"));
        }
 
        void generate_all()