Commit Graph

344 Commits

Author SHA1 Message Date
Xinchen Hui
7a7ec01a49 year++ 2018-01-02 12:55:14 +08:00
Xinchen Hui
ccd4716ec7 year++ 2018-01-02 12:53:31 +08:00
Nikita Popov
b2b2b437af Add _IS_NUMBER as cast_object() target type
convert_scalar_to_number() will now call cast_object() with an
_IS_NUMBER argument, in which case the cast handler should return
either an integer or floating point number, whichever is more
appropriate.

Previously convert_scalar_to_number() unconditionally converted
objects to integers instead.

Fixes bug #53033.
Fixes bug #54973.
Fixes bug #73108.
2017-12-26 12:39:06 +01:00
Dmitry Stogov
9e709e2fa0 Move constants into read-only data segment 2017-12-14 18:43:44 +03:00
Dmitry Stogov
1db8402208 Move zend_object_iterator_funcs structures into read-only data segment 2017-12-14 14:21:22 +03:00
Dmitry Stogov
6a9d2b2190 Cleanup type conversion 2017-12-07 19:24:55 +03:00
Dmitry Stogov
49ea143bbd Encapsulate reference-counting primitives.
Prohibit direct update of GC_REFCOUNT(), GC_SET_REFCOUNT(), GC_ADDREF() and GC_DELREF() shoukf be instead.
Added mactros to validate reference-counting (disabled for now).
These macros are going to be used to eliminate race-condintions during reference-counting on data shared between threads.
2017-10-27 01:28:58 +03:00
Dmitry Stogov
ef5ea48741 Always use IS_CONSTANT_AST (IS_CONSTANT is removed). 2017-10-10 10:11:05 +03:00
Peter Kokot
978f53afa6 Remove outdated README from ext/com_dotnet
The PHP documentation includes updated and better com_dotnet
information.
2017-10-08 14:41:52 +02:00
Kalle Sommer Nielsen
7d7be194d3 Kill compiler warnings in ext/com_dotnet 2017-08-24 00:52:48 +02:00
Kalle Sommer Nielsen
c34ba92782 Get rid of all these old package[2].xml files, most of these had no had a release since PHP4, or any release at all in close to 10 years, some even did not have a package registered at pecl
OCI, PDO_OCI and zip are left as they are actively developed and released there
2017-08-17 22:09:29 +02:00
Tom Van Looy
04fb3f28ff Remove superfluous semicolons 2017-06-26 00:23:25 +02:00
Dmitry Stogov
141d1ba980 Introduced "zend_type" - an abstraction for type-hinting representation. 2017-01-13 11:37:46 +03:00
Sammy Kaye Powers
dac6c639bb Update copyright headers to 2017 2017-01-04 11:23:42 -06:00
Sammy Kaye Powers
9e29f841ce Update copyright headers to 2017 2017-01-02 09:30:12 -06:00
Anatol Belski
32201fe5ad Merge branch 'PHP-7.1'
* PHP-7.1:
  better way to get ACP
2016-12-12 01:57:31 +01:00
Anatol Belski
d9fc5ea6ec Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  better way to get ACP
2016-12-12 01:56:44 +01:00
Anatol Belski
7a8774ade4 better way to get ACP 2016-12-12 01:54:22 +01:00
Anatol Belski
d0dc6ffda5 Merge branch 'PHP-7.1'
* PHP-7.1:
  adapt patch for 7.1
2016-12-12 01:51:17 +01:00
Anatol Belski
8199e5a7e9 adapt patch for 7.1 2016-12-12 01:50:15 +01:00
Anatol Belski
b68cca260b Merge branch 'PHP-7.1'
* PHP-7.1:
  fix datatype for zpp, yet a followup on bug #73679
2016-12-12 01:29:59 +01:00
Anatol Belski
e53f967ed7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix datatype for zpp, yet a followup on bug #73679
2016-12-12 01:29:23 +01:00
Anatol Belski
3473b519c0 fix datatype for zpp, yet a followup on bug #73679 2016-12-12 01:26:06 +01:00
Anatol Belski
e1c062112a Merge branch 'PHP-7.1'
* PHP-7.1:
  improve fix for bug #73679 with new capabilities available
