Commit Graph

682 Commits

Author SHA1 Message Date
Nikita Popov
122d759618 Always throw TypeException on throwing zpp failures
Introduces a ZEND_PARSE_PARAMS_THROW flag for zpp, which forces to
report FAILURE errors using a TypeException instead of a Warning,
like it would happen in strict mode.

Adds a zend_parse_parameters_throw() convenience function, which
invokes zpp with this flag.

Converts all cases I could identify, where we currently have
throwing zpp usage in constructors and replaces them with this API.
Error handling is still replaced to EH_THROW in some cases to handle
other, domain-specific errors in constructors.
2015-04-06 11:27:34 +02:00
Stanislav Malyshev
4975019dd7 Merge branch 'PHP-5.6'
* PHP-5.6:
  Revert "Merge branch 'PHP-5.5' into PHP-5.6"

Conflicts:
	ext/date/php_date.c
	ext/date/tests/DateTime_verify.phpt
2015-04-01 12:50:40 -07:00
Stanislav Malyshev
2d9399af35 Revert "Merge branch 'PHP-5.5' into PHP-5.6"
This reverts commit aa22e80b1a, reversing
changes made to 3e7f47cb03.

Conflicts:
	ext/date/php_date.c
2015-04-01 12:49:25 -07:00
Derick Rethans
d252c9f832 Merge branch 'PHP-5.6'
Conflicts:
	ext/date/lib/parse_date.c
	ext/date/php_date.c
2015-03-31 16:36:51 +01:00
Derick Rethans
2d3868984c Merge branch 'PHP-5.5' into PHP-5.6 2015-03-31 16:35:10 +01:00
Derick Rethans
ffbd380e44 Fixed bug #69336 (Issues with "last day of <monthname>"). 2015-03-31 16:35:03 +01:00
Stanislav Malyshev
cc2fd00942 Merge branch 'pull-request/1145'
* pull-request/1145:
  Putting whitespace back to the way it was.
  Updating the `DateTime_verify` test to include the new method in the reflected method list
  Whoops! String length....
  Adding a new test for the new method
  Adding a new `createFromImmutable` method to the `DateTime` class to mirror the current `DateTime::createFromMutable()`
2015-03-22 21:04:41 -07:00
Stanislav Malyshev
aa22e80b1a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Adding a new `createFromImmutable` method to the `DateTime` class to mirror the current `DateTime::createFromMutable()`
2015-03-22 21:03:46 -07:00
Trevor Suarez
c2e22556ba Adding a new createFromImmutable method to the DateTime class to mirror the current DateTime::createFromMutable() 2015-03-22 20:54:25 -07:00
Anatol Belski
92d106d26d fixed test 2015-03-13 17:33:48 +01:00
Dmitry Stogov
a30d328671 Errors converted to exceptions are not "recoverable" anymore. 2015-03-10 10:31:55 +03:00
Dmitry Stogov
1c94ff0595 Implement engine exceptions
RFC: https://wiki.php.net/rfc/engine_exceptions_for_php7

