Commit Graph

1922 Commits

Author SHA1 Message Date
Anatol Belski
089a3213ae Sync for upcoming vc++ 15.6 version raise 2018-01-14 16:38:36 +01:00
Kalle Sommer Nielsen
8fe0ee690c Added a <in deps path> for includes and libs on configure 2018-01-04 08:58:27 +01:00
Gabriel Caruso
c215b8d147 Trailing whitespaces on win32
Signed-off-by: Gabriel Caruso <carusogabriel34@gmail.com>
2018-01-04 02:41:26 -02:00
Gabriel Caruso
6400264856 Trailing whitespaces
Signed-off-by: Gabriel Caruso <carusogabriel34@gmail.com>
2018-01-03 14:38:00 +01:00
Xinchen Hui
a76eeea736 Merge branch 'PHP-7.2'
* PHP-7.2:
  Happy new year (Update copyright to 2018)

Conflicts:
	ext/phar/LICENSE
2018-01-03 16:02:15 +08:00
Xinchen Hui
0e62639d28 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Happy new year (Update copyright to 2018)
2018-01-03 16:00:34 +08:00
Lior Kaplan
fbfdd1e1c4 Happy new year (Update copyright to 2018) 2018-01-02 23:42:29 +02:00
Xinchen Hui
a6519d0514 year++ 2018-01-02 12:57:58 +08:00
Xinchen Hui
7a7ec01a49 year++ 2018-01-02 12:55:14 +08:00
Xinchen Hui
ccd4716ec7 year++ 2018-01-02 12:53:31 +08:00
Anatol Belski
9baf84e513 Drop unused code 2017-12-15 15:00:20 +01:00
Anatol Belski
f3f6cd24e9 Modernize realpath and integrate quick variant into virtual_file_ex
The slower I/O as a traditional bottleneck on Windows which is
the target of this patch. The recursive path resolution, while being
an allround solution, is expensive when it comes to the common case.
Files with proper ACLs set can be resolved in one go by usage of specific
API. Those are available since Vista, so actually can be called old. Those
simpler api is used for the cases where no CWD_EXPAND is requested. For
the cases where ACLs are improper, the existing solution based on
FindFirstFile still does good job also partially providing quirks. Cases
involing reparse tags and other non local filesystems are also partially
server by new APIs.

The approach uses both APIs - the quick one for the common case still
integrating realpath cache, and the existing one as a fallback. The tests
show the I/O load drop on the realpath resolution part due to less
system calls for the sub part resolution of paths. In most case it is
justified, as the sub parts were otherwise cached or unused as well. The
realpath() implementation in ioutil is also closer to the POSIX.
2017-12-15 13:23:34 +01:00
Anatol Belski
71eaf0d97f Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75679 Path 260 character problem
2017-12-14 16:18:33 +01:00
Anatol Belski
ed210c186a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #75679 Path 260 character problem
2017-12-14 16:17:37 +01:00
Anatol Belski
4c0af1fbd4 Fixed bug #75679 Path 260 character problem 2017-12-14 16:16:50 +01:00
Anatol Belski
f749448fc6 Sync known vc++ versions in 7.1 2017-12-11 14:13:38 +01:00
Anatol Belski
820ab91d36 Merge branch 'PHP-7.2'
* PHP-7.2:
  Add vc++ 19.12 to the known list
2017-12-11 12:58:49 +01:00
Anatol Belski
2d7bea0462 Add vc++ 19.12 to the known list 2017-12-11 12:57:58 +01:00
Young-X
706a157fc6 Make sizeof formatting consistent
Everything else in that file uses sizeof with parentheses.
2017-12-09 18:34:14 +01:00
Anatol Belski
331019c548 Use cheaper ascii conversion for mode 2017-12-09 12:38:19 +01:00
Anatol Belski
f3fd860e24 Revamp fopen implementation, rely on open 2017-12-09 11:58:17 +01:00
Anatol Belski
36cdca6576 Cleanup 2017-12-09 00:21:23 +01:00
Anatol Belski
94f16f1961 Rework mkdir impl and expose wide char variant 2017-12-09 00:11:33 +01:00
Anatol Belski
6bd18c0f0b Remove dead code 2017-12-08 22:59:00 +01:00
Anatol Belski
c9274a4c6a Move declarations 2017-12-08 21:41:25 +01:00
Anatol Belski
a9a49b8250 Improve ioutil access impl and refactor tsrm_win32_access 2017-12-08 20:58:19 +01:00
Anatol Belski
2fbdaec03c Revamp unlink() implementation and improve error handling 2017-12-08 19:23:18 +01:00
Anatol Belski
17d621e7d3 Allow delete-sharing mode for CreateFile by default
This effectively allows a UNIX like semantics for deleting files
with an open handle. Some OS related limitations still persist,
but the Windows 95 times can be considered as definitely over.
2017-12-08 18:14:20 +01:00
Kalle Sommer Nielsen
525ab4198e Introduce ZEND_EXTENSION() to the Windows build system
Zend Extensions should now be declared in their config.w32 with a ZEND_EXTENSION() call instead of EXTENSION(), the parameters sent is identical.