2016-12-11 17:27:11 +01:00
Anatol Belski
e6e5f06c78 improve fix for bug #73679 with new capabilities available 2016-12-11 17:25:48 +01:00
Anatol Belski
43be5aeaed Merge branch 'PHP-7.1'
* PHP-7.1:
  Fixed bug #73679 DOTNET read access violation using invalid codepage
2016-12-11 17:09:04 +01:00
Anatol Belski
1d80fb2cdb Fixed bug #73679 DOTNET read access violation using invalid codepage 2016-12-11 17:06:55 +01:00
Anatol Belski
4fc394464c Merge branch 'PHP-7.1'
* PHP-7.1:
  fix uninitialized member
2016-12-08 17:18:06 +01:00
Anatol Belski
66ad7918b8 fix uninitialized member 2016-12-08 17:15:06 +01:00
Anatol Belski
b204b3abd1 further normalizations, uint vs uint32_t
fix merge mistake

yet one more replacement run
2016-11-26 17:29:01 +01:00
Anatol Belski
579c8669c8 Fixed bug #73126 Cannot pass parameter 1 by reference 2016-09-22 11:49:35 +02:00
Anatol Belski
51d19c12a5 fix check for args by ref 2016-08-25 18:06:47 +02:00
Anatol Belski
392c5ea472 Fixed bug #72922 COM called from PHP does not return out parameters 2016-08-25 12:12:45 +02:00
Anatol Belski
3e8dbb3e5d Fixed bug #72569 DOTNET/COM array parameters broke in PHP7 2016-07-12 14:58:50 +02:00
Anatol Belski
3455848dfe Fixed bug #72498 variant_date_from_timestamp null dereference 2016-07-01 18:41:50 +02:00
Nikita Popov
1ac152938c Move semicolon into TSRMLS_CACHE_EXTERN/DEFINE
Also re bug #71575.
2016-03-03 16:50:01 +01:00
Lior Kaplan
ed35de784f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Happy new year (Update copyright to 2016)
2016-01-01 19:48:25 +02:00
Lior Kaplan
49493a2dcf Happy new year (Update copyright to 2016) 2016-01-01 19:21:47 +02:00
Xinchen Hui
4171a8f6c6 Internal function argumensts cleanup (strict_types) 2015-12-12 22:52:37 -08:00
Dmitry Stogov
ad4fa8f758 Fixed incorrect usage of HASH_OF() macro. Replaced HASH_OF() with more appropriate Z_ARRVAL_P() or Z_OBJPROP_P(). 2015-09-24 22:39:59 +03:00
Anatol Belski
4e66cce87c switch to the unified globals accessor where appropriate 2015-07-29 13:26:35 +02:00
Aaron Piotrowski
ed1b64877d Switch position of ce in exception ce variable names 2015-07-03 09:45:03 -05:00
Aaron Piotrowski
a812a74c2e Change zend_exception_get_default() to zend_exception_ce 2015-07-03 09:44:48 -05:00
Christoph M. Becker
36e2d26adb restricted test to English locale (fails otherwise) 2015-06-26 16:27:45 +02:00
Christoph M. Becker
3bd6bb6f50 fixed broken test (syntax error in SKIPIF section) 2015-06-26 15:57:28 +02:00
Kalle Sommer Nielsen
4b737793bc Add test for bug #69939 2015-06-26 15:35:16 +02:00
Kalle Sommer Nielsen
85bbfb191d Fixed bug #69939 (Casting object to bool returns false) 2015-06-26 15:30:03 +02:00
Dmitry Stogov
15a5f61cf4 Use fast method to check if first arguments should be passed by reference (not tested onbig endian). 2015-04-22 21:46:13 +03:00
Dmitry Stogov
1018f462d8 Patch improvement:
Removed the corresponding core code.
Fixed ext/com_dotnet and ext/date.
Refactored ext/intl changes.
Improved ext/fileinfo and ext/pdo changes.
Fixed tests.
2015-03-30 18:53:38 +03:00
Anatol Belski
ec89c85054 cleaning up the version macros 2015-03-23 20:13:59 +01:00
Anatol Belski
af3ca74501 made ZEND_TSRMLS_CACHE_* macros look like function calls
which also comply with the current semantics for such macros
2015-02-16 17:19:32 +01:00
Dmitry Stogov
3e31838d19 zend_read_property() has to provide a holder for return value.
Previously it was possible that zend_read_property() returned pointer to zval allocated on stack.
2015-01-22 11:50:42 +03:00
Xinchen Hui
fc33f52d8c bump year 2015-01-15 23:27:30 +08:00
Xinchen Hui
0579e8278d bump year 2015-01-15 23:26:37 +08:00
Stanislav Malyshev
b7a7b1a624 trailing whitespace removal 2015-01-10 15:07:38 -08:00
Nikita Popov
2d212b426a Drop duplicate arg from hash_get_current_key_ex 2014-12-26 21:06:18 +01:00
Anatol Belski
7b6ed8db2f almost all the replacements of TSRMLS_* are done
Some places have to be yet touched as they use different/custom
macros namings for the same. Also some places in the code became
redundant now, this is the next task. To name some: ext/mysqlnd,
sapi/embed, ext/curl and some smaller places here and there.
2014-12-14 14:22:42 +01:00
Anatol Belski
bdeb220f48 first shot remove TSRMLS_* things 2014-12-13 23:06:14 +01:00
Anatol Belski
4f3ac2cdbe Merge remote-tracking branch 'origin/master' into native-tls
* origin/master: (36 commits)
  NEWS
  adapt test for error message introduce in fix for #68463
  Fix bug #68463 listen.allowed_clients can silently result in no allowed access
  run a few request in this test
  fix test
  fix test
  added info about some other macro changes
  added note about toolset and phpize
  added note about the response files
  split msgfmt_format_intlcalendar_variant*.phpt for ICU 54.1
  split formatter_format*.phpt for ICP 54.1
  split dateformat_timezone_arg_variations*.phpt for ICU 54.1
  split dateformat_get_set_timezone_variant*.phpt for ICU 54.1
  fix icu version to test
  split ext/intl/tests/dateformat_get_set_calendar_variant*.phpt for 54.1
  split dateformat_formatObject_datetime_variant*.phpt for ICU 54.1
  split dateformat_formatObject_calendar_variant*.phpt for ICU 54.1
  split dateformat_create_cal_arg_variant2.phpt for ICU 53.1 and 54.1
  clone dateformat_calendars_variant3.phpt for ICU 54.1
  split collator_get_sort_key_variant3.phpt for icu 54.1
  ...
