github-vet / github-vet/rangeloop-pointer-findings

irocn/irocn_search: modules/dispatch/dispatch.go; 41 LoC

Open
#7,880 0 comments 0 reactions 0 assignees View on GitHub
fresh small
Dominant language
No language data
Stars
0
Forks
0
PR merge metrics
PR metrics pending

Description

Found a possible issue in [irocn/irocn_search](https://www.github.com/irocn/irocn_search) at [modules/dispatch/dispatch.go](https://github.com/irocn/irocn_search/blob/d9df574ffc4fab201af319f38667692a7b293835/modules/dispatch/dispatch.go#L33-L73)

Below is the message reported by the analyzer for this snippet of code. Beware that the analyzer only reports the first
issue it finds, so please do not limit your consideration to the contents of the below message.

> function call which takes a reference to v at line 67 may start a goroutine

[Click here to see the code in its original context.](https://github.com/irocn/irocn_search/blob/d9df574ffc4fab201af319f38667692a7b293835/modules/dispatch/dispatch.go#L33-L73)

Click here to show the 41 line(s) of Go which triggered the analyzer.

```go
for _, v := range tasks {
log.Trace("get task from db, ", v.ID)

if v.Status == model.TaskPendingFetch {
log.Tracef("task %v alrady in fetch, ingore", v.ID)
continue
}

context := model.Context{}
context.Set(model.CONTEXT_TASK_ID, v.ID)

//update offset
if v.Created.After(*offset) {
offset = &v.Created
}

runner := "fetch"
if v.HostConfig == nil {
//assign pipeline config
config, _ := model.GetHostConfigByHostAndUrl(runner, v.Host, v.Url)
if config != nil {
v.HostConfig = config
context.Set(model.CONTEXT_TASK_Cookies, v.HostConfig.Cookies)
context.Set(model.CONTEXT_TASK_PipelineConfigID, v.HostConfig.PipelineID)
log.Trace("get host config: ", util.ToJson(config, true))
}
}

if v.PipelineConfigID != "" {
context.Set(model.CONTEXT_TASK_PipelineConfigID, v.PipelineConfigID)
}

//Update task status
v.Status = model.TaskPendingFetch
model.UpdateTask(&v)
err := queue.Push(config.FetchChannel, util.ToJSONBytes(context))
if err != nil {
log.Error(err)
continue
}
}

```

Click here to show extra information the analyzer produced.

```
The following paths through the callgraph could lead to a goroutine:
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Parse, 1) -> (remakeString, 0) -> (equalTags, 1)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Add, 2) -> (Mul, 3) -> (MulXi, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (parse, 1) -> (Text, 0) -> (unescape, 2) -> (unescapeEntity, 4)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Get, 1) -> (compare, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Create, 3) -> (create, 3)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Run, 0) -> (Trace, 3)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Stat, 1) -> (dirOrMatches, 1) -> (ReplaceAllStringFunc, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (New, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (parse, 1) -> (Text, 0) -> (unescape, 2)
(UpdateTask, 1) -> (Update, 1) -> (String, 0) -> (Kind, 1) -> (parse, 1) -> (Text, 0)
(UpdateTask, 1) -> (Update, 1) -> (Updates, 2) -> (clone, 0) -> (init, 0) -> (LookupRune, 1) -> (gobble, 1) -> (consumeComment, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (parse, 1) -> (Text, 0) -> (unescape, 2) -> (unescapeEntity, 4) -> (handleResponse, 2) -> (setResponseUncompressed, 1)
(UpdateTask, 1) -> (New, 1) -> (mkdir, 1) -> (IsExist, 1) -> (Create, 3) -> (create, 3)
(UpdateTask, 1) -> (Update, 1) -> (update, 2) -> (save, 4) -> (RemoveID, 1) -> (First, 0) -> (Begin, 0)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0) -> (clientHandshake, 2) -> (clientAuthenticate, 1)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (exec, 2)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (ReadFile, 2) -> (readAll, 2) -> (ReadFrom, 1)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0) -> (newMux, 1)
(UpdateTask, 1) -> (Update, 1) -> (Save, 1) -> (New, 0) -> (Add, 2) -> (Mul, 3) -> (MulXi, 2)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (GetValue, 2) -> (RegQueryValueEx, 6)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Get, 2) -> (walkXPath, 2)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (load, 1) -> (Open, 1) -> (OpenRemote, 2)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (init, 0) -> (Fatalf, 3) -> (gobble, 1) -> (consumeComment, 0)
(UpdateTask, 1) -> (Update, 1) -> (String, 0) -> (Kind, 1) -> (Get, 2)
(UpdateTask, 1) -> (Update, 1) -> (update, 2) -> (save, 4) -> (Batch, 1)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (GetValue, 2) -> (RegQueryValueEx, 6)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (WithTimeout, 2) -> (WithDeadline, 2) -> (cancel, 2) -> (removeChild, 2)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (Get, 1) -> (compare, 2) -> (ToStringSliceE, 1) -> (ContainsAny, 2) -> (NewAsyncLoopLogger, 1)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1)
(UpdateTask, 1) -> (New, 1) -> (mkdir, 1) -> (IsExist, 1) -> (Mkdir, 2) -> (CreateDirectory, 2) -> (UTF16FromString, 1)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (unref, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Pop, 2)
(UpdateTask, 1) -> (Update, 1) -> (update, 2) -> (save, 4) -> (query, 2)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (unref, 0)
(UpdateTask, 1) -> (New, 1) -> (mkdir, 1) -> (IsExist, 1) -> (Stat, 1) -> (dirOrMatches, 1) -> (matchesName, 1) -> (createInterval, 1)
(UpdateTask, 1) -> (New, 1) -> (Merge, 1) -> (next32, 0) -> (normalize, 2) -> (Flush, 0) -> (writeChunk, 1) -> (writeDataFromHandler, 3) -> (parseSplice, 2) -> (parseVarExp, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (parse, 1) -> (Text, 0) -> (unescape, 2) -> (unescapeEntity, 4) -> (scheduleFrameWrite, 0) -> (Pop, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (WithTimeout, 2) -> (WithDeadline, 2) -> (cancel, 2)
(UpdateTask, 1) -> (Update, 1) -> (Rollback, 0) -> (Background, 0)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (Get, 1) -> (compare, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (execute, 3) -> (Debug, 7) -> (Trace, 3)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (RunPending, 0) -> (run, 0) -> (assignLevelsToCharactersRemovedByX9, 0)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Dial, 1) -> (Fail, 0) -> (NewClient, 3)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0) -> (newMux, 1)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0) -> (newMux, 1)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (Get, 1) -> (compare, 2)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (NewStream, 3) -> (newStreamClient, 3)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Run, 0) -> (Trace, 3) -> (Timing, 2)
(UpdateTask, 1) -> (New, 1) -> (Getwd, 0) -> (Decode, 1) -> (Invoke, 5) -> (Err, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (InitWebSocket, 1)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (executable, 0) -> (getModuleFileName, 0) -> (Call, 3)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (Get, 1) -> (compare, 2) -> (ToStringSliceE, 1) -> (ContainsAny, 2)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (init, 0) -> (Fatalf, 3) -> (elem, 1) -> (consumeComment, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (RunPending, 0) -> (run, 0) -> (assignLevelsToCharactersRemovedByX9, 0) -> (in, 6) -> (startFrameWrite, 1)
(UpdateTask, 1) -> (Update, 1) -> (Set, 1) -> (Parse, 1) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0) -> (newMux, 1)
(UpdateTask, 1) -> (Update, 1) -> (Save, 1) -> (New, 0) -> (Batch, 1)
(UpdateTask, 1) -> (New, 1) -> (Getwd, 0) -> (Decode, 1) -> (Reader, 1) -> (init, 2) -> (setBytes, 1)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (Read, 1) -> (lastBoundary, 2) -> (backwards, 1)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Accepted, 1) -> (NewStream, 3) -> (newStreamClient, 3)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (Get, 1) -> (compare, 2) -> (ToStringSliceE, 1) -> (ContainsAny, 2) -> (NewAsyncAdaptiveLogger, 4)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (NewRaft, 7) -> (goFunc, 1)
(UpdateTask, 1) -> (New, 1) -> (mkdir, 1) -> (IsExist, 1) -> (Stat, 1) -> (dirOrMatches, 1) -> (matchesName, 1)
(UpdateTask, 1) -> (Update, 1) -> (update, 2) -> (save, 4) -> (Add, 2) -> (Mul, 3) -> (MulXi, 2)
(UpdateTask, 1) -> (New, 1) -> (TempDir, 2) -> (TempDir, 3) -> (Mkdir, 2) -> (CreateDirectory, 2) -> (UTF16FromString, 1)
(UpdateTask, 1) -> (Update, 1) -> (Set, 1) -> (Parse, 1) -> (Delete, 3) -> (Table, 1)
(UpdateTask, 1) -> (New, 1) -> (Getwd, 0) -> (Decode, 1) -> (Index, 2) -> (anchoredForwardSearch, 1) -> (searchOnce, 1)
(UpdateTask, 1) -> (Update, 1) -> (String, 0) -> (Kind, 1) -> (init, 0) -> (LookupRune, 1) -> (gobble, 1)
(UpdateTask, 1) -> (Update, 1) -> (Set, 1) -> (Parse, 1) -> (Get, 1) -> (compare, 2)
(UpdateTask, 1) -> (Update, 1) -> (Set, 1) -> (Parse, 1) -> (parse, 1) -> (Text, 0)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (init, 0) -> (Fatalf, 3) -> (elem, 1)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (remove, 1) -> (assertChangeable, 0) -> (Panic, 1)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (NewTCPTransport, 5) -> (NewNetworkTransport, 4) -> (NewNetworkTransportWithLogger, 4)
(UpdateTask, 1) -> (Update, 1) -> (String, 0) -> (Kind, 1) -> (getConfigManager, 1) -> (NewStandardConsulConfigManager, 1) -> (OpenRemote, 2)
(UpdateTask, 1) -> (Update, 1) -> (String, 0) -> (Kind, 1) -> (init, 0) -> (LookupRune, 1) -> (gobble, 1) -> (consumeComment, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (NewTCPTransport, 5) -> (NewNetworkTransport, 4) -> (NewNetworkTransportWithLogger, 4) -> (listen, 0) -> (Accept, 0)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Dial, 1) -> (Fail, 0) -> (NewClient, 3) -> (HandleChannelOpen, 1) -> (newClientTransport, 6)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (List, 2) -> (TrimPrefix, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (parse, 1) -> (Text, 0)
(UpdateTask, 1) -> (Update, 1) -> (Updates, 2) -> (clone, 0) -> (init, 0) -> (LookupRune, 1) -> (gobble, 1)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (InitWebSocket, 1) -> (runHub, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (send, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Leader, 0) -> (GetInState, 1) -> (Printf, 8)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (Unmarshal, 2) -> (unmarshal, 2) -> (sequence, 2)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Dial, 1) -> (Fail, 0) -> (NewClient, 3) -> (HandleChannelOpen, 1)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0)
(UpdateTask, 1) -> (Update, 1) -> (Save, 1) -> (New, 0) -> (RemoveID, 1) -> (First, 0) -> (Begin, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (parse, 1) -> (Text, 0) -> (unescape, 2) -> (unescapeEntity, 4) -> (handleResponse, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (parse, 1) -> (Text, 0) -> (unescape, 2) -> (unescapeEntity, 4) -> (startReplication, 1) -> (replicate, 1) -> (pipelineReplicate, 1) -> (pipelineSend, 4) -> (AppendEntries, 2)
(UpdateTask, 1) -> (Update, 1) -> (Rollback, 0) -> (Background, 0) -> (exec, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (init, 0) -> (Fatalf, 3) -> (gobble, 1) -> (consumeComment, 0)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (Get, 1) -> (compare, 2) -> (ToStringSliceE, 1) -> (ContainsAny, 2) -> (NewAsyncTimerLogger, 2)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (NewClientConn, 1) -> (newClientConn, 2)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (add, 1) -> (assertChangeable, 0) -> (Panic, 1)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (init, 0) -> (Fatalf, 3) -> (gobble, 1)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0) -> (clientHandshake, 2) -> (clientAuthenticate, 1)
(UpdateTask, 1) -> (Update, 1) -> (String, 0) -> (Kind, 1) -> (Get, 2) -> (walkXPath, 2)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (Add, 2) -> (Mul, 3) -> (MulXi, 2)
(UpdateTask, 1) -> (New, 1) -> (TempDir, 2) -> (TempDir, 3) -> (IsExist, 1) -> (Stat, 1) -> (dirOrMatches, 1) -> (ReplaceAllStringFunc, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (RunPending, 0) -> (run, 0) -> (assignLevelsToCharactersRemovedByX9, 0) -> (in, 6) -> (on100, 0)
(UpdateTask, 1) -> (New, 1) -> (Getwd, 0) -> (Decode, 1) -> (Add, 2) -> (Mul, 3) -> (MulXi, 2)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (Get, 1) -> (compare, 2)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (Invoke, 5) -> (Done, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (RunPending, 0) -> (run, 0) -> (assignLevelsToCharactersRemovedByX9, 0) -> (in, 6)
(UpdateTask, 1) -> (Update, 1) -> (Set, 1) -> (Parse, 1) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (unref, 0)
(UpdateTask, 1) -> (Update, 1) -> (Save, 1) -> (New, 0) -> (Unmarshal, 2) -> (unmarshal, 2) -> (sequence, 2)
(UpdateTask, 1) -> (New, 1) -> (Getwd, 0) -> (Decode, 1) -> (Reader, 1) -> (init, 2) -> (setBytes, 1) -> (RegisterEventSource, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (NewTCPTransport, 5) -> (NewNetworkTransport, 4) -> (NewNetworkTransportWithLogger, 4) -> (listen, 0)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (RunPending, 0) -> (run, 0)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1) -> (parse, 1) -> (Text, 0)
(UpdateTask, 1) -> (Update, 1) -> (Set, 1) -> (Parse, 1) -> (Delete, 1) -> (split, 2) -> (getAltIndex, 3)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Stat, 1) -> (dirOrMatches, 1) -> (ReplaceAllStringFunc, 2)
(UpdateTask, 1) -> (Update, 1) -> (Set, 1) -> (Parse, 1) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0) -> (clientHandshake, 2) -> (clientAuthenticate, 1)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (RunPending, 0) -> (run, 0) -> (assignLevelsToCharactersRemovedByX9, 0) -> (in, 6) -> (replicate, 1) -> (pipelineReplicate, 1) -> (pipelineSend, 4) -> (AppendEntries, 2)
(UpdateTask, 1) -> (Update, 1) -> (, 0) -> (Suite, 1)
(UpdateTask, 1) -> (Update, 1) -> (Set, 1) -> (Parse, 1) -> (Delete, 1) -> (split, 2)
(UpdateTask, 1) -> (New, 1) -> (Sort, 1) -> (sort, 1) -> (Next, 0) -> (next, 1) -> (nTrailingNonStarters, 0)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Get, 2)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (run, 1)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (Remove, 1) -> (DeleteKey, 2) -> (regDeleteKey, 2)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (init, 0) -> (Fatalf, 3) -> (gobble, 1)
(UpdateTask, 1) -> (Update, 1) -> (Stop, 0) -> (Seconds, 0) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0)
(UpdateTask, 1) -> (Update, 1) -> (Commit, 0) -> (Background, 0) -> (Write, 1) -> (lastBoundary, 2) -> (backwards, 1) -> (isInert, 0) -> (clientHandshake, 2) -> (clientAuthenticate, 1)
(UpdateTask, 1) -> (Update, 1) -> (Start, 1) -> (SetStatus, 1) -> (CloseNotify, 0)

```

Leave a reaction on this issue to contribute to the project by classifying this instance as a **Bug** :-1:, **Mitigated** :+1:, or **Desirable Behavior** :rocket:
See the descriptions of the classifications [here](https://github.com/github-vet/rangeclosure-findings#how-can-i-help) for more information.

commit ID: d9df574ffc4fab201af319f38667692a7b293835

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.