]> granicus.if.org Git - php/commitdiff
handle some generic attributes here
authorWez Furlong <wez@php.net>
Sun, 6 Feb 2005 17:25:09 +0000 (17:25 +0000)
committerWez Furlong <wez@php.net>
Sun, 6 Feb 2005 17:25:09 +0000 (17:25 +0000)
ext/pdo/pdo_dbh.c

index e61d76ab194556b71aea08a1a7bd6dc54987bd4a..d77211b1c4be8123ade2aacb36c9e922f23dda0a 100755 (executable)
@@ -515,12 +515,25 @@ static PHP_METHOD(PDO, getAttribute)
                RETURN_FALSE;
        }
 
+       PDO_DBH_CLEAR_ERR();
+
+       /* handle generic PDO-level atributes */
+       switch (attr) {
+               case PDO_ATTR_PERSISTENT:
+                       RETURN_BOOL(dbh->is_persistent);
+                       
+               case PDO_ATTR_CASE:
+                       RETURN_LONG(dbh->desired_case);
+
+               case PDO_ATTR_ORACLE_NULLS:
+                       RETURN_BOOL(dbh->oracle_nulls);
+       }
+       
        if (!dbh->methods->get_attribute) {
                php_error_docref(NULL TSRMLS_CC, E_WARNING, "This driver doesn't support fetching attributes");
                RETURN_FALSE;
        }
 
-       PDO_DBH_CLEAR_ERR();
        switch (dbh->methods->get_attribute(dbh, attr, return_value TSRMLS_CC)) {
                case -1:
                        PDO_HANDLE_DBH_ERR();