2014-11-20 15:20:18 +01:00
Veres Lajos
4b9535341a typo fixes - https://github.com/vlajos/misspell_fixer 2014-11-19 20:23:00 +00:00
Anatol Belski
c6bad96f30 Merge remote-tracking branch 'origin/master' into native-tls
* origin/master: (398 commits)
  NEWS
  add test for bug #68381
  Fixed bug #68381 Set FPM log level earlier during init
  proper dllexport
  move to size_t where zend_string is used internally
  fix some datatype mismatches
  return after the warning, to fix uninitialized salt usage
  fix datatype mismatches
  add missing type specifier
  fix datatype mismatches
  fix unsigned check
  "extern" shouldn't be used for definitions
  joined identical conditional blocks
  simplify fpm tests
  SEND_VAR_NO_REF optimization
  Add test for bug #68442
  Add various tests for FPM - covering recent bugs (68420, 68421, 68423, 68428) - for UDS - for ping and status URI - for multi pool and multi mode
  Include small MIT FastCGI client library from https://github.com/adoy/PHP-FastCGI-Client
  Get rid of zend_free_op structure (use zval* instead). Get rid of useless TSRMLS arguments.
  Add new FPM test for IPv4/IPv6
  ...

Conflicts:
	win32/build/config.w32
2014-11-18 21:18:52 +01:00
Anatol Belski
e5acd78f7a fix datatype mismatch 2014-11-13 19:57:32 +01:00
Anatol Belski
5f81cfe097 fix datatype mismatch and kick unused var 2014-11-13 19:57:30 +01:00
Anatol Belski
c865472ef0 fix datatype mismatches, remove dead part of code 2014-11-13 19:57:29 +01:00
Anatol Belski
efe9cc3a86 rework fix to php_com_do_invoke_byref,
fix crashing function with void arguments
2014-10-28 17:25:09 +01:00
Anatol Belski
05fa1b8ecc fix possible zero deref 2014-10-28 17:25:08 +01:00
Anatol Belski
e2951a191e fix error code upcast on x64 2014-10-28 17:25:06 +01:00
Anatol Belski
26e7e54e78 several fixes to com_dotnet for x64 2014-10-28 17:25:05 +01:00
Anatol Belski
3b6a9a3916 exclude the 32 bit only test 2014-10-28 17:25:04 +01:00
Anatol Belski
1493124e2b initialize the input arg lengths 2014-10-28 17:25:02 +01:00
Anatol Belski
41a505fc7f fix datatype mismatches 2014-10-28 17:25:00 +01:00
Anatol Belski
4fce2ae2c6 opcache, intl, gmp, exif, com, bcmath to use static tsrmls 2014-10-17 15:51:21 +02:00
Anatol Belski
c00424e427 bring back all the TSRMLS_FETCH() stuff
for better comparability with the mainstream
2014-10-15 09:37:55 +02:00
Anatol Belski
e1cd0e0a38 Merge remote-tracking branch 'origin/master' into native-tls
* origin/master: (40 commits)
  int to size_t where the underlaying API supports it
  use php_socket_t instead of int
  fix signed/unsigned mismatch warning
  fix compilation warning
  Improved specialisation $this variable accessed through IS_UNUSED operand must be IS_OBJECT, so we don't have to check for its type or perform dereference.
  Add notes about get_class_entry/get_class_name to UPGRADING
  Fix casts in GD
  Drop redundant casting code from ext/filter
  update NEWS
  update NEWS
  update NEWS
  update NEWS
  Added note to UPGRADING regarding 64-bit support in pack()/unpack()
  pack(): Use SIZEOF_ZEND_LONG instead of SIZEOF_LONG
  Add 64 bit formats to pack() and unpack()
  Help to CPU branch predictor
  Removed unused EG(orig_error_reporting)
  Update get_class_name semantics
  Remove Z_OBJ_CLASS_NAME_P
  Improved VM stack primitives for fast paths. Slow paths are not inlined anymore.
  ...
