@@ -1405,16 +1405,17 @@ static int PlayList_read_thread(void* data) {
1405
1405
GopReader_close (gop_reader , playlist );
1406
1406
Representation * rep = playlist -> adaptation_set .representations [new_index ];
1407
1407
if (ff_check_interrupt (& s -> interrupt_callback )) {
1408
- TagQueue_abort (& playlist -> tag_queue );
1409
1408
break ;
1410
1409
}
1411
1410
GopReader_init (gop_reader , rep , s , playlist );
1412
1411
ret = GopReader_download_gop (gop_reader , & playlist -> multi_rate_adaption , playlist );
1413
1412
if (ret < 0 ) {
1414
1413
LasStatistic_on_rep_read_error (playlist -> las_statistic , ret );
1414
+ break ;
1415
1415
}
1416
1416
}
1417
1417
1418
+ TagQueue_abort (& playlist -> tag_queue );
1418
1419
if (playlist -> algo_thread ) {
1419
1420
log_info ("Signals algo_thread" );
1420
1421
algo_cond_signal (playlist );
@@ -1891,7 +1892,7 @@ static int las_read_header(AVFormatContext* s) {
1891
1892
1892
1893
fail :
1893
1894
las_close (s );
1894
- return ret == 0 ? 0 : AVERROR_EOF ;
1895
+ return ret == 0 ? 0 : AVERROR_EXIT ;
1895
1896
}
1896
1897
1897
1898
/*
@@ -2056,10 +2057,7 @@ static int las_read_packet(AVFormatContext* s, AVPacket* pkt) {
2056
2057
LasStatistic_on_read_packet (playlist -> las_statistic , playlist );
2057
2058
2058
2059
fail :
2059
- if (ret != 0 ) {
2060
- log_error ("ret:%s(0x%x), will return AVERROR_EOF" , av_err2str (ret ), ret );
2061
- }
2062
- return ret == 0 ? 0 : AVERROR_EOF ;
2060
+ return ret == 0 ? 0 : AVERROR_EXIT ;
2063
2061
}
2064
2062
2065
2063
static int las_read_seek (AVFormatContext * s , int stream_index ,
0 commit comments