1 | /* |
2 | +----------------------------------------------------------------------+ |
3 | | PHP Version 5 | |
4 | +----------------------------------------------------------------------+ |
5 | | Copyright (c) 1997-2015 The PHP Group | |
6 | +----------------------------------------------------------------------+ |
7 | | This source file is subject to version 3.01 of the PHP license, | |
8 | | that is bundled with this package in the file LICENSE, and is | |
9 | | available through the world-wide-web at the following url: | |
10 | | http://www.php.net/license/3_01.txt | |
11 | | If you did not receive a copy of the PHP license and are unable to | |
12 | | obtain it through the world-wide-web, please send a note to | |
13 | | license@php.net so we can mail you a copy immediately. | |
14 | +----------------------------------------------------------------------+ |
15 | | Author: Wez Furlong <wez@php.net> | |
16 | +----------------------------------------------------------------------+ |
17 | */ |
18 | |
19 | /* $Id$ */ |
20 | |
21 | #ifndef PHP_PDO_ERROR_H |
22 | #define PHP_PDO_ERROR_H |
23 | |
24 | #include "php_pdo_driver.h" |
25 | |
26 | PDO_API void pdo_handle_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt TSRMLS_DC); |
27 | |
28 | #define PDO_DBH_CLEAR_ERR() do { \ |
29 | strlcpy(dbh->error_code, PDO_ERR_NONE, sizeof(PDO_ERR_NONE)); \ |
30 | if (dbh->query_stmt) { \ |
31 | dbh->query_stmt = NULL; \ |
32 | zend_objects_store_del_ref(&dbh->query_stmt_zval TSRMLS_CC); \ |
33 | } \ |
34 | } while (0) |
35 | #define PDO_STMT_CLEAR_ERR() strcpy(stmt->error_code, PDO_ERR_NONE) |
36 | #define PDO_HANDLE_DBH_ERR() if (strcmp(dbh->error_code, PDO_ERR_NONE)) { pdo_handle_error(dbh, NULL TSRMLS_CC); } |
37 | #define PDO_HANDLE_STMT_ERR() if (strcmp(stmt->error_code, PDO_ERR_NONE)) { pdo_handle_error(stmt->dbh, stmt TSRMLS_CC); } |
38 | |
39 | #endif /* PHP_PDO_ERROR_H */ |
40 | /* |
41 | * Local variables: |
42 | * tab-width: 4 |
43 | * c-basic-offset: 4 |
44 | * End: |
45 | * vim600: noet sw=4 ts=4 fdm=marker |
46 | * vim<600: noet sw=4 ts=4 |
47 | */ |
48 | |