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 {
66
66
override var userAgent : String ? {
67
67
#if !os(tvOS)
68
68
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
+ }
71
76
}
77
+
72
78
return userAgent
73
79
#else
74
80
// webkit isn't on tvos
@@ -233,9 +239,14 @@ internal class MacOSVendorSystem: VendorSystem {
233
239
234
240
override var userAgent : String ? {
235
241
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
+ }
238
248
}
249
+
239
250
return userAgent
240
251
}
241
252
You can’t perform that action at this time.
0 commit comments