For a cross version compatible config.w32, the following will do:
if (typeof(ZEND_EXTENSION) == 'undefined') {
  EXTENSION(...);
} else {
  ZEND_EXTENSION(...);
}
2017-12-04 17:39:08 +01:00
Anatol Belski
c94a73ec90 Merge branch 'PHP-7.2'
* PHP-7.2:
  Consider Xdebug for tmi ini generation, too
2017-12-01 16:03:49 +01:00
Anatol Belski
f282b7720a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Consider Xdebug for tmi ini generation, too
2017-12-01 16:03:09 +01:00
Anatol Belski
ffd94f9bf8 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Consider Xdebug for tmi ini generation, too
2017-12-01 16:02:38 +01:00
Anatol Belski
958fdc997c Consider Xdebug for tmi ini generation, too 2017-12-01 16:01:34 +01:00
Anatol Belski
4a2ccd908b Keep up with Linux extension to POSIX.1-2001 getcwd()
If both buf and size are zero, the buf is allocated as big as required.
Otherwise, the size is still to respect.

Fix var name

Improve error check

Ensure the end buffer length is not bigger than requested
2017-11-28 09:15:14 +01:00
Anatol Belski
e9927994eb Sync with the POSIX signature 2017-11-28 09:15:14 +01:00
Anatol Belski
5a14b4424c Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix normalized path length calculation and error handling
2017-11-27 12:33:54 +01:00
Anatol Belski
155b244c12 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix normalized path length calculation and error handling
2017-11-27 12:33:23 +01:00
Anatol Belski
34b19387c2 Fix normalized path length calculation and error handling 2017-11-27 12:32:19 +01:00
Kalle Sommer Nielsen
c5767db441 We don't check for Windows in the win32/ directory, as files here are only compiled on Windows anyway 2017-11-25 00:54:16 +01:00
Kalle Sommer Nielsen
ffbe801226 PCRE is always available, PHP can't be built without it anyway so these checks makes no sense anymore 2017-11-25 00:40:13 +01:00
Anatol Belski
ad38168bdd Use log1p from the CRT 2017-11-17 21:22:51 +01:00
Anatol Belski
6e3cdf1dcc Remove unused assignment 2017-11-17 18:20:52 +01:00
Anatol Belski
acaaf4608a Refactor ASCII to wide conversion
- add SSE2 based ASCII check in 16 byte blocks
- use early return on fail
2017-11-16 12:57:11 +01:00
Anatol Belski
9acbab30cc Remove padding 2017-11-15 18:03:51 +01:00
Anatol Belski
721a669996 Merge branch 'PHP-7.2'
* PHP-7.2:
  Refine allocation
  NEWS
2017-11-15 18:03:20 +01:00
Anatol Belski
6f41ca4de1 Refine allocation
None of currently supported codepages would claim more than 5
bytes per a multibyte glyph, that's (255*5+1)kb, not 2kb anymore.
2017-11-15 18:02:01 +01:00
Anatol Belski
178add7a58 Unroll loop for ASCII check 2017-11-15 16:02:46 +01:00
Anatol Belski
a0724819c2 Merge branch 'PHP-7.2'
* PHP-7.2:
  Add missing var declarations for phpize mode
2017-11-15 12:02:09 +01:00
Anatol Belski
5b28218cc6 Add missing var declarations for phpize mode 2017-11-15 12:00:58 +01:00
Anatol Belski
0045ed1064 Merge branch 'PHP-7.2'
* PHP-7.2:
  Regenerate cp map
2017-11-15 11:24:56 +01:00
Anatol Belski
7f35502bd1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Regenerate cp map
2017-11-15 11:24:12 +01:00
Anatol Belski
c94d091889 Regenerate cp map
Add missing encoding name and don't put nameless cp
2017-11-15 11:17:30 +01:00
Anatol Belski
ce17d2a9be Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75525 Access Violation in vcruntime140.dll
2017-11-15 10:14:51 +01:00
Anatol Belski
020fdfd55d Fixed bug #75525 Access Violation in vcruntime140.dll
It was a mistake to make d_name a pointer. d_name has to be allocated
in the body of struct dirent as per POSIX.1-2008. The binary
compatibility is kept through the extra padding, which will be removed
in 7.3.
2017-11-15 09:55:29 +01:00
Anatol Belski
a5bc5aed71 Patch core for PCRE2 support
RFC https://wiki.php.net/rfc/pcre2-migration
2017-11-13 19:37:38 +01:00
Anatol Belski
1d82e2f076 Merge branch 'PHP-7.2'
* PHP-7.2:
  Update libs_version.txt
2017-11-02 22:46:57 +01:00
Anatol Belski
0166e5c466 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update libs_version.txt
2017-11-02 22:46:25 +01:00
Anatol Belski
91c7460c53 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Update libs_version.txt
2017-11-02 22:44:27 +01:00
Anatol Belski
c3be49e07d Update libs_version.txt 2017-11-02 22:41:12 +01:00
Anatol Belski
1b25be2650 Merge branch 'PHP-7.2'
* PHP-7.2:
  Yet one /nologo
