diff options
author | Xinchen Hui <laruence@gmail.com> | 2014-04-22 18:23:03 +0800 |
---|---|---|
committer | Xinchen Hui <laruence@gmail.com> | 2014-04-22 18:23:03 +0800 |
commit | bdfef93b424dcca4d1822c7d6393fbb00942cbaa (patch) | |
tree | 09cd047f0fff6f30952574a81bf359fa57077f3e /ext/pdo/pdo_sqlstate.c | |
parent | 89d89b95861c4366f93e705546c0ca8c4443a425 (diff) | |
download | php-git-bdfef93b424dcca4d1822c7d6393fbb00942cbaa.tar.gz |
Refactor PDO (only compilable now)
Diffstat (limited to 'ext/pdo/pdo_sqlstate.c')
-rw-r--r-- | ext/pdo/pdo_sqlstate.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/ext/pdo/pdo_sqlstate.c b/ext/pdo/pdo_sqlstate.c index 533a35c404..ed81d875b6 100644 --- a/ext/pdo/pdo_sqlstate.c +++ b/ext/pdo/pdo_sqlstate.c @@ -314,15 +314,12 @@ int pdo_sqlstate_init_error_table(void) int i; const struct pdo_sqlstate_info *info; - if (FAILURE == zend_hash_init(&err_hash, - sizeof(err_initializer)/sizeof(err_initializer[0]), NULL, NULL, 1)) { - return FAILURE; - } + zend_hash_init(&err_hash, sizeof(err_initializer)/sizeof(err_initializer[0]), NULL, NULL, 1); for (i = 0; i < sizeof(err_initializer)/sizeof(err_initializer[0]); i++) { info = &err_initializer[i]; - zend_hash_add(&err_hash, info->state, sizeof(info->state), &info, sizeof(info), NULL); + zend_hash_str_add_mem(&err_hash, info->state, sizeof(info->state) - 1, &info, sizeof(info)); } return SUCCESS; @@ -330,10 +327,9 @@ int pdo_sqlstate_init_error_table(void) const char *pdo_sqlstate_state_to_description(char *state) { - const struct pdo_sqlstate_info **info; - if (SUCCESS == zend_hash_find(&err_hash, state, sizeof(err_initializer[0].state), - (void**)&info)) { - return (*info)->desc; + const struct pdo_sqlstate_info *info; + if ((info = zend_hash_str_find_ptr(&err_hash, state, sizeof(err_initializer[0].state) - 1)) != NULL) { + return info->desc; } return NULL; } |