Pending changes regarding naming of BaseException and whether it
should be an interface.
2015-03-09 14:01:32 +01:00
Trevor Suarez
1de1b6f927 Updating the DateTime_verify test to include the
new method in the reflected method list
2015-03-05 09:50:32 -05:00
Trevor Suarez
d3863aeaf7 Whoops! String length.... 2015-03-05 02:57:14 -05:00
Trevor Suarez
46f22acdcd Adding a new test for the new method 2015-03-05 02:02:50 -05:00
Bob Weinand
b22caa81ee Remove useless date warning 2015-02-27 23:27:09 +01:00
Anatol Belski
5aec067b34 fix dir separator in tests 2015-02-27 16:48:09 +01:00
Mariano Iglesias
d20da1d92e Renaming test to match Bug #69089 2015-02-20 14:17:11 -03:00
Mariano Iglesias
e6819794eb Adding 'v' formatting to DateTime::format(), and adding constant DateTime::RFC3339_EXTENDED to output datetime using the RFC3339 extended format (aka ISO8601 extended format) 2015-02-20 09:21:14 -03:00
Stanislav Malyshev
625ab10f99 Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone) 2015-02-17 07:02:20 +01:00
Stanislav Malyshev
78389b29f9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  Port for for bug #68552
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  - BFN
2015-02-17 06:57:50 +01:00
Stanislav Malyshev
29a4e710de Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone) 2015-02-17 06:53:27 +01:00
Julien Pauli
583af4979b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Revert "Fixed bug #55407 (Impossible to prototype DateTime::createFromFormat)"
2015-02-04 17:39:34 +01:00
Julien Pauli
f51b73c833 Revert "Fixed bug #55407 (Impossible to prototype DateTime::createFromFormat)"
This reverts commit 8e19705a93.
2015-02-04 17:39:16 +01:00
Derick Rethans
a3a529411e Merge branch 'PHP-5.6' 2015-01-20 21:44:36 +00:00
Derick Rethans
1d09926e33 Merge branch 'PHP-5.5' into PHP-5.6 2015-01-20 21:44:25 +00:00
Derick Rethans
8e19705a93 Fixed bug #55407 (Impossible to prototype DateTime::createFromFormat) 2015-01-20 21:44:19 +00:00
Derick Rethans
1ee7845f57 Merge branch 'PHP-5.6' 2015-01-19 22:59:41 +00:00
Derick Rethans
6f2f2ce5cf Merge branch 'PHP-5.5' into PHP-5.6 2015-01-19 22:59:31 +00:00
Derick Rethans
b0159431e3 Fixed bug #45081 (strtotime incorrectly interprets SGT time zone). 2015-01-19 22:59:24 +00:00
Nikita Popov
9c5eaac18b Remove mktime() and gmmktime() $is_dst parameter 2015-01-17 18:26:45 +01:00
Sara Golemon
365f428d46 Allow the third arg to DateTime(Immutable)::createFromFormat() to be null.
Permit the same meaning as not passing the arg at all.
2014-12-30 13:58:59 -08:00
Andrea Faulds
e5eb9530ab Use "float" and "integer" in typehint and zpp errors 2014-12-21 13:23:02 +00:00
Andrea Faulds
0ea0b591d7 Merge branch 'zppFailOnOverflow'
* zppFailOnOverflow:
  Fix MySQLi tests
  Fixed gd test
  Refactor ZEND_LONG_MAX/MIN checks into ZEND_DOUBLE_FITS_LONG()
  Fixed copy-and-paste error
  Fix more 32-bit tests
  Skip buncha tests on 32-bit
  skip simplexml
  skip posix 32-bit
  skip tests on 32-bit
  Fixes simplexml test
  Fixes posix tests
  Fixes iconv tests
  Marked tests as 32-bit
  Fixed more 32-bit tests
  Fixed some 32-bit tests
  Mark said ext/date tests as 32-bit only
  Fixed ext/date tests broken by zpp error on overflow
  Fixed broken tests
  Make zpp fail if NaN passed for int, or out-of-range float for non-capping int

Conflicts:
	ext/date/tests/getdate_variation7.phpt
	ext/date/tests/localtime_variation3.phpt
2014-12-13 18:38:15 +00:00
Derick Rethans
eb6fb71e55 Merge branch 'PHP-5.6' 2014-12-08 11:07:00 +00:00
Derick Rethans
9d4f4483cb Merge branch 'PHP-5.5' into PHP-5.6 2014-12-08 11:06:50 +00:00
Derick Rethans
5f9a68d3ef Fixed day_of_week function as it could sometimes return negative values internally. 2014-12-08 11:06:12 +00:00
m.bennewitz
4675b79e65 Conflicts:
ext/date/php_date.c
2014-11-30 20:49:18 -08:00
Stanislav Malyshev
9924a08558 Merge branch 'pull-request/878'
* pull-request/878:
  #68268: DatePeriod: Getter for start date, end date and interval
2014-11-30 20:37:37 -08:00
Andrea Faulds
01554bf3e4 Merge branch 'master' into zppFailOnOverflow 2014-11-29 01:45:54 +00:00
Stanislav Malyshev
f782d6710d Merge branch 'PHP-5.6'
* PHP-5.6:
  test to function addcslashes
  test
  Test PHP Init Fail Without Params
  Add my information to this test
  Add a test for the exception cases of readline_read_history
  added some tests to datetime and dateinterval functions
  added various tests for XSLTProcessor and one test for iconv extension
  teste basico da funcao timezone_version_get
