[F] Fixed printf errors
This commit is contained in:
59
src/row.c
59
src/row.c
@@ -718,6 +718,7 @@ fort_row_t *create_row_from_fmt_string(const char *fmt, va_list *va_args)
|
||||
#define STR_FILED cstr
|
||||
#define CREATE_ROW_FROM_STRING create_row_from_string
|
||||
#define NUMBER_OF_COLUMNS_IN_FORMAT_STRING number_of_columns_in_format_string
|
||||
#define FILL_CELL_FROM_STRING fill_cell_from_string
|
||||
|
||||
string_buffer_t *buffer = create_string_buffer(DEFAULT_STR_BUF_SIZE, CharBuf);
|
||||
if (buffer == NULL)
|
||||
@@ -756,7 +757,32 @@ fort_row_t *create_row_from_fmt_string(const char *fmt, va_list *va_args)
|
||||
return row;
|
||||
}
|
||||
|
||||
/* todo: add processing of cols != cols_origin */
|
||||
if (cols_origin == 1) {
|
||||
fort_row_t *row = create_row();
|
||||
if (row == NULL) {
|
||||
goto clear;
|
||||
}
|
||||
|
||||
fort_cell_t *cell = get_cell_and_create_if_not_exists(row, 0);
|
||||
if (cell == NULL) {
|
||||
destroy_row(row);
|
||||
goto clear;
|
||||
}
|
||||
|
||||
fort_status_t result = FILL_CELL_FROM_STRING(cell, buffer->str.STR_FILED);
|
||||
if (FT_IS_ERROR(result)) {
|
||||
destroy_row(row);
|
||||
goto clear;
|
||||
}
|
||||
|
||||
destroy_string_buffer(buffer);
|
||||
return row;
|
||||
}
|
||||
|
||||
/*
|
||||
* todo: add processing of cols != cols_origin in a general way
|
||||
* (when cols_origin != 1).
|
||||
*/
|
||||
|
||||
clear:
|
||||
destroy_string_buffer(buffer);
|
||||
@@ -765,6 +791,7 @@ clear:
|
||||
#undef STR_FILED
|
||||
#undef CREATE_ROW_FROM_STRING
|
||||
#undef NUMBER_OF_COLUMNS_IN_FORMAT_STRING
|
||||
#undef FILL_CELL_FROM_STRING
|
||||
}
|
||||
|
||||
#ifdef FT_HAVE_WCHAR
|
||||
@@ -774,7 +801,7 @@ fort_row_t *create_row_from_fmt_wstring(const wchar_t *fmt, va_list *va_args)
|
||||
#define STR_FILED wstr
|
||||
#define CREATE_ROW_FROM_STRING create_row_from_wstring
|
||||
#define NUMBER_OF_COLUMNS_IN_FORMAT_STRING number_of_columns_in_format_wstring
|
||||
|
||||
#define FILL_CELL_FROM_STRING fill_cell_from_wstring
|
||||
|
||||
string_buffer_t *buffer = create_string_buffer(DEFAULT_STR_BUF_SIZE, CharBuf);
|
||||
if (buffer == NULL)
|
||||
@@ -813,7 +840,32 @@ fort_row_t *create_row_from_fmt_wstring(const wchar_t *fmt, va_list *va_args)
|
||||
return row;
|
||||
}
|
||||
|
||||
/* todo: add processing of cols != cols_origin */
|
||||
if (cols_origin == 1) {
|
||||
fort_row_t *row = create_row();
|
||||
if (row == NULL) {
|
||||
goto clear;
|
||||
}
|
||||
|
||||
fort_cell_t *cell = get_cell_and_create_if_not_exists(row, 0);
|
||||
if (cell == NULL) {
|
||||
destroy_row(row);
|
||||
goto clear;
|
||||
}
|
||||
|
||||
fort_status_t result = FILL_CELL_FROM_STRING(cell, buffer->str.STR_FILED);
|
||||
if (FT_IS_ERROR(result)) {
|
||||
destroy_row(row);
|
||||
goto clear;
|
||||
}
|
||||
|
||||
destroy_string_buffer(buffer);
|
||||
return row;
|
||||
}
|
||||
|
||||
/*
|
||||
* todo: add processing of cols != cols_origin in a general way
|
||||
* (when cols_origin != 1).
|
||||
*/
|
||||
|
||||
clear:
|
||||
destroy_string_buffer(buffer);
|
||||
@@ -822,6 +874,7 @@ clear:
|
||||
#undef STR_FILED
|
||||
#undef CREATE_ROW_FROM_STRING
|
||||
#undef NUMBER_OF_COLUMNS_IN_FORMAT_STRING
|
||||
#undef FILL_CELL_FROM_STRING
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@@ -179,7 +179,7 @@ fort_status_t vector_swap(vector_t *cur_vec, vector_t *mv_vec, size_t pos)
|
||||
}
|
||||
|
||||
size_t min_targ_size = pos + mv_sz;
|
||||
if (cur_sz < min_targ_size) {
|
||||
if (vector_capacity(cur_vec) < min_targ_size) {
|
||||
if (vector_reallocate_(cur_vec, min_targ_size) == -1)
|
||||
return FT_ERROR;
|
||||
cur_vec->m_capacity = min_targ_size;
|
||||
@@ -198,7 +198,7 @@ fort_status_t vector_swap(vector_t *cur_vec, vector_t *mv_vec, size_t pos)
|
||||
|
||||
memcpy(tmp,
|
||||
(char *)cur_vec->m_data + deviation,
|
||||
cur_vec->m_item_size * (cur_sz - pos));
|
||||
cur_vec->m_item_size * new_mv_sz);
|
||||
memcpy((char *)cur_vec->m_data + deviation,
|
||||
mv_vec->m_data,
|
||||
cur_vec->m_item_size * mv_sz);
|
||||
@@ -206,6 +206,7 @@ fort_status_t vector_swap(vector_t *cur_vec, vector_t *mv_vec, size_t pos)
|
||||
tmp,
|
||||
cur_vec->m_item_size * new_mv_sz);
|
||||
|
||||
cur_vec->m_size = MAX(cur_vec->m_size, min_targ_size);
|
||||
mv_vec->m_size = new_mv_sz;
|
||||
F_FREE(tmp);
|
||||
return FT_SUCCESS;
|
||||
|
Reference in New Issue
Block a user