Fix a bug in hld_strm_task() where hs was accessed after it had already been
freed via hldstream_free(&hs). The task expiration update and queueing
now safely rely on <usr> rather than <hs->usr>.
* is also the stream with the oldest expiration time.
*/
first_hs = LIST_ELEM(usr->strms.n, struct hldstream *, list);
- hs->usr->task->expire = first_hs->expire;
- task_queue(hs->usr->task);
+ usr->task->expire = first_hs->expire;
+ task_queue(usr->task);
}
goto leave;