2014-10-10 22:51:13 +02:00
Nikita Popov
df79b9b27a Update get_class_name semantics
* get_class_name is now only used for displaying the class name
   in debugging functions like var_dump, print_r, etc. It is no
   longer used in get_class() etc.
 * As it is no longer used in get_parent_class() the parent
   argument is now gone. This also fixes incorrect parent classes
   being reported in COM.
 * get_class_name is now always required (previously some places
   made it optional and some required it) and is also required
   to return a non-NULL value.
 * Remove zend_get_object_classname. This also fixes a number of
   potential leaks due to incorrect usage of this function.
2014-10-09 20:48:27 +02:00
Nikita Popov
9903f16e5c Remove get_class_entry handlers in COM 2014-10-09 14:42:56 +02:00
Anatol Belski
ee4ae7fbc3 Merge remote-tracking branch 'origin/master' into native-tls
* origin/master:
  remove the remains of dsp files handling
  fix EX usage
  remove misprint parentheses
  remove misprint parentheses
  Replaced EG(This) and EX(object) with EX(This). Internal functions now recieves zend_execute_data as the first argument.
  And this one...
  It should be in extern c
  Remove useless condition
  NEWS entry for previous commit
  NEWS entry for previous commit
  add IPv6 support to php-fpm
  Micro optimization for the most frequency case
  Add hash to EXTENSIONS file
  Remove extensions which are long gone
  we also have xz release tarballs since 5.5
  Fix ZTS build
  improved file size computation in stat()
  Fixed incorrect compilation
  5.5.19 now
