@schiramchetty
when you say you're only copying ... are you assuming that the length is always the same?
``` #define SCA_STR_COPY(str1, str2) \ memcpy((str1)->s, (str2)->s, (str2)->len); \ (str1)->len = (str2)->len; ```
SCA_STR_COPY doesn't do any magic. You need to check that you have enough memory reserved for that. And on top of that, why should I copy a value that is exactly the same? So before copying we need to check the value is different.