In this specific code path (recursive reading inside .blend files containing assets), reading datablocks marked as asset would move ownership over the asset metadata without indicating that in the source that owned it previously. This would cause a double free attempt.