digitalmethodsinitiative / zeeschuimer

A browser extension to collect social media data with.
Other
184 stars 14 forks source link

Generated object URLs are never revoked #14

Closed ianroberts closed 9 months ago

ianroberts commented 1 year ago

Currently whenever the user clicks a button to download ndjson Zeeschuimer creates a new object URL:

https://github.com/digitalmethodsinitiative/zeeschuimer/blob/6d305ffa19ec0281f02baca85908ea9091dfe763/popup/interface.js#L273-L277

These URLs are never released, so in a long-running session even if you periodically download the ndjson and then "reset" to discard the downloaded data, the ndjson blobs are still referenced and cannot be freed from memory.

The code should track when the ndjson download is complete and then call revokeObjectURL appropriately.

stijn-uva commented 9 months ago

Hi @ianroberts, sorry for the delayed response and thanks for this fix. It was implemented in the main branch directly for my convenience, but I'm grateful for you bringing this to our attention!