TSan config
This commit is contained in:
parent
31c6f44b48
commit
1658812102
|
@ -435,6 +435,7 @@
|
||||||
4C3EF802210918740007EBF7 /* SSKEnvelopeTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C3EF801210918740007EBF7 /* SSKEnvelopeTest.swift */; };
|
4C3EF802210918740007EBF7 /* SSKEnvelopeTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C3EF801210918740007EBF7 /* SSKEnvelopeTest.swift */; };
|
||||||
4C4AEC4520EC343B0020E72B /* DismissableTextField.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C4AEC4420EC343B0020E72B /* DismissableTextField.swift */; };
|
4C4AEC4520EC343B0020E72B /* DismissableTextField.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C4AEC4420EC343B0020E72B /* DismissableTextField.swift */; };
|
||||||
4C4BC6C32102D697004040C9 /* ContactDiscoveryOperationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C4BC6C22102D697004040C9 /* ContactDiscoveryOperationTest.swift */; };
|
4C4BC6C32102D697004040C9 /* ContactDiscoveryOperationTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C4BC6C22102D697004040C9 /* ContactDiscoveryOperationTest.swift */; };
|
||||||
|
4C63CC00210A620B003AE45C /* SignalTSan.supp in Resources */ = {isa = PBXBuildFile; fileRef = 4C63CBFF210A620B003AE45C /* SignalTSan.supp */; };
|
||||||
4C6F527C20FFE8400097DEEE /* SignalUBSan.supp in Resources */ = {isa = PBXBuildFile; fileRef = 4C6F527B20FFE8400097DEEE /* SignalUBSan.supp */; };
|
4C6F527C20FFE8400097DEEE /* SignalUBSan.supp in Resources */ = {isa = PBXBuildFile; fileRef = 4C6F527B20FFE8400097DEEE /* SignalUBSan.supp */; };
|
||||||
4CB5F26720F6E1E2004D1B42 /* MenuActionsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CFF4C0920F55BBA005DA313 /* MenuActionsViewController.swift */; };
|
4CB5F26720F6E1E2004D1B42 /* MenuActionsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CFF4C0920F55BBA005DA313 /* MenuActionsViewController.swift */; };
|
||||||
4CB5F26920F7D060004D1B42 /* MessageActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CB5F26820F7D060004D1B42 /* MessageActions.swift */; };
|
4CB5F26920F7D060004D1B42 /* MessageActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CB5F26820F7D060004D1B42 /* MessageActions.swift */; };
|
||||||
|
@ -1116,6 +1117,7 @@
|
||||||
4C3EF801210918740007EBF7 /* SSKEnvelopeTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SSKEnvelopeTest.swift; sourceTree = "<group>"; };
|
4C3EF801210918740007EBF7 /* SSKEnvelopeTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SSKEnvelopeTest.swift; sourceTree = "<group>"; };
|
||||||
4C4AEC4420EC343B0020E72B /* DismissableTextField.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DismissableTextField.swift; sourceTree = "<group>"; };
|
4C4AEC4420EC343B0020E72B /* DismissableTextField.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DismissableTextField.swift; sourceTree = "<group>"; };
|
||||||
4C4BC6C22102D697004040C9 /* ContactDiscoveryOperationTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = ContactDiscoveryOperationTest.swift; path = contact/ContactDiscoveryOperationTest.swift; sourceTree = "<group>"; };
|
4C4BC6C22102D697004040C9 /* ContactDiscoveryOperationTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = ContactDiscoveryOperationTest.swift; path = contact/ContactDiscoveryOperationTest.swift; sourceTree = "<group>"; };
|
||||||
|
4C63CBFF210A620B003AE45C /* SignalTSan.supp */ = {isa = PBXFileReference; lastKnownFileType = text; path = SignalTSan.supp; sourceTree = "<group>"; };
|
||||||
4C6F527B20FFE8400097DEEE /* SignalUBSan.supp */ = {isa = PBXFileReference; lastKnownFileType = text; path = SignalUBSan.supp; sourceTree = "<group>"; };
|
4C6F527B20FFE8400097DEEE /* SignalUBSan.supp */ = {isa = PBXFileReference; lastKnownFileType = text; path = SignalUBSan.supp; sourceTree = "<group>"; };
|
||||||
4CB5F26820F7D060004D1B42 /* MessageActions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessageActions.swift; sourceTree = "<group>"; };
|
4CB5F26820F7D060004D1B42 /* MessageActions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessageActions.swift; sourceTree = "<group>"; };
|
||||||
4CC0B59B20EC5F2E00CF6EE0 /* ConversationConfigurationSyncOperation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConversationConfigurationSyncOperation.swift; sourceTree = "<group>"; };
|
4CC0B59B20EC5F2E00CF6EE0 /* ConversationConfigurationSyncOperation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConversationConfigurationSyncOperation.swift; sourceTree = "<group>"; };
|
||||||
|
@ -2462,6 +2464,7 @@
|
||||||
D221A094169C9E5E00537ABF /* Supporting Files */ = {
|
D221A094169C9E5E00537ABF /* Supporting Files */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
4C63CBFF210A620B003AE45C /* SignalTSan.supp */,
|
||||||
4C6F527B20FFE8400097DEEE /* SignalUBSan.supp */,
|
4C6F527B20FFE8400097DEEE /* SignalUBSan.supp */,
|
||||||
B6B6C3C419193F5B00C0B76B /* Translations */,
|
B6B6C3C419193F5B00C0B76B /* Translations */,
|
||||||
D221A099169C9E5E00537ABF /* main.m */,
|
D221A099169C9E5E00537ABF /* main.m */,
|
||||||
|
@ -2823,6 +2826,7 @@
|
||||||
isa = PBXResourcesBuildPhase;
|
isa = PBXResourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
4C63CC00210A620B003AE45C /* SignalTSan.supp in Resources */,
|
||||||
4C6F527C20FFE8400097DEEE /* SignalUBSan.supp in Resources */,
|
4C6F527C20FFE8400097DEEE /* SignalUBSan.supp in Resources */,
|
||||||
34CF078A203E6B78005C4D61 /* end_call_tone_cept.caf in Resources */,
|
34CF078A203E6B78005C4D61 /* end_call_tone_cept.caf in Resources */,
|
||||||
AD83FF3F1A73426500B5C81A /* audio_pause_button_blue.png in Resources */,
|
AD83FF3F1A73426500B5C81A /* audio_pause_button_blue.png in Resources */,
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
buildForAnalyzing = "YES">
|
buildForAnalyzing = "YES">
|
||||||
<BuildableReference
|
<BuildableReference
|
||||||
BuildableIdentifier = "primary"
|
BuildableIdentifier = "primary"
|
||||||
BlueprintIdentifier = "13CED0CFD8586E9C6BAC02E581D06068"
|
BlueprintIdentifier = "1115976DB2D993FB7AAB33CEBB52F472"
|
||||||
BuildableName = "SignalServiceKit.framework"
|
BuildableName = "SignalServiceKit.framework"
|
||||||
BlueprintName = "SignalServiceKit"
|
BlueprintName = "SignalServiceKit"
|
||||||
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
ReferencedContainer = "container:Pods/Pods.xcodeproj">
|
||||||
|
@ -76,13 +76,13 @@
|
||||||
buildConfiguration = "Debug"
|
buildConfiguration = "Debug"
|
||||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||||
enableAddressSanitizer = "YES"
|
enableThreadSanitizer = "YES"
|
||||||
enableASanStackUseAfterReturn = "YES"
|
|
||||||
enableUBSanitizer = "YES"
|
enableUBSanitizer = "YES"
|
||||||
launchStyle = "0"
|
launchStyle = "0"
|
||||||
useCustomWorkingDirectory = "NO"
|
useCustomWorkingDirectory = "NO"
|
||||||
ignoresPersistentStateOnLaunch = "NO"
|
ignoresPersistentStateOnLaunch = "NO"
|
||||||
debugDocumentVersioning = "YES"
|
debugDocumentVersioning = "YES"
|
||||||
|
stopOnEveryThreadSanitizerIssue = "YES"
|
||||||
stopOnEveryUBSanitizerIssue = "YES"
|
stopOnEveryUBSanitizerIssue = "YES"
|
||||||
debugServiceExtension = "internal"
|
debugServiceExtension = "internal"
|
||||||
allowLocationSimulation = "YES"
|
allowLocationSimulation = "YES"
|
||||||
|
@ -108,6 +108,11 @@
|
||||||
value = "suppressions=SignalUBSan.supp"
|
value = "suppressions=SignalUBSan.supp"
|
||||||
isEnabled = "YES">
|
isEnabled = "YES">
|
||||||
</EnvironmentVariable>
|
</EnvironmentVariable>
|
||||||
|
<EnvironmentVariable
|
||||||
|
key = "TSAN_OPTIONS"
|
||||||
|
value = "suppressions=SignalTSan.supp"
|
||||||
|
isEnabled = "YES">
|
||||||
|
</EnvironmentVariable>
|
||||||
<EnvironmentVariable
|
<EnvironmentVariable
|
||||||
key = "DYLD_PRINT_STATISTICS"
|
key = "DYLD_PRINT_STATISTICS"
|
||||||
value = "1"
|
value = "1"
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
# For syntax details, see https://github.com/google/sanitizers/wiki/ThreadSanitizerSuppressions
|
||||||
|
|
||||||
|
race:sqlite3.c
|
|
@ -114,10 +114,10 @@ NSString *const TSAccountManager_ServerSignalingKey = @"TSStorageServerSignaling
|
||||||
|
|
||||||
- (BOOL)isRegistered
|
- (BOOL)isRegistered
|
||||||
{
|
{
|
||||||
if (_isRegistered) {
|
@synchronized (self) {
|
||||||
return YES;
|
if (_isRegistered) {
|
||||||
} else {
|
return YES;
|
||||||
@synchronized (self) {
|
} else {
|
||||||
// Cache this once it's true since it's called alot, involves a dbLookup, and once set - it doesn't change.
|
// Cache this once it's true since it's called alot, involves a dbLookup, and once set - it doesn't change.
|
||||||
_isRegistered = [self storedLocalNumber] != nil;
|
_isRegistered = [self storedLocalNumber] != nil;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue