Skip to content

Commit 1156862

Browse files
committed
fix: fixed behavior of the Bytes_mul
1 parent 882717c commit 1156862

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

argon/vm/datatype/bytes.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -1150,7 +1150,7 @@ ArObject *bytes_add(Bytes *left, Bytes *right) {
11501150
std::shared_lock _(*left);
11511151

11521152
Bytes *ret;
1153-
if ((ret = BytesNew(BUFFER_LEN(left) + 1, false, false, false)) != nullptr) {
1153+
if ((ret = BytesNew(BUFFER_LEN(left) + 1, false, false, BUFFER_FROZEN(left))) != nullptr) {
11541154
if (BUFFER_GET(left) != nullptr) {
11551155
argon::vm::memory::MemoryCopy(BUFFER_GET(ret), BUFFER_GET(left), BUFFER_LEN(left));
11561156
BUFFER_LEN(ret) = BUFFER_LEN(left);
@@ -1225,7 +1225,7 @@ ArObject *bytes_mul(const Bytes *left, const ArObject *right) {
12251225
std::shared_lock _(*l);
12261226

12271227
Bytes *ret;
1228-
if ((ret = BytesNew(BUFFER_LEN(l) * times, true, false, false)) != nullptr) {
1228+
if ((ret = BytesNew(BUFFER_LEN(l) * times, true, false, BUFFER_FROZEN(left))) != nullptr) {
12291229
while (times--)
12301230
argon::vm::memory::MemoryCopy(BUFFER_GET(ret) + (BUFFER_LEN(l) * times), BUFFER_GET(l), BUFFER_LEN(l));
12311231
}
@@ -1407,7 +1407,7 @@ Bytes *argon::vm::datatype::BytesConcat(Bytes *left, Bytes *right) {
14071407

14081408
Bytes *ret;
14091409

1410-
if ((ret = BytesNew(BUFFER_LEN(left) + BUFFER_LEN(right), true, false, false)) != nullptr) {
1410+
if ((ret = BytesNew(BUFFER_LEN(left) + BUFFER_LEN(right), true, false, BUFFER_FROZEN(left))) != nullptr) {
14111411
memory::MemoryCopy(BUFFER_GET(ret), BUFFER_GET(left), BUFFER_LEN(left));
14121412
memory::MemoryCopy(BUFFER_GET(ret) + BUFFER_LEN(left), BUFFER_GET(right), BUFFER_LEN(right));
14131413
}

0 commit comments

Comments
 (0)