OSDN Git Service

CLI: exit rather than continue when invalid input audio tracks are selected.
authoreddyg <eddyg@b64f7644-9d1e-0410-96f1-a4d463321fa5>
Tue, 9 Sep 2008 02:34:57 +0000 (02:34 +0000)
committereddyg <eddyg@b64f7644-9d1e-0410-96f1-a4d463321fa5>
Tue, 9 Sep 2008 02:34:57 +0000 (02:34 +0000)
git-svn-id: svn://localhost/HandBrake/trunk@1681 b64f7644-9d1e-0410-96f1-a4d463321fa5

test/test.c

index 45b2541..39ebaf9 100644 (file)
@@ -957,21 +957,22 @@ static int HandleEvents( hb_handle_t * h )
             }
 
             tmp_num_audio_tracks = num_audio_tracks = hb_list_count(audios);
-            for (i = 0; i < num_audio_tracks; i++)
+            for (i = 0; i < tmp_num_audio_tracks; i++)
             {
                 audio = hb_list_item(audios, 0);
                 if( (audio == NULL) || (audio->in.track == -1) ||
                     (audio->out.track == -1) || (audio->out.codec == 0) )
                 {
-                    tmp_num_audio_tracks--;
+                    num_audio_tracks--;
                 }
                 else
                 {
                     if( hb_audio_add( job, audio ) == 0 )
                     {
-                        fprintf(stderr, "ERROR: Invalid audio input track '%u', skipping.\n", 
+                        fprintf(stderr, "ERROR: Invalid audio input track '%u', exiting.\n", 
                                 audio->in.track + 1 );
-                        tmp_num_audio_tracks--;
+                        num_audio_tracks--;
+                        exit(3);
                     }
                 }
                 hb_list_rem(audios, audio);
@@ -979,8 +980,6 @@ static int HandleEvents( hb_handle_t * h )
                     free( audio );
             }
 
-            num_audio_tracks = tmp_num_audio_tracks;
-
             /* Audio Codecs */
             i = 0;
             if( acodecs )