summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2015-09-16 23:43:15 +0100
committerCarl Hetherington <cth@carlh.net>2015-09-16 23:43:15 +0100
commit0d36ac996c7aed9e283cd05314ae2124384df5ea (patch)
treed3f437be303e3f0025cbb4b923126eec487a6f35 /src
parentcc471c30e8aee47f7ef704c2ace995b0fce3e872 (diff)
Fix exception on adding an empty folder as content (#691).
Diffstat (limited to 'src')
-rw-r--r--src/lib/content_factory.cc5
-rw-r--r--src/wx/content_panel.cc4
2 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/content_factory.cc b/src/lib/content_factory.cc
index c61889363..5b6d71641 100644
--- a/src/lib/content_factory.cc
+++ b/src/lib/content_factory.cc
@@ -77,6 +77,11 @@ content_factory (shared_ptr<const Film> film, boost::filesystem::path path)
shared_ptr<Content> content;
if (boost::filesystem::is_directory (path)) {
+
+ if (boost::filesystem::is_empty (path)) {
+ return shared_ptr<Content> ();
+ }
+
/* Guess if this is a DCP or a set of images: read the first ten filenames and if they
are all valid image files we assume it is a set of images.
*/
diff --git a/src/wx/content_panel.cc b/src/wx/content_panel.cc
index 2552f5098..8ca0d5b29 100644
--- a/src/wx/content_panel.cc
+++ b/src/wx/content_panel.cc
@@ -277,6 +277,10 @@ ContentPanel::add_folder_clicked ()
}
shared_ptr<Content> content = content_factory (_film, path);
+ if (!content) {
+ error_dialog (_parent, _("No content found in this folder."));
+ return;
+ }
shared_ptr<ImageContent> ic = dynamic_pointer_cast<ImageContent> (content);
if (ic) {