diff options
author | Alexey Zakhlestin <indeyets@php.net> | 2009-04-01 11:32:14 +0000 |
---|---|---|
committer | Alexey Zakhlestin <indeyets@php.net> | 2009-04-01 11:32:14 +0000 |
commit | 4bccb4565d6829b772eb84c087723e60d8f4eae5 (patch) | |
tree | 8bd93f88619eaa22ea8921ee587a6ffe241ac07d /ext/pdo_sqlite/sqlite_statement.c | |
parent | e45c0bb900c8941f85111b51e4793511b535e6fe (diff) | |
download | php-git-4bccb4565d6829b772eb84c087723e60d8f4eae5.tar.gz |
MFH: const pointer was used in non-const context
Diffstat (limited to 'ext/pdo_sqlite/sqlite_statement.c')
-rw-r--r-- | ext/pdo_sqlite/sqlite_statement.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/ext/pdo_sqlite/sqlite_statement.c b/ext/pdo_sqlite/sqlite_statement.c index 63598901a0..eca6845d25 100644 --- a/ext/pdo_sqlite/sqlite_statement.c +++ b/ext/pdo_sqlite/sqlite_statement.c @@ -282,6 +282,8 @@ static int pdo_sqlite_stmt_get_col(pdo_stmt_t *stmt, int colno, char **ptr, unsi static int pdo_sqlite_stmt_col_meta(pdo_stmt_t *stmt, long colno, zval *return_value TSRMLS_DC) { pdo_sqlite_stmt *S = (pdo_sqlite_stmt*)stmt->driver_data; + const char *_str; + size_t _str_len; char *str; zval *flags; @@ -318,14 +320,20 @@ static int pdo_sqlite_stmt_col_meta(pdo_stmt_t *stmt, long colno, zval *return_v break; } - str = (char*)sqlite3_column_decltype(S->stmt, colno); - if (str) { + _str = sqlite3_column_decltype(S->stmt, colno); + _str_len = strlen(_str); + if (_str) { + str = emalloc(_str_len); + strcpy(str, _str); add_assoc_string(return_value, "sqlite:decl_type", str, 1); } #ifdef SQLITE_ENABLE_COLUMN_METADATA - str = sqlite3_column_table_name(S->stmt, colno); - if (str) { + _str = sqlite3_column_table_name(S->stmt, colno); + _str_len = strlen(_str); + if (_str) { + str = emalloc(_str_len); + strcpy(str, _str); add_assoc_string(return_value, "table", str, 1); } #endif |