Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
dms3
go-dms3-cmds
Commits
235b0f74
Commit
235b0f74
authored
Dec 11, 2017
by
keks
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
make "http".ResponseEmitter.Close() thread safe
parent
777e4f3e
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
3 additions
and
7 deletions
+3
-7
http/responseemitter.go
http/responseemitter.go
+3
-7
No files found.
http/responseemitter.go
View file @
235b0f74
...
...
@@ -60,6 +60,8 @@ type responseEmitter struct {
streaming
bool
once
sync
.
Once
method
string
closeOnce
sync
.
Once
closeWait
chan
struct
{}
}
...
...
@@ -145,13 +147,7 @@ func (re *responseEmitter) SetLength(l uint64) {
func
(
re
*
responseEmitter
)
Close
()
error
{
re
.
once
.
Do
(
func
()
{
re
.
preamble
(
nil
)
})
select
{
case
<-
re
.
closeWait
:
return
nil
// already closed
default
:
close
(
re
.
closeWait
)
}
re
.
closeOnce
.
Do
(
func
()
{
close
(
re
.
closeWait
)
})
return
nil
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment