diff --git a/ability/sbuf/src/hdf_sbuf.c b/ability/sbuf/src/hdf_sbuf.c index 57b4944a3ae98a416e8709ec9ee5edc77c71ad25..60341b0da4a87a7c0879e738d883a09dfbcc5952 100644 --- a/ability/sbuf/src/hdf_sbuf.c +++ b/ability/sbuf/src/hdf_sbuf.c @@ -414,7 +414,7 @@ struct HdfSBuf *HdfSBufCopy(const struct HdfSBuf *sbuf) new->capacity = sbuf->capacity; new->readPos = 0; new->writePos = sbuf->writePos; - if (memcpy_s(new->data, new->capacity, sbuf->data, sbuf->capacity) != EOK) { + if (memcpy_s(new->data, new->capacity, sbuf->data, sbuf->writePos) != EOK) { HdfSBufRecycle(new); return NULL; }