Fixed issue #13 (binding ints from 128 to 255 incorrectly)
This commit is contained in:
@@ -357,7 +357,7 @@ static inline int decode_and_bind_param(
|
||||
// include space for null separator
|
||||
char_buf_val = driver_alloc((*p_size + 1) * sizeof(char));
|
||||
ei_decode_string(buffer, p_index, char_buf_val);
|
||||
result = sqlite3_bind_text(statement, param_index, char_buf_val, *p_size, &driver_free_fun);
|
||||
result = sqlite3_bind_text(statement, param_index, char_buf_val, *p_size, &driver_free_fun);
|
||||
break;
|
||||
case ERL_BINARY_EXT:
|
||||
char_buf_val = driver_alloc(*p_size * sizeof(char));
|
||||
@@ -413,7 +413,7 @@ static int bind_parameters(
|
||||
acc_string = driver_alloc(sizeof(char*) * (*p_size + 1));
|
||||
ei_decode_string(buffer, p_index, acc_string);
|
||||
for (param_index = 1; param_index <= *p_size; param_index++) {
|
||||
sqlite3_bind_int(statement, param_index, (int) acc_string[param_index - 1]);
|
||||
sqlite3_bind_int(statement, param_index, (int) (unsigned char) acc_string[param_index - 1]);
|
||||
}
|
||||
driver_free(acc_string);
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user