mpegts network_scan: fix queue ordering issue
This was causing entries just complete (idle scan) to get re-added to the head! Which ultimately resulted in only N entries ever getting serviced (where N is the number of available tuners)
This commit is contained in:
parent
88e07ba84a
commit
147c631e3c
1 changed files with 4 additions and 2 deletions
|
@ -93,7 +93,8 @@ mpegts_network_scan_timer_cb ( void *p )
|
|||
if (r == SM_CODE_NO_VALID_ADAPTER) {
|
||||
if (!mark) mark = mm;
|
||||
TAILQ_REMOVE(&mpegts_network_scan_pend, mm, mm_scan_link);
|
||||
TAILQ_INSERT_SORTED(&mpegts_network_scan_pend, mm, mm_scan_link, mm_cmp);
|
||||
TAILQ_INSERT_SORTED_R(&mpegts_network_scan_pend, mpegts_mux_queue,
|
||||
mm, mm_scan_link, mm_cmp);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -226,7 +227,8 @@ mpegts_network_scan_queue_add ( mpegts_mux_t *mm, int weight )
|
|||
|
||||
/* Add new entry */
|
||||
mm->mm_scan_state = MM_SCAN_STATE_PEND;
|
||||
TAILQ_INSERT_SORTED(&mpegts_network_scan_pend, mm, mm_scan_link, mm_cmp);
|
||||
TAILQ_INSERT_SORTED_R(&mpegts_network_scan_pend, mpegts_mux_queue,
|
||||
mm, mm_scan_link, mm_cmp);
|
||||
mpegts_network_scan_timer_arm(0);
|
||||
mpegts_network_scan_notify(mm);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue