|
@@ -58,11 +58,10 @@ Value *makeStructValue(void *data, vint len, fline line, char *file, FUNC_NT) {
|
|
} else
|
|
} else
|
|
setResultOperation(result, structCore(belong, inter->data.base_obj[B_STRUCT], inter));
|
|
setResultOperation(result, structCore(belong, inter->data.base_obj[B_STRUCT], inter));
|
|
tmp = result->value->value;
|
|
tmp = result->value->value;
|
|
- if (len != 0 || data != NULL)
|
|
|
|
|
|
+ if (data != NULL) {
|
|
tmp->data.struct_.data = MEM_CPY(tmp->data.struct_.data, data, len * sizeof(int8_t));
|
|
tmp->data.struct_.data = MEM_CPY(tmp->data.struct_.data, data, len * sizeof(int8_t));
|
|
- else
|
|
|
|
- tmp->data.struct_.data = NULL;
|
|
|
|
- tmp->data.struct_.len = len;
|
|
|
|
|
|
+ tmp->data.struct_.len = len;
|
|
|
|
+ }
|
|
return tmp;
|
|
return tmp;
|
|
}
|
|
}
|
|
|
|
|