File tree Expand file tree Collapse file tree 1 file changed +15
-4
lines changed
Sources/Segment/Plugins/Platforms/Vendors Expand file tree Collapse file tree 1 file changed +15
-4
lines changed Original file line number Diff line number Diff line change @@ -66,9 +66,15 @@ internal class iOSVendorSystem: VendorSystem {
6666 override var userAgent : String ? {
6767 #if !os(tvOS)
6868 var userAgent : String ?
69- DispatchQueue . main. sync {
70- userAgent = WKWebView ( ) . value ( forKey: " userAgent " ) as? String
69+
70+ if Thread . isMainThread {
71+ userAgent = WKWebView ( ) . value ( forKey: " userAgent " ) as? String
72+ } else {
73+ DispatchQueue . main. sync {
74+ userAgent = WKWebView ( ) . value ( forKey: " userAgent " ) as? String
75+ }
7176 }
77+
7278 return userAgent
7379 #else
7480 // webkit isn't on tvos
@@ -233,9 +239,14 @@ internal class MacOSVendorSystem: VendorSystem {
233239
234240 override var userAgent : String ? {
235241 var userAgent : String ?
236- DispatchQueue . main. sync {
237- userAgent = WKWebView ( ) . value ( forKey: " userAgent " ) as? String
242+ if Thread . isMainThread {
243+ userAgent = WKWebView ( ) . value ( forKey: " userAgent " ) as? String
244+ } else {
245+ DispatchQueue . main. sync {
246+ userAgent = WKWebView ( ) . value ( forKey: " userAgent " ) as? String
247+ }
238248 }
249+
239250 return userAgent
240251 }
241252
You can’t perform that action at this time.
0 commit comments