[PHP-CVS] com php-src: Fixed #65225: PHP_BINARY incorrectly set: main/main.c

2013-08-18 Thread Stanislav Malyshev
Commit:98d29d20a1e5d2d8bc1699fbc61efde95f5ce87f
Author:Patrick Allaert p...@ez.no Tue, 9 Jul 2013 15:05:10 +0200
Committer: Stanislav Malyshev s...@php.net  Sun, 18 Aug 2013 14:18:33 
-0700
Parents:   a3fa25e857ca5d714e72b25c7f6a2999d1df8a6b
Branches:  PHP-5.4 PHP-5.5 master

Link:   
http://git.php.net/?p=php-src.git;a=commitdiff;h=98d29d20a1e5d2d8bc1699fbc61efde95f5ce87f

Log:
Fixed #65225: PHP_BINARY incorrectly set

Bugs:
https://bugs.php.net/65225

Changed paths:
  M  main/main.c


Diff:
diff --git a/main/main.c b/main/main.c
index b639ab1..1fd82c8 100644
--- a/main/main.c
+++ b/main/main.c
@@ -115,6 +115,10 @@
 #endif
 /* }}} */
 
+#ifndef S_ISREG
+#define S_ISREG(mode) (((mode)  S_IFMT) == S_IFREG)
+#endif
+
 PHPAPI int (*php_register_internal_extensions_func)(TSRMLS_D) = 
php_register_internal_extensions;
 
 #ifndef ZTS
@@ -276,13 +280,14 @@ static void php_binary_init(TSRMLS_D)
if ((envpath = getenv(PATH)) != NULL) {
char *search_dir, search_path[MAXPATHLEN];
char *last = NULL;
+   struct stat s;
 
path = estrdup(envpath);
search_dir = php_strtok_r(path, :, last);
 
while (search_dir) {
snprintf(search_path, MAXPATHLEN, 
%s/%s, search_dir, sapi_module.executable_location);
-   if (VCWD_REALPATH(search_path, 
binary_location)  !VCWD_ACCESS(binary_location, X_OK)) {
+   if (VCWD_REALPATH(search_path, 
binary_location)  !VCWD_ACCESS(binary_location, X_OK)  
VCWD_STAT(binary_location, s) == 0  S_ISREG(s.st_mode)) {
found = 1;
break;
}


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] com php-src: Fixed #65225: PHP_BINARY incorrectly set: main/main.c

2013-08-18 Thread Stanislav Malyshev
Commit:b980e4fedc945dd0a45d73349716f6ab18a97635
Author:Patrick Allaert p...@ez.no Tue, 9 Jul 2013 15:05:10 +0200
Parents:   3cdd09a76eb21789bb10d02581b21fc9403e39a1
Branches:  master

Link:   
http://git.php.net/?p=php-src.git;a=commitdiff;h=b980e4fedc945dd0a45d73349716f6ab18a97635

Log:
Fixed #65225: PHP_BINARY incorrectly set

Bugs:
https://bugs.php.net/65225

Changed paths:
  M  main/main.c


Diff:
diff --git a/main/main.c b/main/main.c
index de794ac..d11ef84 100644
--- a/main/main.c
+++ b/main/main.c
@@ -114,6 +114,10 @@
 #endif
 /* }}} */
 
+#ifndef S_ISREG
+#define S_ISREG(mode) (((mode)  S_IFMT) == S_IFREG)
+#endif
+
 PHPAPI int (*php_register_internal_extensions_func)(TSRMLS_D) = 
php_register_internal_extensions;
 
 #ifndef ZTS
@@ -275,13 +279,14 @@ static void php_binary_init(TSRMLS_D)
if ((envpath = getenv(PATH)) != NULL) {
char *search_dir, search_path[MAXPATHLEN];
char *last = NULL;
+   struct stat s;
 
path = estrdup(envpath);
search_dir = php_strtok_r(path, :, last);
 
while (search_dir) {
snprintf(search_path, MAXPATHLEN, 
%s/%s, search_dir, sapi_module.executable_location);
-   if (VCWD_REALPATH(search_path, 
binary_location)  !VCWD_ACCESS(binary_location, X_OK)) {
+   if (VCWD_REALPATH(search_path, 
binary_location)  !VCWD_ACCESS(binary_location, X_OK)  
VCWD_STAT(binary_location, s) == 0  S_ISREG(s.st_mode)) {
found = 1;
break;
}


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php