Don't delete send_image because it is static. Fixes #2923
parent
d7680e1a44
commit
662b9894bd
|
@ -714,11 +714,9 @@ bool EventStream::sendFrame(int delta_us) {
|
||||||
Image *image = NULL;
|
Image *image = NULL;
|
||||||
|
|
||||||
if ( filepath[0] ) {
|
if ( filepath[0] ) {
|
||||||
Debug(1, "Loading image");
|
|
||||||
image = new Image(filepath);
|
image = new Image(filepath);
|
||||||
} else if ( ffmpeg_input ) {
|
} else if ( ffmpeg_input ) {
|
||||||
// Get the frame from the mp4 input
|
// Get the frame from the mp4 input
|
||||||
Debug(1,"Getting frame from ffmpeg");
|
|
||||||
FrameData *frame_data = &event_data->frames[curr_frame_id-1];
|
FrameData *frame_data = &event_data->frames[curr_frame_id-1];
|
||||||
AVFrame *frame = ffmpeg_input->get_frame(
|
AVFrame *frame = ffmpeg_input->get_frame(
|
||||||
ffmpeg_input->get_video_stream_id(),
|
ffmpeg_input->get_video_stream_id(),
|
||||||
|
@ -767,7 +765,11 @@ Debug(1, "Loading image");
|
||||||
|
|
||||||
switch ( type ) {
|
switch ( type ) {
|
||||||
case STREAM_JPEG :
|
case STREAM_JPEG :
|
||||||
send_image->EncodeJpeg(img_buffer, &img_buffer_size);
|
if ( send_image->EncodeJpeg(img_buffer, &img_buffer_size) ) {
|
||||||
|
Debug(1, "encoded JPEG");
|
||||||
|
} else {
|
||||||
|
// Failed
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case STREAM_ZIP :
|
case STREAM_ZIP :
|
||||||
#if HAVE_ZLIB_H
|
#if HAVE_ZLIB_H
|
||||||
|
@ -787,10 +789,6 @@ Debug(1, "Loading image");
|
||||||
Fatal("Unexpected frame type %d", type);
|
Fatal("Unexpected frame type %d", type);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if ( send_image != image ) {
|
|
||||||
delete send_image;
|
|
||||||
send_image = NULL;
|
|
||||||
}
|
|
||||||
delete image;
|
delete image;
|
||||||
image = NULL;
|
image = NULL;
|
||||||
} // end if send_raw or not
|
} // end if send_raw or not
|
||||||
|
@ -815,7 +813,7 @@ Debug(1, "Loading image");
|
||||||
fprintf(stdout, "Content-Length: %d\r\n\r\n", (int)filestat.st_size);
|
fprintf(stdout, "Content-Length: %d\r\n\r\n", (int)filestat.st_size);
|
||||||
if ( zm_sendfile(fileno(stdout), fileno(fdj), 0, (int)filestat.st_size) != (int)filestat.st_size ) {
|
if ( zm_sendfile(fileno(stdout), fileno(fdj), 0, (int)filestat.st_size) != (int)filestat.st_size ) {
|
||||||
/* sendfile() failed, use standard way instead */
|
/* sendfile() failed, use standard way instead */
|
||||||
img_buffer_size = fread( img_buffer, 1, sizeof(temp_img_buffer), fdj );
|
img_buffer_size = fread(img_buffer, 1, sizeof(temp_img_buffer), fdj);
|
||||||
if ( fwrite(img_buffer, img_buffer_size, 1, stdout) != 1 ) {
|
if ( fwrite(img_buffer, img_buffer_size, 1, stdout) != 1 ) {
|
||||||
fclose(fdj); /* Close the file handle */
|
fclose(fdj); /* Close the file handle */
|
||||||
Error("Unable to send raw frame %u: %s", curr_frame_id, strerror(errno));
|
Error("Unable to send raw frame %u: %s", curr_frame_id, strerror(errno));
|
||||||
|
|
Loading…
Reference in New Issue