Skip to content

Commit c618cde

Browse files
committed
Fix -Werror=stringop-truncation in pdo_raise_impl_error
1 parent 0d3eb1a commit c618cde

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

ext/pdo/pdo_dbh.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ void pdo_throw_exception(unsigned int driver_errcode, char *driver_errmsg, pdo_e
6262
zend_throw_exception_object(&pdo_exception);
6363
}
6464

65-
void pdo_raise_impl_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, const char *sqlstate, const char *supp) /* {{{ */
65+
void pdo_raise_impl_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, pdo_error_type sqlstate, const char *supp) /* {{{ */
6666
{
6767
pdo_error_type *pdo_err = &dbh->error_code;
6868
char *message = NULL;
@@ -81,7 +81,7 @@ void pdo_raise_impl_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, const char *sqlstate
8181
pdo_err = &stmt->error_code;
8282
}
8383

84-
strncpy(*pdo_err, sqlstate, 6);
84+
memcpy(*pdo_err, sqlstate, sizeof(pdo_error_type));
8585

8686
/* hash sqlstate to error messages */
8787
msg = pdo_sqlstate_state_to_description(*pdo_err);

ext/pdo/php_pdo_driver.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -672,7 +672,7 @@ PDO_API zend_class_entry *php_pdo_get_exception(void);
672672
PDO_API int pdo_parse_params(pdo_stmt_t *stmt, zend_string *inquery, zend_string **outquery);
673673

674674
PDO_API void pdo_raise_impl_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt,
675-
const char *sqlstate, const char *supp);
675+
pdo_error_type sqlstate, const char *supp);
676676

677677
PDO_API void php_pdo_dbh_addref(pdo_dbh_t *dbh);
678678
PDO_API void php_pdo_dbh_delref(pdo_dbh_t *dbh);

0 commit comments

Comments
 (0)