summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlia Alshanetsky <iliaa@php.net>2011-08-07 23:46:00 +0000
committerIlia Alshanetsky <iliaa@php.net>2011-08-07 23:46:00 +0000
commit9db1c593259183b96186c29b83ce37c78fb08a5e (patch)
treef1b7f5ef2bf8a16e4d8661492726c1f6c3c26a89
parent265367e81605ffc36bc61817fc46a2c564441613 (diff)
downloadphp-git-9db1c593259183b96186c29b83ce37c78fb08a5e.tar.gz
Fixes for variety of issues identified by coverity scan
-rwxr-xr-xext/pdo/pdo.c2
-rwxr-xr-xext/pdo/pdo_dbh.c2
-rw-r--r--ext/pdo/pdo_sql_parser.re5
3 files changed, 5 insertions, 4 deletions
diff --git a/ext/pdo/pdo.c b/ext/pdo/pdo.c
index 169ce32e25..b654fea639 100755
--- a/ext/pdo/pdo.c
+++ b/ext/pdo/pdo.c
@@ -191,7 +191,7 @@ PDO_API int php_pdo_register_driver(pdo_driver_t *driver)
}
return zend_hash_add(&pdo_driver_hash, (char*)driver->driver_name, driver->driver_name_len,
- (void**)&driver, sizeof(driver), NULL);
+ (void**)&driver, sizeof(pdo_driver_t *), NULL);
}
PDO_API void php_pdo_unregister_driver(pdo_driver_t *driver)
diff --git a/ext/pdo/pdo_dbh.c b/ext/pdo/pdo_dbh.c
index 9cc4162f7f..c4380d1e48 100755
--- a/ext/pdo/pdo_dbh.c
+++ b/ext/pdo/pdo_dbh.c
@@ -57,7 +57,7 @@ void pdo_raise_impl_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, const char *sqlstate
pdo_err = &stmt->error_code;
}
- strcpy(*pdo_err, sqlstate);
+ strncpy(*pdo_err, sqlstate, 6);
/* hash sqlstate to error messages */
msg = pdo_sqlstate_state_to_description(*pdo_err);
diff --git a/ext/pdo/pdo_sql_parser.re b/ext/pdo/pdo_sql_parser.re
index bb7af3575d..92411f8075 100644
--- a/ext/pdo/pdo_sql_parser.re
+++ b/ext/pdo/pdo_sql_parser.re
@@ -236,6 +236,9 @@ safe:
plc->freeq = 0;
break;
+ case IS_BOOL:
+ convert_to_long(param->parameter);
+
case IS_LONG:
case IS_DOUBLE:
convert_to_string(param->parameter);
@@ -244,8 +247,6 @@ safe:
plc->freeq = 0;
break;
- case IS_BOOL:
- convert_to_long(param->parameter);
default:
convert_to_string(param->parameter);
if (!stmt->dbh->methods->quoter(stmt->dbh, Z_STRVAL_P(param->parameter),