Fix memory leak caused by requiring component.

This commit is contained in:
pocketW authored and yuhan6665 committed 2022-04-28 10:46:56 -04:00
1 parent 00c4b6f44f
commit 3bfd6853f4
1 file changed
+6 -5
+6 -5
View File
@@ -14,12 +14,13 @@ import (
// newFakeDNSSniffer Creates a Fake DNS metadata sniffer // newFakeDNSSniffer Creates a Fake DNS metadata sniffer
func newFakeDNSSniffer(ctx context.Context) (protocolSnifferWithMetadata, error) { func newFakeDNSSniffer(ctx context.Context) (protocolSnifferWithMetadata, error) {
var fakeDNSEngine dns.FakeDNSEngine var fakeDNSEngine dns.FakeDNSEngine
err := core.RequireFeatures(ctx, func(fdns dns.FakeDNSEngine) { {
fakeDNSEngine = fdns fakeDNSEngineFeat := core.MustFromContext(ctx).GetFeature(fakeDNSEngine)
}) if fakeDNSEngineFeat != nil {
if err != nil { fakeDNSEngine = fakeDNSEngineFeat.(dns.FakeDNSEngine)
return protocolSnifferWithMetadata{}, err }
} }
if fakeDNSEngine == nil { if fakeDNSEngine == nil {
errNotInit := newError("FakeDNSEngine is not initialized, but such a sniffer is used").AtError() errNotInit := newError("FakeDNSEngine is not initialized, but such a sniffer is used").AtError()
return protocolSnifferWithMetadata{}, errNotInit return protocolSnifferWithMetadata{}, errNotInit