diff options
Diffstat (limited to 'gcc/analyzer/sm-fd.cc')
-rw-r--r-- | gcc/analyzer/sm-fd.cc | 6 |
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; |