diff options
Diffstat (limited to 'ext/sqlite3/sqlite3.c')
-rw-r--r-- | ext/sqlite3/sqlite3.c | 150 |
1 files changed, 75 insertions, 75 deletions
diff --git a/ext/sqlite3/sqlite3.c b/ext/sqlite3/sqlite3.c index 6643506c1a..af3dec0681 100644 --- a/ext/sqlite3/sqlite3.c +++ b/ext/sqlite3/sqlite3.c @@ -1,6 +1,6 @@ /* +----------------------------------------------------------------------+ - | PHP Version 5 | + | PHP Version 7 | +----------------------------------------------------------------------+ | Copyright (c) 1997-2014 The PHP Group | +----------------------------------------------------------------------+ @@ -102,14 +102,14 @@ PHP_METHOD(sqlite3, open) php_sqlite3_db_object *db_obj; zval *object = getThis(); char *filename, *encryption_key, *fullpath; - int filename_len, encryption_key_len = 0; - php_int_t flags = SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE; + size_t filename_len, encryption_key_len = 0; + zend_long flags = SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE; zend_error_handling error_handling; db_obj = Z_SQLITE3_DB_P(object); zend_replace_error_handling(EH_THROW, NULL, &error_handling TSRMLS_CC); - if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "p|is", &filename, &filename_len, &flags, &encryption_key, &encryption_key_len)) { + if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "p|ls", &filename, &filename_len, &flags, &encryption_key, &encryption_key_len)) { zend_restore_error_handling(&error_handling TSRMLS_CC); return; } @@ -249,7 +249,7 @@ PHP_METHOD(sqlite3, version) array_init(return_value); add_assoc_string(return_value, "versionString", (char*)sqlite3_libversion()); - add_assoc_int(return_value, "versionNumber", sqlite3_libversion_number()); + add_assoc_long(return_value, "versionNumber", sqlite3_libversion_number()); return; } @@ -269,7 +269,7 @@ PHP_METHOD(sqlite3, lastInsertRowID) return; } - RETURN_INT(sqlite3_last_insert_rowid(db_obj->db)); + RETURN_LONG(sqlite3_last_insert_rowid(db_obj->db)); } /* }}} */ @@ -287,7 +287,7 @@ PHP_METHOD(sqlite3, lastErrorCode) return; } - RETURN_INT(sqlite3_errcode(db_obj->db)); + RETURN_LONG(sqlite3_errcode(db_obj->db)); } /* }}} */ @@ -315,13 +315,13 @@ PHP_METHOD(sqlite3, busyTimeout) { php_sqlite3_db_object *db_obj; zval *object = getThis(); - php_int_t ms; + zend_long ms; int return_code; db_obj = Z_SQLITE3_DB_P(object); SQLITE3_CHECK_INITIALIZED(db_obj, db_obj->initialised, SQLite3) - if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "i", &ms)) { + if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &ms)) { return; } @@ -345,7 +345,7 @@ PHP_METHOD(sqlite3, loadExtension) zval *object = getThis(); char *extension, *lib_path, *extension_dir, *errtext = NULL; char fullpath[MAXPATHLEN]; - int extension_len, extension_dir_len; + size_t extension_len, extension_dir_len; db_obj = Z_SQLITE3_DB_P(object); SQLITE3_CHECK_INITIALIZED(db_obj, db_obj->initialised, SQLite3) @@ -424,7 +424,7 @@ PHP_METHOD(sqlite3, changes) return; } - RETURN_INT(sqlite3_changes(db_obj->db)); + RETURN_LONG(sqlite3_changes(db_obj->db)); } /* }}} */ @@ -580,7 +580,7 @@ static void sqlite_value_to_zval(sqlite3_stmt *stmt, int column, zval *data) /* if ((sqlite3_column_int64(stmt, column)) >= INT_MAX || sqlite3_column_int64(stmt, column) <= INT_MIN) { ZVAL_STRINGL(data, (char *)sqlite3_column_text(stmt, column), sqlite3_column_bytes(stmt, column)); } else { - ZVAL_INT(data, sqlite3_column_int64(stmt, column)); + ZVAL_LONG(data, sqlite3_column_int64(stmt, column)); } break; @@ -713,16 +713,16 @@ static int sqlite3_do_callback(struct php_sqlite3_fci *fc, zval *cb, int argc, s ZVAL_NULL(&agg_context->zval_context); } ZVAL_COPY_VALUE(&zargs[0], &agg_context->zval_context); - ZVAL_INT(&zargs[1], agg_context->row_count); + ZVAL_LONG(&zargs[1], agg_context->row_count); } for (i = 0; i < argc; i++) { switch (sqlite3_value_type(argv[i])) { case SQLITE_INTEGER: -#if PHP_INT_MAX > 2147483647 - ZVAL_INT(&zargs[i + is_agg], sqlite3_value_int64(argv[i])); +#if ZEND_LONG_MAX > 2147483647 + ZVAL_LONG(&zargs[i + is_agg], sqlite3_value_int64(argv[i])); #else - ZVAL_INT(&zargs[i + is_agg], sqlite3_value_int(argv[i])); + ZVAL_LONG(&zargs[i + is_agg], sqlite3_value_int(argv[i])); #endif break; @@ -764,11 +764,11 @@ static int sqlite3_do_callback(struct php_sqlite3_fci *fc, zval *cb, int argc, s * or if we are finalizing an aggregate */ if (!Z_ISUNDEF(retval)) { switch (Z_TYPE(retval)) { - case IS_INT: -#if PHP_INT_MAX > 2147483647 - sqlite3_result_int64(context, Z_IVAL(retval)); + case IS_LONG: +#if ZEND_LONG_MAX > 2147483647 + sqlite3_result_int64(context, Z_LVAL(retval)); #else - sqlite3_result_int(context, Z_IVAL(retval)); + sqlite3_result_int(context, Z_LVAL(retval)); #endif break; @@ -782,7 +782,7 @@ static int sqlite3_do_callback(struct php_sqlite3_fci *fc, zval *cb, int argc, s default: convert_to_string_ex(&retval); - sqlite3_result_text(context, Z_STRVAL(retval), Z_STRSIZE(retval), SQLITE_TRANSIENT); + sqlite3_result_text(context, Z_STRVAL(retval), Z_STRLEN(retval), SQLITE_TRANSIENT); break; } } else { @@ -873,13 +873,13 @@ static int php_sqlite3_callback_compare(void *coll, int a_len, const void *a, in zval_ptr_dtor(&zargs[1]); efree(zargs); - //retval ought to contain a ZVAL_INT by now + //retval ought to contain a ZVAL_LONG by now // (the result of a comparison, i.e. most likely -1, 0, or 1) //I suppose we could accept any scalar return type, though. - if (Z_TYPE(retval) != IS_INT){ + if (Z_TYPE(retval) != IS_LONG){ php_error_docref(NULL TSRMLS_CC, E_WARNING, "An error occurred while invoking the compare callback (invalid return type). Collation behaviour is undefined."); }else{ - ret = Z_IVAL(retval); + ret = Z_LVAL(retval); } zval_ptr_dtor(&retval); @@ -896,15 +896,15 @@ PHP_METHOD(sqlite3, createFunction) zval *object = getThis(); php_sqlite3_func *func; char *sql_func; - int sql_func_len; + size_t sql_func_len; zval *callback_func; zend_string *callback_name; - php_int_t sql_func_num_args = -1; + zend_long sql_func_num_args = -1; db_obj = Z_SQLITE3_DB_P(object); SQLITE3_CHECK_INITIALIZED(db_obj, db_obj->initialised, SQLite3) - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sz|i", &sql_func, &sql_func_len, &callback_func, &sql_func_num_args) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sz|l", &sql_func, &sql_func_len, &callback_func, &sql_func_num_args) == FAILURE) { return; } @@ -914,10 +914,10 @@ PHP_METHOD(sqlite3, createFunction) if (!zend_is_callable(callback_func, 0, &callback_name TSRMLS_CC)) { php_sqlite3_error(db_obj, "Not a valid callback function %s", callback_name->val); - STR_RELEASE(callback_name); + zend_string_release(callback_name); RETURN_FALSE; } - STR_RELEASE(callback_name); + zend_string_release(callback_name); func = (php_sqlite3_func *)ecalloc(1, sizeof(*func)); @@ -947,14 +947,14 @@ PHP_METHOD(sqlite3, createAggregate) php_sqlite3_func *func; char *sql_func; zend_string *callback_name; - int sql_func_len; + size_t sql_func_len; zval *step_callback, *fini_callback; - php_int_t sql_func_num_args = -1; + zend_long sql_func_num_args = -1; db_obj = Z_SQLITE3_DB_P(object); SQLITE3_CHECK_INITIALIZED(db_obj, db_obj->initialised, SQLite3) - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "szz|i", &sql_func, &sql_func_len, &step_callback, &fini_callback, &sql_func_num_args) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "szz|l", &sql_func, &sql_func_len, &step_callback, &fini_callback, &sql_func_num_args) == FAILURE) { return; } @@ -964,17 +964,17 @@ PHP_METHOD(sqlite3, createAggregate) if (!zend_is_callable(step_callback, 0, &callback_name TSRMLS_CC)) { php_sqlite3_error(db_obj, "Not a valid callback function %s", callback_name->val); - STR_RELEASE(callback_name); + zend_string_release(callback_name); RETURN_FALSE; } - STR_RELEASE(callback_name); + zend_string_release(callback_name); if (!zend_is_callable(fini_callback, 0, &callback_name TSRMLS_CC)) { php_sqlite3_error(db_obj, "Not a valid callback function %s", callback_name->val); - STR_RELEASE(callback_name); + zend_string_release(callback_name); RETURN_FALSE; } - STR_RELEASE(callback_name); + zend_string_release(callback_name); func = (php_sqlite3_func *)ecalloc(1, sizeof(*func)); @@ -1005,7 +1005,7 @@ PHP_METHOD(sqlite3, createCollation) php_sqlite3_collation *collation; char *collation_name; zend_string *callback_name; - int collation_name_len; + size_t collation_name_len; zval *callback_func; db_obj = Z_SQLITE3_DB_P(object); @@ -1021,10 +1021,10 @@ PHP_METHOD(sqlite3, createCollation) if (!zend_is_callable(callback_func, 0, &callback_name TSRMLS_CC)) { php_sqlite3_error(db_obj, "Not a valid callback function %s", callback_name->val); - STR_RELEASE(callback_name); + zend_string_release(callback_name); RETURN_FALSE; } - STR_RELEASE(callback_name); + zend_string_release(callback_name); collation = (php_sqlite3_collation *)ecalloc(1, sizeof(*collation)); if (sqlite3_create_collation(db_obj->db, collation_name, SQLITE_UTF8, collation, php_sqlite3_callback_compare) == SQLITE_OK) { @@ -1186,8 +1186,8 @@ PHP_METHOD(sqlite3, openBlob) php_sqlite3_db_object *db_obj; zval *object = getThis(); char *table, *column, *dbname = "main"; - int table_len, column_len, dbname_len; - php_int_t rowid, flags = 0; + size_t table_len, column_len, dbname_len; + zend_long rowid, flags = 0; sqlite3_blob *blob = NULL; php_stream_sqlite3_data *sqlite3_stream; php_stream *stream; @@ -1196,7 +1196,7 @@ PHP_METHOD(sqlite3, openBlob) SQLITE3_CHECK_INITIALIZED(db_obj, db_obj->initialised, SQLite3) - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ssi|s", &table, &table_len, &column, &column_len, &rowid, &dbname, &dbname_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ssl|s", &table, &table_len, &column, &column_len, &rowid, &dbname, &dbname_len) == FAILURE) { return; } @@ -1254,7 +1254,7 @@ PHP_METHOD(sqlite3stmt, paramCount) SQLITE3_CHECK_INITIALIZED_STMT(stmt_obj->stmt, SQLite3Stmt); - RETURN_INT(sqlite3_bind_parameter_count(stmt_obj->stmt)); + RETURN_LONG(sqlite3_bind_parameter_count(stmt_obj->stmt)); } /* }}} */ @@ -1361,19 +1361,19 @@ static int register_bound_parameter_to_sqlite(struct php_sqlite3_bound_param *pa if (param->name) { if (param->name->val[0] != ':') { /* pre-increment for character + 1 for null */ - zend_string *temp = STR_ALLOC(param->name->len + 1, 0); + zend_string *temp = zend_string_alloc(param->name->len + 1, 0); temp->val[0] = ':'; memmove(temp->val + 1, param->name->val, param->name->len + 1); param->name = temp; } else { - param->name = STR_INIT(param->name->val, param->name->len, 0); + param->name = zend_string_init(param->name->val, param->name->len, 0); } /* do lookup*/ param->param_number = sqlite3_bind_parameter_index(stmt->stmt, param->name->val); } if (param->param_number < 1) { - STR_RELEASE(param->name); + zend_string_release(param->name); return 0; } @@ -1404,7 +1404,7 @@ PHP_METHOD(sqlite3stmt, bindParam) param.param_number = -1; param.type = SQLITE3_TEXT; - if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC, "iz|i", ¶m.param_number, ¶meter, ¶m.type) == FAILURE) { + if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC, "lz|l", ¶m.param_number, ¶meter, ¶m.type) == FAILURE) { if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "Sz|l", ¶m.name, ¶meter, ¶m.type) == FAILURE) { return; } @@ -1438,8 +1438,8 @@ PHP_METHOD(sqlite3stmt, bindValue) param.param_number = -1; param.type = SQLITE3_TEXT; - if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC, "iz/|i", ¶m.param_number, ¶meter, ¶m.type) == FAILURE) { - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "Sz/|i", ¶m.name, ¶meter, ¶m.type) == FAILURE) { + if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC, "lz/|l", ¶m.param_number, ¶meter, ¶m.type) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "Sz/|l", ¶m.name, ¶meter, ¶m.type) == FAILURE) { return; } } @@ -1495,11 +1495,11 @@ PHP_METHOD(sqlite3stmt, execute) switch (param->type) { case SQLITE_INTEGER: - convert_to_int(parameter); -#if PHP_INT_MAX > 2147483647 - sqlite3_bind_int64(stmt_obj->stmt, param->param_number, Z_IVAL_P(parameter)); + convert_to_long(parameter); +#if ZEND_LONG_MAX > 2147483647 + sqlite3_bind_int64(stmt_obj->stmt, param->param_number, Z_LVAL_P(parameter)); #else - sqlite3_bind_int(stmt_obj->stmt, param->param_number, Z_IVAL_P(parameter)); + sqlite3_bind_int(stmt_obj->stmt, param->param_number, Z_LVAL_P(parameter)); #endif break; @@ -1527,14 +1527,14 @@ PHP_METHOD(sqlite3stmt, execute) sqlite3_bind_blob(stmt_obj->stmt, param->param_number, buffer->val, buffer->len, SQLITE_TRANSIENT); if (stream) { - STR_RELEASE(buffer); + zend_string_release(buffer); } break; } case SQLITE3_TEXT: convert_to_string(parameter); - sqlite3_bind_text(stmt_obj->stmt, param->param_number, Z_STRVAL_P(parameter), Z_STRSIZE_P(parameter), SQLITE_STATIC); + sqlite3_bind_text(stmt_obj->stmt, param->param_number, Z_STRVAL_P(parameter), Z_STRLEN_P(parameter), SQLITE_STATIC); break; case SQLITE_NULL: @@ -1643,7 +1643,7 @@ PHP_METHOD(sqlite3result, numColumns) return; } - RETURN_INT(sqlite3_column_count(result_obj->stmt_obj->stmt)); + RETURN_LONG(sqlite3_column_count(result_obj->stmt_obj->stmt)); } /* }}} */ @@ -1653,13 +1653,13 @@ PHP_METHOD(sqlite3result, columnName) { php_sqlite3_result *result_obj; zval *object = getThis(); - php_int_t column = 0; + zend_long column = 0; char *column_name; result_obj = Z_SQLITE3_RESULT_P(object); SQLITE3_CHECK_INITIALIZED(result_obj->db_obj, result_obj->stmt_obj->initialised, SQLite3Result) - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "i", &column) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &column) == FAILURE) { return; } column_name = (char*) sqlite3_column_name(result_obj->stmt_obj->stmt, column); @@ -1678,12 +1678,12 @@ PHP_METHOD(sqlite3result, columnType) { php_sqlite3_result *result_obj; zval *object = getThis(); - php_int_t column = 0; + zend_long column = 0; result_obj = Z_SQLITE3_RESULT_P(object); SQLITE3_CHECK_INITIALIZED(result_obj->db_obj, result_obj->stmt_obj->initialised, SQLite3Result) - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "i", &column) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &column) == FAILURE) { return; } @@ -1691,7 +1691,7 @@ PHP_METHOD(sqlite3result, columnType) RETURN_FALSE; } - RETURN_INT(sqlite3_column_type(result_obj->stmt_obj->stmt, column)); + RETURN_LONG(sqlite3_column_type(result_obj->stmt_obj->stmt, column)); } /* }}} */ @@ -1702,12 +1702,12 @@ PHP_METHOD(sqlite3result, fetchArray) php_sqlite3_result *result_obj; zval *object = getThis(); int i, ret; - php_int_t mode = PHP_SQLITE3_BOTH; + zend_long mode = PHP_SQLITE3_BOTH; result_obj = Z_SQLITE3_RESULT_P(object); SQLITE3_CHECK_INITIALIZED(result_obj->db_obj, result_obj->stmt_obj->initialised, SQLite3Result) - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|i", &mode) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|l", &mode) == FAILURE) { return; } @@ -2170,7 +2170,7 @@ static void sqlite3_param_dtor(zval *data) /* {{{ */ struct php_sqlite3_bound_param *param = (struct php_sqlite3_bound_param*)Z_PTR_P(data); if (param->name) { - STR_RELEASE(param->name); + zend_string_release(param->name); } if (!Z_ISNULL(param->parameter)) { @@ -2225,19 +2225,19 @@ PHP_MINIT_FUNCTION(sqlite3) REGISTER_INI_ENTRIES(); - REGISTER_INT_CONSTANT("SQLITE3_ASSOC", PHP_SQLITE3_ASSOC, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_NUM", PHP_SQLITE3_NUM, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_BOTH", PHP_SQLITE3_BOTH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_ASSOC", PHP_SQLITE3_ASSOC, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_NUM", PHP_SQLITE3_NUM, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_BOTH", PHP_SQLITE3_BOTH, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_INTEGER", SQLITE_INTEGER, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_FLOAT", SQLITE_FLOAT, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_TEXT", SQLITE3_TEXT, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_BLOB", SQLITE_BLOB, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_NULL", SQLITE_NULL, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_INTEGER", SQLITE_INTEGER, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_FLOAT", SQLITE_FLOAT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_TEXT", SQLITE3_TEXT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_BLOB", SQLITE_BLOB, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_NULL", SQLITE_NULL, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_OPEN_READONLY", SQLITE_OPEN_READONLY, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_OPEN_READWRITE", SQLITE_OPEN_READWRITE, CONST_CS | CONST_PERSISTENT); - REGISTER_INT_CONSTANT("SQLITE3_OPEN_CREATE", SQLITE_OPEN_CREATE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_OPEN_READONLY", SQLITE_OPEN_READONLY, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_OPEN_READWRITE", SQLITE_OPEN_READWRITE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("SQLITE3_OPEN_CREATE", SQLITE_OPEN_CREATE, CONST_CS | CONST_PERSISTENT); return SUCCESS; } |