[devel] memcpy глючит (или я не умею его готовить)

Vladimir Didenko vladimir.didenko на gmail.com
Чт Фев 21 16:22:42 MSK 2019


чт, 21 февр. 2019 г. в 16:17, Paul Wolneykien:
>
>
>   Коллеги, прошу помощи разбором одной проблемы. Предполагаю, что это
> какая-то очевидная ошибка: то ли я действительно не умею готовить
> memcpy(), то ли где-то в программе есть ошибки при работе с памятью,
> которые влияют косвенно (может в данном случае такое быть?).
>
>   Итак, у меня есть вот такой код¹
>
> > 1460 if (_data.size % 2 && _data.data[8] == 0x04) {
> > 1461     // Uncompressed point (the first 8 bytes is the UKM)
> > 1462     memcpy (_data.data + 8, _data.data + 9, _data.size - 9);
> > 1463     _data.size--;
> > 1464 }
>

У вас участки памяти источника и приемника перекрываются, а это
неопределенное поведение. Вам memove() нужен.

-- 
С уважением,
Владимир.


Подробная информация о списке рассылки Devel