diff --git a/ability/sbuf/src/hdf_sbuf.c b/ability/sbuf/src/hdf_sbuf.c index 0c2e1c50c37644fd17e15d53c2578e661aa93c3d..8f740bc1d2d335654e01dfe645851c61feb4bff3 100755 --- a/ability/sbuf/src/hdf_sbuf.c +++ b/ability/sbuf/src/hdf_sbuf.c @@ -425,7 +425,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; }