Fix bug reading fade in/out tags introduced in
authorCarl Hetherington <cth@carlh.net>
Thu, 27 Jan 2022 19:27:43 +0000 (20:27 +0100)
committerCarl Hetherington <cth@carlh.net>
Thu, 27 Jan 2022 19:27:43 +0000 (20:27 +0100)
7ca647ac6ae51893f2714d72816a4449a18e6c57

src/lib/video_content.cc

index 10a611691adc8106bc74f47151164bf07d6a8282..e52444678fcd53d5872fbb2604455c9d921873da 100644 (file)
@@ -179,8 +179,18 @@ VideoContent::VideoContent (Content* parent, cxml::ConstNodePtr node, int versio
        _yuv = node->optional_bool_child("YUV").get_value_or (true);
 
        if (version >= 32) {
-               _fade_in = node->optional_number_child<Frame>("VideoFadeIn").get_value_or(node->number_child<Frame>("FadeIn"));
-               _fade_out = node->optional_number_child<Frame>("VideoFadeOut").get_value_or(node->number_child<Frame>("FadeOut"));
+               auto vfi = node->optional_number_child<Frame>("VideoFadeIn");
+               if (vfi) {
+                       _fade_in = *vfi;
+               } else {
+                       _fade_in = node->number_child<Frame>("FadeIn");
+               }
+               auto vfo = node->optional_number_child<Frame>("VideoFadeOut");
+               if (vfo) {
+                       _fade_out = *vfo;
+               } else {
+                       _fade_out = node->number_child<Frame>("FadeOut");
+               }
        } else {
                _fade_in = _fade_out = 0;
        }