2014-10-03 20:30:49 +02:00
Anatol Belski
ea5f6eaf19 fix EX usage 2014-10-03 19:23:34 +02:00
Dmitry Stogov
bd9a234645 Replaced EG(This) and EX(object) with EX(This).
Internal functions now recieves zend_execute_data as the first argument.
2014-10-03 19:32:46 +04:00
Anatol Belski
c032299d4f cleanup TSRMLS_FETCH in com 2014-09-26 13:30:10 +02:00
Johannes Schlüter
d0cb715373 s/PHP 5/PHP 7/ 2014-09-19 18:33:14 +02:00
Dmitry Stogov
bccc653185 Avoid double IS_INTERNED() check 2014-09-19 17:32:50 +04:00
Anatol Belski
4c496a7f5b fix signature 2014-09-15 11:30:25 +02:00
Anatol Belski
481bf25b6a restore the length var and fix the com_dotnet ini 2014-09-01 20:34:33 +02:00
Anatol Belski
6db8d4f829 's' works with size_t round 3 2014-08-27 20:49:36 +02:00
Anatol Belski
257ed4061a 's' works with size_t round 2 2014-08-27 20:49:33 +02:00
Anatol Belski
3234480827 first show to make 's' work with size_t 2014-08-27 20:49:31 +02:00
Anatol Belski
b63ab83256 several signature and data type fixes 2014-08-26 13:20:21 +02:00
Anatol Belski
af59e92b24 master renames phase 7 2014-08-25 21:51:49 +02:00
Anatol Belski
4d997f63d9 master renames phase 3 2014-08-25 20:22:49 +02:00
Anatol Belski
c3e3c98ec6 master renames phase 1 2014-08-25 19:24:55 +02:00
Anatol Belski
4a85ec874a fix zpp 2014-08-21 20:31:32 +02:00
Anatol Belski
074172061e ported ext/com_dotnet 2014-08-19 22:23:03 +02:00
Anatol Belski
63d3f0b844 basic macro replacements, all at once 2014-08-19 08:07:31 +02:00
Dmitry Stogov
7497c8793d Merge branch 'master' into phpng
* master: (51 commits)
  Update Git rules
  Back to -dev (with EOL notice in NEWS)
  new NEWS block for the next release
  It's 2014 already, fix copyright year where user visible
  PHP 5.3.29
  Some changes were lost in the merge commit of #66091
  Updated NEWS for #66091
  Fixed #66091
  Updated NEWS for #66091
  Updated NEWS for #66091
  Fixed #66091
  updated NEWS
  updated NEWS
  updated NEWS
  backported the fix for bug #41577
  NEWS entry for e6d93a1 / d73d44c
  restore FPM compatibility with mod_fastcgi broken since #694 / 67541, fixes bug 67606
  Revert "Merge branch 'pull-request/694' into PHP-5.6"
  PHP 5.3.29RC1
  Fix missing type checks in various functions
  ...

Conflicts:
	ext/date/php_date.c
	ext/standard/math.c
2014-08-14 23:30:49 +04:00
Anatol Belski
f50c50a1f8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  updated NEWS
  updated NEWS
  backported the fix for bug #41577
2014-08-12 11:52:07 +02:00
Anatol Belski
934c35f586 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  backported the fix for bug #41577
2014-08-12 11:50:55 +02:00
Anatol Belski
daa1fb8ba6 backported the fix for bug #41577 2014-08-12 11:49:46 +02:00
Anatol Belski
b3860f4224 Merge branch 'pull-request/681' 2014-08-12 11:45:05 +02:00
Dmitry Stogov
3ae802508a Fixed mode 2014-08-11 18:38:36 +04:00