Skip to content

Commit e62cd89

Browse files
committed
Fix one more memory corruption in line_edit_control.
1 parent c099b90 commit e62cd89

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/xrEngine/line_edit_control.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -646,14 +646,14 @@ void line_edit_control::delete_selected(bool back)
646646
{
647647
u8 dp = ((m_p1 == m_p2) && m_p1 > 0) ? 1 : 0;
648648
strncpy_s(m_undo_buf, m_buffer_size, m_edit_str + m_p1 - dp, m_p2 - m_p1 + dp);
649-
strncpy_s(m_edit_str + m_p1 - dp, m_buffer_size, m_edit_str + m_p2, edit_len - m_p2);
649+
strncpy_s(m_edit_str + m_p1 - dp, m_buffer_size - (m_p1 - dp), m_edit_str + m_p2, edit_len - m_p2);
650650
m_cur_pos = m_p1 - dp;
651651
}
652652
else
653653
{
654654
u8 dn = ((m_p1 == m_p2) && m_p2 < edit_len) ? 1 : 0;
655655
strncpy_s(m_undo_buf, m_buffer_size, m_edit_str + m_p1, m_p2 - m_p1 + dn);
656-
strncpy_s(m_edit_str + m_p1, m_buffer_size, m_edit_str + m_p2 + dn, edit_len - m_p2 - dn);
656+
strncpy_s(m_edit_str + m_p1, m_buffer_size - m_p1, m_edit_str + m_p2 + dn, edit_len - m_p2 - dn);
657657
m_cur_pos = m_p1;
658658
}
659659
clamp_cur_pos();

0 commit comments

Comments
 (0)