Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linphone-desktop
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
linphone-desktop
Commits
9cf08623
Commit
9cf08623
authored
Jan 26, 2018
by
Ronan Abhamon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(SingleApplication): don't touch sockets when SIGABRT, SIGBUS or SIGSEGV is handled
parent
c8509589
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
10 additions
and
0 deletions
+10
-0
SingleApplication.cpp
src/app/single-application/SingleApplication.cpp
+10
-0
No files found.
src/app/single-application/SingleApplication.cpp
View file @
9cf08623
...
...
@@ -256,11 +256,21 @@ void SingleApplicationPrivate::connectToPrimary (int msecs, char connectionType)
return
;
}
// Dangerous signals. Exit directly after shared memory destruction.
// Don't touch sockets => avoid dead locks.
for
(
int
crashSig
:
{
SIGABRT
,
SIGBUS
,
SIGSEGV
})
if
(
signum
==
crashSig
)
{
for
(
SingleApplicationPrivate
*
d
:
sharedMem
)
delete
d
->
memory
;
goto
forceExit
;
}
while
(
!
sharedMem
.
empty
())
{
delete
sharedMem
.
back
();
sharedMem
.
pop_back
();
}
forceExit:
::
exit
(
128
+
signum
);
}
...
...
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