Revision 7f4e472cc131f5a687ec44524ff106a80cadff3f authored by Lorenz Bauer on 13 February 2024, 10:24:58 UTC, committed by Lorenz Bauer on 14 February 2024, 09:56:48 UTC
Watcher.loop will never exit if Watcher.Close is called while an event or error is being written to w.Errors or w.Events. Fix this by checking for w.stop. This allows running TestWatcher a couple thousand times without running into "too many open files". Fixes: 1cab8f375a ("certloader: Add fswatcher package") Signed-off-by: Lorenz Bauer <lmb@isovalent.com>
1 parent b973589
.clang-format
# Configuration file for clang-format.
# Intended for clang-format >= 15.
#
# The list and meaning of the options is available at:
#
# https://clang.llvm.org/docs/ClangFormatStyleOptions.html
---
# BasedOnStyle # No base style in use
# AccessModifierOffset # We don't use access modifiers
AlignAfterOpenBracket: Align
AlignArrayOfStructures: Left
AlignConsecutiveAssignments: false
AlignConsecutiveBitFields:
Enabled: true
AcrossEmptyLines: true
AcrossComments: true
AlignConsecutiveDeclarations: false
AlignConsecutiveMacros:
Enabled: true
AcrossEmptyLines: true
AcrossComments: true
AlignEscapedNewlines: Left
AlignOperands: true
AlignTrailingComments: true
AllowAllArgumentsOnNextLine: false
# AllowAllConstructorInitializersOnNextLine # Deprecated
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
AllowShortEnumsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortIfStatementsOnASingleLine: Never
# AllowShortLambdasOnASingleLine # We don't use lambdas
AllowShortLoopsOnASingleLine: false
# AlwaysBreakAfterDefinitionReturnType # Deprecated
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
# AlwaysBreakTemplateDeclarations # We don't use templates
# AttributeMacros # Unused at this time
BinPackArguments: true
BinPackParameters: true
BitFieldColonSpacing: None
BraceWrapping:
AfterCaseLabel: true
# AfterClass # We don't use classes
AfterControlStatement: Never
AfterEnum: false
AfterFunction: true
# AfterNamespace # We don't use namespaces
# AfterObjCDeclaration # We don't use ObjC
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
# BeforeCatch # We don't use try/catch
BeforeElse: false
# BeforeLambdaBody # We don't use lambdas
BeforeWhile: false
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
# SplitEmptyNamespace # We don't use namespaces
# BreakAfterJavaFieldAnnotations # We don't use Java
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Custom
# BreakBeforeConceptDeclarations # We don't use concepts
BreakBeforeTernaryOperators: false
# BreakConstructorInitializers # We don't use constructors
# BreakInheritanceList # We don't use inheritance
BreakStringLiterals: false
ColumnLimit: 80
# CommentPragmas # Unused at this time
# CompactNamespaces # We don't use namespaces
# ConstructorInitializerAllOnOneLineOrOnePerLine # Deprecated
# ConstructorInitializerIndentWidth # We don't use constructors
ContinuationIndentWidth: 8
Cpp11BracedListStyle: false
# DeriveLineEnding # Deprecated
DerivePointerAlignment: false
DisableFormat: false
# EmptyLineAfterAccessModifier # We don't use access modifiers
# EmptyLineBeforeAccessModifier # We don't use access modifiers
# ExperimentalAutoDetectBinPacking # Experimental, "Use at your own risk"
# FixNamespaceComments # We don't use namespaces
# ForEachMacros # Unused at this time
# IfMacros # Unused at this time
IncludeBlocks: Preserve
# IncludeCategories # Unused at this time
# IncludeIsMainRegex # Unused at this time
# IncludeIsMainSourceRegex # Unused at this time
# IndentAccessModifiers # We don't use access modifiers
IndentCaseBlocks: false
IndentCaseLabels: false
# IndentExternBlock # We don't use extern blocks
IndentGotoLabels: false
IndentPPDirectives: AfterHash
# IndentRequiresClause # We don't use equire clauses
IndentWidth: 8
IndentWrappedFunctionNames: false
InsertBraces: false
# InsertTrailingCommas # We don't use JavaScript
# JavaImportGroups # We don't use Java
# JavaScriptQuotes # We don't use JavaScript
# JavaScriptWrapImports # We don't use JavaScript
KeepEmptyLinesAtTheStartOfBlocks: false
# LambdaBodyIndentation # We don't use lambdas
Language: Cpp
# MacroBlockBegin # Unused at this time
# MacroBlockEnd # Unused at this time
MaxEmptyLinesToKeep: 1
# NamespaceIndentation # We don't use namespaces
# NamespaceMacros # We don't use namespaces
# ObjCBinPackProtocolList # We don't use ObjC
# ObjCBlockIndentWidth # We don't use ObjC
# ObjCBreakBeforeNestedBlockParam # We don't use ObjC
# ObjCSpaceAfterProperty # We don't use ObjC
# ObjCSpaceBeforeProtocolList # We don't use ObjC
PPIndentWidth: 1
# PackConstructorInitializers # We don't use constructors
# Penalties decide in what order (weighting) things should be done if a line is
# too long: 100 = try everything else before this.
# See https://stackoverflow.com/a/46749925
PenaltyBreakAssignment: 10
PenaltyBreakBeforeFirstCallParameter: 0
PenaltyBreakComment: 0
PenaltyBreakFirstLessLess: 0
PenaltyBreakOpenParenthesis: 100
PenaltyBreakString: 10
# PenaltyBreakTemplateDeclaration # We don't use templates
PenaltyExcessCharacter: 100
PenaltyIndentedWhitespace: 100
PenaltyReturnTypeOnItsOwnLine: 100
PointerAlignment: Right
QualifierAlignment: Leave
# QualifierOrder # Unused at this time
# RawStringFormats # Unused at this time
# ReferenceAlignment # We don't use references
ReflowComments: false
RemoveBracesLLVM: false
# RequiresClausePosition # We don't use require clauses
SeparateDefinitionBlocks: Leave
# ShortNamespaceLines # We don't use namespaces
SortIncludes: Never
# SortJavaStaticImport # We don't use Java
# SortUsingDeclarations # We don't use using declarations
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
# SpaceAfterTemplateKeyword # We don't use templates
SpaceAroundPointerQualifiers: Default
SpaceBeforeAssignmentOperators: true
SpaceBeforeCaseColon: false
# SpaceBeforeCpp11BracedList # We don't use C++11 braced lists to initialize objects
# SpaceBeforeCtorInitializerColon # We don't use constructors
# SpaceBeforeInheritanceColon # We don't use inheritance
SpaceBeforeParens: ControlStatements
# SpaceBeforeParensOptions # No need for custom SpaceBeforeParens options
# SpaceBeforeRangeBasedForLoopColon # We don't use range-based for loops
SpaceBeforeSquareBrackets: false
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
# SpacesInAngles # We don't use templates
SpacesInCStyleCastParentheses: false
SpacesInConditionalStatement: false
SpacesInContainerLiterals: false
SpacesInLineCommentPrefix:
Minimum: 1
Maximum: 1
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard: C++03
# StatementAttributeLikeMacros # Unused at this time
# StatementMacros # Unused at this time
TabWidth: 8
# TypenameMacros # Unused at this time
# UseCRLF # Deprecated
UseTab: Always
# WhitespaceSensitiveMacros # Unused at this time
...
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...