diff --git a/IPtProxy.go/IPtProxy.go b/IPtProxy.go/IPtProxy.go
index 977166b18c126c89445b2c086cc3f946158035bd..5933c5772b6c1d93e7c36d4c71669c8dd8fdf308 100644
--- a/IPtProxy.go/IPtProxy.go
+++ b/IPtProxy.go/IPtProxy.go
@@ -264,7 +264,7 @@ func StartSnowflakeProxy(capacity int, broker, relay, stun, natProbe, logFile st
 		capacity = 0
 	}
 
-	snowflakeProxy = &sfp.SnowflakeProxy{
+	snowflakeProxy = &sfp.SnowflakeProxy {
 		Capacity:           uint(capacity),
 		STUNURL:            stun,
 		BrokerURL:          broker,
@@ -315,10 +315,11 @@ func StopSnowflakeProxy() {
 		return
 	}
 
-	go func() {
+	go func(snowflakeProxy *sfp.SnowflakeProxy) {
 		snowflakeProxy.Stop()
-		snowflakeProxy = nil
-	}()
+	}(snowflakeProxy)
+
+    snowflakeProxy = nil
 }
 
 // Hack: Set some environment variables that are either