2017-11-02 09:24:46 +01:00
Anatol Belski
5a3688fe2c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Yet one /nologo
2017-11-02 09:24:22 +01:00
Anatol Belski
ba50b27284 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Yet one /nologo
2017-11-02 09:22:25 +01:00
Anatol Belski
f5358c0e23 Yet one /nologo 2017-11-02 09:21:22 +01:00
Anatol Belski
3a59c1e068 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix year
  Add /nologo
2017-10-31 10:38:54 +01:00
Anatol Belski
da9da5742c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix year
  Add /nologo
2017-10-31 10:38:18 +01:00
Anatol Belski
98422cfa3d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix year
  Add /nologo
2017-10-31 10:35:59 +01:00
Anatol Belski
8a3e2a6b14 Fix year 2017-10-31 10:25:15 +01:00
Anatol Belski
164167f3da Add /nologo 2017-10-31 10:24:34 +01:00
Anatol Belski
1fbcebe100 Merge branch 'PHP-7.2'
* PHP-7.2:
  Don't create plist files when using clang analyzer
2017-10-25 18:15:16 +02:00
Anatol Belski
777e189445 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Don't create plist files when using clang analyzer
2017-10-25 18:11:40 +02:00
Anatol Belski
8ad4de887f Don't create plist files when using clang analyzer 2017-10-25 18:06:56 +02:00
Anatol Belski
bcad693468 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fail hard when re2c is not found or the version requirement not met
  Fix mismatching alloc
2017-10-23 19:15:43 +02:00
Anatol Belski
734c1f3cd4 Fail hard when re2c is not found or the version requirement not met
With 7.2, the binary SDK supplies the minimal required version, thus no
reason to fail later at the compilation time.
2017-10-23 19:01:14 +02:00
Anatol Belski
620d3abfde Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix re2c version detection
2017-10-10 13:00:38 +02:00
Anatol Belski
9c5a1dad64 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix re2c version detection
2017-10-10 13:00:26 +02:00
Anatol Belski
30f121f9bc Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix re2c version detection
2017-10-10 12:59:14 +02:00
Anatol Belski
d1fc9b425f Fix re2c version detection 2017-10-10 10:52:52 +02:00
Anatol Belski
0494d90fec Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix ftok() multibyte path support
2017-10-09 13:15:17 +02:00
Anatol Belski
a51c542b53 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix ftok() multibyte path support
2017-10-09 13:13:51 +02:00
Anatol Belski
dc3b9fe619 Fix ftok() multibyte path support 2017-10-09 13:12:40 +02:00
Anatol Belski
eca3bc59b2 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix mkdir() special case for path length < 260 and > 248
2017-09-28 13:20:09 +02:00
Anatol Belski
4f63024206 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix mkdir() special case for path length < 260 and > 248
2017-09-28 13:19:48 +02:00
Anatol Belski
72c008f945 Fix mkdir() special case for path length < 260 and > 248 2017-09-28 13:18:31 +02:00
Anatol Belski
131abe715c Merge branch 'PHP-7.2'
* PHP-7.2:
  Update lib_versions.txt
2017-09-18 09:38:14 +02:00
Anatol Belski
de2f28ede1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update lib_versions.txt
2017-09-18 09:37:46 +02:00
Anatol Belski
e3e3d37fa9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Update lib_versions.txt
2017-09-18 09:36:29 +02:00
Anatol Belski
7670590efd Update lib_versions.txt 2017-09-18 09:34:58 +02:00
Anatol Belski
658d8d9760 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix command
2017-09-02 16:59:12 +02:00
Anatol Belski
ecc8f3cf16 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix command
2017-09-02 16:58:58 +02:00
Anatol Belski
296d0826da Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix command
2017-09-02 16:58:44 +02:00
Anatol Belski
24da62d342 Fix command 2017-09-02 16:56:52 +02:00
Anatol Belski
708fb44207 Merge branch 'PHP-7.2'
* PHP-7.2:
  Yet one DLL to ignore
2017-09-01 10:39:10 +02:00
Anatol Belski
fb597a8123 Yet one DLL to ignore 2017-09-01 10:37:59 +02:00
Anatol Belski
4cb06b9327 Merge branch 'PHP-7.2'
* PHP-7.2:
  Make for exclusion per regex
2017-08-31 23:58:19 +02:00
Anatol Belski
8191b9790b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Make for exclusion per regex
2017-08-31 23:57:58 +02:00
Anatol Belski
db78eff4c9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Make for exclusion per regex
2017-08-31 23:57:36 +02:00
Anatol Belski
a86df6bcb0 Make for exclusion per regex 2017-08-31 23:56:42 +02:00
Anatol Belski
d4268e6eb5 Merge branch 'PHP-7.2'
* PHP-7.2:
  Extend ignore list for DLLs to not to look after
2017-08-31 20:56:25 +02:00
Anatol Belski
01171db15d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Extend ignore list for DLLs to not to look after
2017-08-31 20:55:53 +02:00
Anatol Belski
965570541b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Extend ignore list for DLLs to not to look after
2017-08-31 20:55:12 +02:00