validate: reporter: break cyclic references with reports
My patch fixing monitor leak (15e7f1bb) introduced a ref cycle between GstValidateReporter and GstValidateReport. The reports uses its reporter so it needs a ref on it to ensure it's stay alive. But reports are owned by GstValidateReporter and/or GstValidateRunner. The best way I found to break this cycle is to introduce this purge method. It's not great but the design is a bit tricky. Reviewed-by:Thibault Saunier <tsaunier@gnome.org> Differential Revision: https://phabricator.freedesktop.org/D1029
Showing
- validate/gst/validate/gst-validate-bin-monitor.c 14 additions, 2 deletionsvalidate/gst/validate/gst-validate-bin-monitor.c
- validate/gst/validate/gst-validate-element-monitor.c 9 additions, 1 deletionvalidate/gst/validate/gst-validate-element-monitor.c
- validate/gst/validate/gst-validate-reporter.c 19 additions, 0 deletionsvalidate/gst/validate/gst-validate-reporter.c
- validate/gst/validate/gst-validate-reporter.h 2 additions, 0 deletionsvalidate/gst/validate/gst-validate-reporter.h
- validate/gst/validate/media-descriptor-writer.c 1 addition, 0 deletionsvalidate/gst/validate/media-descriptor-writer.c
- validate/tools/gst-validate-media-check.c 6 additions, 2 deletionsvalidate/tools/gst-validate-media-check.c
- validate/tools/gst-validate-transcoding.c 1 addition, 0 deletionsvalidate/tools/gst-validate-transcoding.c
- validate/tools/gst-validate.c 1 addition, 0 deletionsvalidate/tools/gst-validate.c
Loading
Please register or sign in to comment