# List of suppressions

# Android will not support StackTrace.
StackTrace.*
#
# Sometimes this is automatically generated by run_tests.py
VerifyPathControlledByUserTest.Symlinks

# http://crbug.com/138845
MessagePumpLibeventTest.TestWatchingFromBadThread

StringPrintfTest.StringPrintfMisc
StringPrintfTest.StringAppendfString
StringPrintfTest.StringAppendfInt
StringPrintfTest.StringPrintfBounds
ProcessUtilTest.GetAppOutputRestrictedSIGPIPE
# TODO(jrg): Fails on bots.  Works locally.  Figure out why.  2/6/12
FieldTrialTest.*
# Flaky?
ScopedJavaRefTest.RefCounts
# Death tests are not supported with apks.
*DeathTest*
FileTest.MemoryCorruption
MessagePumpLibeventTest.QuitOutsideOfRun
ScopedFD.ScopedFDCrashesOnCloseFailure

# http://crbug.com/245043
StackContainer.BufferAlignment