2014-11-23 17:26:35 -08:00
Stanislav Malyshev
a8dfb33db8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add my information to this test
  Add a test for the exception cases of readline_read_history
  added some tests to datetime and dateinterval functions
  added various tests for XSLTProcessor and one test for iconv extension
  teste basico da funcao timezone_version_get
2014-11-23 17:26:28 -08:00
Stanislav Malyshev
1330491994 Merge branch 'pull-request/854' into PHP-5.5
* pull-request/854:
  teste basico da funcao timezone_version_get
2014-11-23 17:23:34 -08:00
Stanislav Malyshev
9d7206dcea Merge branch 'pull-request/855' into PHP-5.5
* pull-request/855:
  added some tests to datetime and dateinterval functions
  added various tests for XSLTProcessor and one test for iconv extension
2014-11-23 17:22:54 -08:00
Veres Lajos
06fdf359e3 typo fixes - https://github.com/vlajos/misspell_fixer 2014-11-23 14:52:47 -08:00
Veres Lajos
4dc994571d typo fixes - https://github.com/vlajos/misspell_fixer
Conflicts:
	ext/ftp/ftp.h
	ext/pcre/pcrelib/pcre_printint.c
	ext/pcre/pcrelib/sljit/sljitLir.c
	ext/pcre/pcrelib/sljit/sljitLir.h
	ext/pcre/pcrelib/sljit/sljitNativeARM_32.c
	ext/pcre/pcrelib/sljit/sljitNativeTILEGX_64.c
	ext/pgsql/pgsql.c
	ext/phar/func_interceptors.c
	ext/soap/soap.c
	ext/standard/image.c
2014-11-23 14:33:43 -08:00
Andrea Faulds
71566b994f Merge branch 'master' into zppFailOnOverflow 2014-11-01 22:49:53 +00:00
m.bennewitz
846a72a73a #68268: DatePeriod: Getter for start date, end date and interval 2014-10-20 08:27:56 +00:00
Tjerk Meesters
82523c0752 Merge branch 'pr/647'
* pr/647: (33 commits)
  zend_uint -> uint32_t
  Fix nesting for *non*-compile-time-resolveable functions See a1a4ba9511 (commitcomment-7414223)
  Add tests for calls to nested, *non*-compile-time-resolveable functions See a1a4ba9511 (commitcomment-7414362)
  Make list of opcodes used for nesting calculation consistent   with `zend_do_convert_call_user_func()` in Zend/zend_compile.c
  Rewrite code to use ZEND_VM_JMP() instead of repeated ZEND_VM_INC_OPCODE() calls
  QA: Simplify code to find matching ZEND_DO_FCALL_BY_NAME CG(context).nested_calls is stored inside the initializer's result.num and inside the finalizer's op2.num, by comparing these we don't need to count manually, and are thus safer from future expansion with specialized opcodes e.g.
  Fix expected fatal error, now is catchable fatal
  Adjust expected fatal error message Now also includes "on [TYPE]" after merge from master
  Check for memory leaks when not using return value
  Adjust expected fatal error message Now also includes "on [TYPE]" after merge from master
  Add tests with arrays as parameters
  Handle ZEND_NEW nesting
  Also verify nesting with dynamically called static methods
  Handle ZEND_INIT_NS_FCALL_BY_NAME nesting
  QA: Refactor: Split tests a bit to make them more comprehendable
  Support nested static calls
  Handle ZEND_EXT_FCALL_END, skipping if necessary Verified with running tests with new "-e" run-tests arg: $ make test TESTS=Zend/tests/*-on-non-objects-*phpt TEST_PHP_ARGS=-e # Tests passed    :   11 (100.0%)
  Add support for PHP's 'extended information for debugger/profiler' mode
  Verify non-CV-operands also work See discussion https://github.com/php/php-src/pull/647#issuecomment-48050551
  Only allocate NULL return value if it's actually used
  ...

Conflicts:
	ext/date/tests/bug67118.phpt
2014-10-06 05:52:43 +08:00
Florian MARGAINE
9680829389 DateTimeZone::getOffset() now accepts a DateTimeInterface
Fixes #68062

Should be backported to PHP-5.6 and PHP-5.5.

Conflicts:
	ext/date/tests/bug67118.phpt
2014-10-04 16:06:04 +01:00