add 1:1 convert, add es.po: thx sergio, cwdw zoom tweak, add done beep pots, bd forma...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / packagedispatcher.C
index f6d69734d3738741e51108abbf817f569aea8ed7..aa88d5f12cdae8f437929265b813b857bcfb0e61 100644 (file)
@@ -25,6 +25,7 @@
 #include "edl.h"
 #include "edlsession.h"
 #include "labels.h"
+#include "mainerror.h"
 #include "mutex.h"
 #include "mwindow.h"
 #include "packagedispatcher.h"
@@ -110,6 +111,11 @@ int PackageDispatcher::create_packages(MWindow *mwindow, EDL *edl,
                label = edl->labels->first;
                total_packages = 0;
                packages = new RenderPackage*[edl->labels->total() + 2];
+               if( !label ) {
+                       eprintf(_("Render file per label and no labels\n"));
+                       result = 1;
+                       break;
+               }
 
                Render::get_starting_number(default_asset->path,
                        current_number, number_start, total_digits, 3);
@@ -197,8 +203,7 @@ void PackageDispatcher::get_package_paths(ArrayList<char*> *path_list)
                        packaging_engine->get_package_paths(path_list);
                else {
                        for( int i=0; i<total_allocated; ++i )
-                               path_list->append(strdup(packages[i]->path));
-                       path_list->set_free();
+                               path_list->append(cstrdup(packages[i]->path));
                }
 
 }
@@ -322,6 +327,11 @@ int64_t PackageDispatcher::get_progress_max()
                                total_allocated * default_asset->sample_rate);
 }
 
+RenderPackage *PackageDispatcher::get_package(int number)
+{
+       return packages[number];
+}
+
 int PackageDispatcher::get_total_packages()
 {
        return total_allocated;