aboutsummaryrefslogtreecommitdiff
path: root/gcc/analyzer/sm-fd.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/analyzer/sm-fd.cc')
-rw-r--r--gcc/analyzer/sm-fd.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/analyzer/sm-fd.cc b/gcc/analyzer/sm-fd.cc
index 794733e..799847c 100644
--- a/gcc/analyzer/sm-fd.cc
+++ b/gcc/analyzer/sm-fd.cc
@@ -1861,7 +1861,8 @@ fd_state_machine::on_bind (const call_details &cd,
next_state = m_bound_datagram_socket;
else if (old_state == m_new_unknown_socket)
next_state = m_bound_unknown_socket;
- else if (old_state == m_start)
+ else if (old_state == m_start
+ || old_state == m_constant_fd)
next_state = m_bound_unknown_socket;
else if (old_state == m_stop)
next_state = m_stop;
@@ -2116,7 +2117,8 @@ fd_state_machine::on_connect (const call_details &cd,
next_state = m_new_datagram_socket;
else if (old_state == m_new_unknown_socket)
next_state = m_stop;
- else if (old_state == m_start)
+ else if (old_state == m_start
+ || old_state == m_constant_fd)
next_state = m_stop;
else if (old_state == m_stop)
next_state = m_stop;