summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorWez Furlong <wez@php.net>2005-07-07 17:08:01 +0000
committerWez Furlong <wez@php.net>2005-07-07 17:08:01 +0000
commitda7d537d499e3fae94ec36692e43689330ccb8f4 (patch)
treebbf83c418853ea1e3d93113ee57714d22fa3e740 /ext
parent22896664a8ea407d3ca9280e444f9fbddadaedc6 (diff)
downloadphp-git-da7d537d499e3fae94ec36692e43689330ccb8f4.tar.gz
populate the new dbh->driver field.
Implement PDO_ATTR_DRIVER_NAME.
Diffstat (limited to 'ext')
-rwxr-xr-xext/pdo/pdo.c1
-rwxr-xr-xext/pdo/pdo_dbh.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/ext/pdo/pdo.c b/ext/pdo/pdo.c
index 210ed31603..d48ada98b1 100755
--- a/ext/pdo/pdo.c
+++ b/ext/pdo/pdo.c
@@ -336,6 +336,7 @@ PHP_MINIT_FUNCTION(pdo)
REGISTER_LONG_CONSTANT("PDO_ATTR_STATEMENT_CLASS", (long)PDO_ATTR_STATEMENT_CLASS, CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PDO_ATTR_FETCH_TABLE_NAMES", (long)PDO_ATTR_FETCH_TABLE_NAMES, CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PDO_ATTR_FETCH_CATALOG_NAMES", (long)PDO_ATTR_FETCH_CATALOG_NAMES, CONST_CS|CONST_PERSISTENT);
+ REGISTER_LONG_CONSTANT("PDO_ATTR_DRIVER_NAME", (long)PDO_ATTR_DRIVER_NAME, CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PDO_ERRMODE_SILENT", (long)PDO_ERRMODE_SILENT, CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PDO_ERRMODE_WARNING", (long)PDO_ERRMODE_WARNING, CONST_CS|CONST_PERSISTENT);
diff --git a/ext/pdo/pdo_dbh.c b/ext/pdo/pdo_dbh.c
index be332da460..cbab10d908 100755
--- a/ext/pdo/pdo_dbh.c
+++ b/ext/pdo/pdo_dbh.c
@@ -390,6 +390,8 @@ static PHP_FUNCTION(dbh_constructor)
php_error_docref(NULL TSRMLS_CC, E_ERROR, "Failed to register persistent entry");
}
}
+
+ dbh->driver = driver;
return;
}
@@ -744,6 +746,8 @@ static PHP_METHOD(PDO, getAttribute)
case PDO_ATTR_ERRMODE:
RETURN_LONG(dbh->error_mode);
+ case PDO_ATTR_DRIVER_NAME:
+ RETURN_STRINGL(dbh->driver->driver_name, dbh->driver->driver_name_len, 1);
}
if (!dbh->methods->get_attribute) {