diff options
author | Remi Collet <remi@php.net> | 2015-05-20 08:11:24 +0200 |
---|---|---|
committer | Remi Collet <remi@php.net> | 2015-05-20 08:11:24 +0200 |
commit | e41a2009d613ae7fe8719d1bf99147ff6a570a33 (patch) | |
tree | 8ff6b294d0eb44e5ab08c2a097f283274e4e15c3 /ext/pgsql/pgsql.c | |
parent | 4c5efc74569b6329182b8d3fe8eae614a8b4c3c9 (diff) | |
parent | 4bda39b81d01d3e909c664db60ace21db1001b0a (diff) | |
download | php-git-e41a2009d613ae7fe8719d1bf99147ff6a570a33.tar.gz |
Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
NEWS 5.5
Fixed Bug #69667 segfault in php_pgsql_meta_data
fix test output (32bits)
Diffstat (limited to 'ext/pgsql/pgsql.c')
-rw-r--r-- | ext/pgsql/pgsql.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/ext/pgsql/pgsql.c b/ext/pgsql/pgsql.c index 1a10cfd93d..a6263680af 100644 --- a/ext/pgsql/pgsql.c +++ b/ext/pgsql/pgsql.c @@ -5479,7 +5479,11 @@ PHP_PGSQL_API int php_pgsql_meta_data(PGconn *pg_link, const char *table_name, z src = estrdup(table_name); tmp_name = php_strtok_r(src, ".", &tmp_name2); - + if (!tmp_name) { + efree(src); + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The table name must be specified"); + return FAILURE; + } if (!tmp_name2 || !*tmp_name2) { /* Default schema */ tmp_name2 = tmp_name; @@ -6496,7 +6500,8 @@ static int do_exec(smart_str *querystr, int expect, PGconn *pg_link, ulong opt T static inline void build_tablename(smart_str *querystr, PGconn *pg_link, const char *table) { - char *table_copy, *escaped, *token, *tmp; + char *table_copy, *escaped, *tmp; + const char *token; size_t len; /* schame.table should be "schame"."table" */ |