fixed the computation of the data size when cloning a column
This commit is contained in:
@ -908,7 +908,7 @@ OBIDMS_column_p obi_open_column(OBIDMS_p dms, const char* column_name, obiversio
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// Check endianness?
|
||||
// TODO Check endianness?
|
||||
|
||||
// Compute data size from the informations in the header
|
||||
data_size = ((column->header)->line_count) * sizeof((column->header)->data_type);
|
||||
@ -947,6 +947,7 @@ OBIDMS_column_p obi_clone_column(OBIDMS_p dms, const char* column_name, obiversi
|
||||
OBIDMS_column_p new_column;
|
||||
size_t nb_lines;
|
||||
size_t nb_elements_per_line;
|
||||
size_t data_size;
|
||||
OBIType_t data_type;
|
||||
|
||||
column_to_clone = obi_open_column(dms, column_name, version_number);
|
||||
@ -984,12 +985,13 @@ OBIDMS_column_p obi_clone_column(OBIDMS_p dms, const char* column_name, obiversi
|
||||
}
|
||||
|
||||
(new_column->header)->cloned_from = version_number;
|
||||
// TODO copy header->comments?
|
||||
//memcpy((new_column->header)->comments, (column_to_clone->header)->comments, obi_get_platform_header_size() - //??(column_to_clone->header)->comments); // TODO
|
||||
|
||||
if (clone_data)
|
||||
{
|
||||
memcpy(new_column->data, column_to_clone->data, nb_lines*nb_elements_per_line*sizeof(data_type));
|
||||
(new_column->header)->lines_used = nb_lines;
|
||||
data_size = obi_array_sizeof(data_type, nb_lines, nb_elements_per_line);
|
||||
memcpy(new_column->data, column_to_clone->data, data_size);
|
||||
(new_column->header)->lines_used = (column_to_clone->header)->lines_used;
|
||||
}
|
||||
|
||||
// close column_to_clone
|
||||
|
Reference in New Issue
Block a user