From a351279a2ff38538f537fd58d6e5ad77ed8d0d5e Mon Sep 17 00:00:00 2001 From: Pierre Joye Date: Tue, 20 Jan 2009 01:41:19 +0000 Subject: [PATCH] - MFB - [DOC] add support for fnmatch() on Windows - enable tests (pass) --- ext/standard/file.c | 3 ++- ext/standard/tests/file/fnmatch_basic.phpt | 3 --- ext/standard/tests/file/fnmatch_error.phpt | 3 --- ext/standard/tests/file/fnmatch_variation.phpt | 8 +++++--- 4 files changed, 7 insertions(+), 10 deletions(-) diff --git a/ext/standard/file.c b/ext/standard/file.c index 1c744a396e..553c44e0ef 100644 --- a/ext/standard/file.c +++ b/ext/standard/file.c @@ -48,6 +48,7 @@ #define O_RDONLY _O_RDONLY #include "win32/param.h" #include "win32/winutil.h" +#include "win32/fnmatch.h" #elif defined(NETWARE) #include #include @@ -115,7 +116,7 @@ int file_globals_id; php_file_globals file_globals; #endif -#ifdef HAVE_FNMATCH +#if defined(HAVE_FNMATCH) && !defined(PHP_WIN32) #ifndef _GNU_SOURCE #define _GNU_SOURCE #endif diff --git a/ext/standard/tests/file/fnmatch_basic.phpt b/ext/standard/tests/file/fnmatch_basic.phpt index 9f8f4dbb4d..189605169d 100644 --- a/ext/standard/tests/file/fnmatch_basic.phpt +++ b/ext/standard/tests/file/fnmatch_basic.phpt @@ -2,9 +2,6 @@ Test fnmatch() function: Basic functionality --SKIPIF-- diff --git a/ext/standard/tests/file/fnmatch_error.phpt b/ext/standard/tests/file/fnmatch_error.phpt index 77a2a386e5..1b175b0852 100644 --- a/ext/standard/tests/file/fnmatch_error.phpt +++ b/ext/standard/tests/file/fnmatch_error.phpt @@ -2,9 +2,6 @@ Test fnmatch() function: Error conditions --SKIPIF-- diff --git a/ext/standard/tests/file/fnmatch_variation.phpt b/ext/standard/tests/file/fnmatch_variation.phpt index 34cc0b8e4c..e65bdd0555 100644 --- a/ext/standard/tests/file/fnmatch_variation.phpt +++ b/ext/standard/tests/file/fnmatch_variation.phpt @@ -2,9 +2,6 @@ Test fnmatch() function: Variations --SKIPIF-- @@ -18,6 +15,11 @@ if (!function_exists('fnmatch')) echo "*** Testing fnmatch() with file and various patterns ***\n"; $file_name = dirname(__FILE__)."/match.tmp"; +/* avoid using \, it breaks the pattern */ +if (substr(PHP_OS, 0, 3) == 'WIN') { + $file_name = str_replace('\\','/', $file_name); +} + fopen($file_name, "w"); $pattern_arr = array( -- 2.40.0