summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Schlüter <johannes@php.net>2011-11-02 15:45:53 +0000
committerJohannes Schlüter <johannes@php.net>2011-11-02 15:45:53 +0000
commit539a0f3bd340b6377ed3407d89665d2386fe0943 (patch)
treec07171a4ec10f2e2cd7d7057c941b9892dc6c5c8
parent2627fafcbdd81d9ec88e891cd6077ab42080352d (diff)
downloadphp-git-539a0f3bd340b6377ed3407d89665d2386fe0943.tar.gz
- Fix bug #60155 (pdo_mysql.default_socket ignored).
-rwxr-xr-xext/pdo_mysql/mysql_driver.c11
-rwxr-xr-xext/pdo_mysql/pdo_mysql.c22
2 files changed, 21 insertions, 12 deletions
diff --git a/ext/pdo_mysql/mysql_driver.c b/ext/pdo_mysql/mysql_driver.c
index f6003d9061..5c38e54140 100755
--- a/ext/pdo_mysql/mysql_driver.c
+++ b/ext/pdo_mysql/mysql_driver.c
@@ -525,12 +525,11 @@ static struct pdo_dbh_methods mysql_methods = {
pdo_mysql_check_liveness
};
/* }}} */
-#ifdef PDO_USE_MYSQLND
-# ifdef PHP_WIN32
-# define MYSQL_UNIX_ADDR "MySQL"
-# else
-# define MYSQL_UNIX_ADDR PDO_MYSQL_G(default_socket)
-# endif
+
+#ifdef PHP_WIN32
+# define MYSQL_UNIX_ADDR NULL
+#else
+# define MYSQL_UNIX_ADDR PDO_MYSQL_G(default_socket)
#endif
/* {{{ pdo_mysql_handle_factory */
diff --git a/ext/pdo_mysql/pdo_mysql.c b/ext/pdo_mysql/pdo_mysql.c
index b9fdc01f64..9545887fe8 100755
--- a/ext/pdo_mysql/pdo_mysql.c
+++ b/ext/pdo_mysql/pdo_mysql.c
@@ -37,12 +37,22 @@ ZEND_GET_MODULE(pdo_mysql)
ZEND_DECLARE_MODULE_GLOBALS(pdo_mysql);
-#ifndef PHP_WIN32
-# ifndef PDO_MYSQL_UNIX_ADDR
-# ifdef PHP_MYSQL_UNIX_SOCK_ADDR
-# define PDO_MYSQL_UNIX_ADDR PHP_MYSQL_UNIX_SOCK_ADDR
-# else
+/*
+ The default socket location is sometimes defined by configure.
+ With libmysql `mysql_config --socket` will fill PDO_MYSQL_UNIX_ADDR
+ and the user can use --with-mysql-sock=SOCKET which will fill
+ PDO_MYSQL_UNIX_ADDR. If both aren't set we're using mysqlnd and use
+ /tmp/mysql.sock as default on *nix and NULL for Windows (default
+ named pipe name is set in mysqlnd).
+*/
+#ifndef PDO_MYSQL_UNIX_ADDR
+# ifdef PHP_MYSQL_UNIX_SOCK_ADDR
+# define PDO_MYSQL_UNIX_ADDR PHP_MYSQL_UNIX_SOCK_ADDR
+# else
+# if !PHP_WIN32
# define PDO_MYSQL_UNIX_ADDR "/tmp/mysql.sock"
+# else
+# define PDO_MYSQL_UNIX_ADDR NULL
# endif
# endif
#endif
@@ -141,7 +151,7 @@ static PHP_MINFO_FUNCTION(pdo_mysql)
php_info_print_table_end();
-#ifdef PDO_USE_MYSQLND
+#ifndef PHP_WIN32
DISPLAY_INI_ENTRIES();
#endif
}