weston-log-flight-rec: allow re-running a compositor
weston_primary_flight_recorder_ring_buffer needs to be cleared on destruction of the subscriber it was assigned from so that a compositor and be re-executed in-process (static variables do not get re-initialized automatically). This will be used by the test harness when it will execute wet_main() multiple times in the same process. Otherwise it would hit the assert in weston_log_subscriber_create_flight_rec(). Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com>
This commit is contained in:
parent
f0d3a61491
commit
8fc4b59bfd
|
@ -265,11 +265,18 @@ weston_log_subscriber_create_flight_rec(size_t size)
|
|||
*
|
||||
* @param sub the weston_log_subscriber object
|
||||
*
|
||||
* This also resets weston_primary_flight_recorder_ring_buffer to NULL if it
|
||||
* is the destroyed subscriber.
|
||||
*/
|
||||
WL_EXPORT void
|
||||
weston_log_subscriber_destroy_flight_rec(struct weston_log_subscriber *sub)
|
||||
{
|
||||
struct weston_debug_log_flight_recorder *flight_rec = to_flight_recorder(sub);
|
||||
struct weston_debug_log_flight_recorder *flight_rec;
|
||||
|
||||
flight_rec = to_flight_recorder(sub);
|
||||
if (weston_primary_flight_recorder_ring_buffer == &flight_rec->rb)
|
||||
weston_primary_flight_recorder_ring_buffer = NULL;
|
||||
|
||||
free(flight_rec->rb.buf);
|
||||
free(flight_rec);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue