es.po update by rafa, add ms win10 cygwin port, add pulseaudio, new config flags...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / audioodevice.C
index 2beb4c8c69de58570712671ca5afab572c782e92..e4f2cd01c67cd7c08a756a51b5f27679b0979bfd 100644 (file)
@@ -375,11 +375,15 @@ void AudioDevice::run_output()
                output_buffer_t *obfr = &output[buffer_num];
                obfr->play_lock->lock("AudioDevice::run 1");
                if( !is_playing_back || playback_interrupted ) break;
-               if( obfr->last_buffer ) { lowlevel_out->flush_device(); break; }
+               if( obfr->last_buffer ) {
+                       if( lowlevel_out ) lowlevel_out->flush_device();
+                       break;
+               }
 // get size for position information
 // write converted buffer synchronously
                double bfr_time = obfr->bfr_time;
-               int result = lowlevel_out->write_buffer(obfr->buffer, obfr->size);
+               int result = !lowlevel_out ? -1 :
+                       lowlevel_out->write_buffer(obfr->buffer, obfr->size);
 // allow writing to the buffer
                obfr->arm_lock->unlock();
                if( !result ) {