Commit Graph

43 Commits

Author SHA1 Message Date
Charles 1b82bf74fd Add template filename for the rest of the exception 2012-11-06 11:37:50 +07:00
Charles 5675140c9e Handle NULL filename 2012-11-06 11:16:51 +07:00
Charles 71f64bc83b Add template name to error message 2012-11-06 11:02:59 +07:00
Pierre Joye d398e557e3 - drop tsrm fetch, not necessary as it is passed as argument already 2012-10-08 15:15:38 +02:00
Anatoliy Belsky b013ede1fa fix windows build 2012-10-04 18:50:52 +02:00
Charles 9126dc649c Twig extension: fix case when accessing property of an array casted into object 2012-09-21 17:29:41 +07:00
Charles 34cf8e1c6e Fix double free 2012-09-21 16:42:13 +07:00
Charles 498090364b Enhancements for twig extension
- Fix extension memory leak
- Fix gcc compile warning (cast to const char *)
- Add TWIG_HAS_DYNAMIC_PROPERTY
- Remove the previous translation of 'array_key_exists($item, $object)'
  into TWIG_ARRAY_KEY_EXISTS when checking object property because what
  it really means is property_exists which has already been handled by
  TWIG_HAS_PROPERTY and TWIG_HAS_DYNAMIC_PROPERTY
- Fix native extension spacing
2012-09-21 14:47:45 +07:00
Charles 3485ee77ea Native extension: handle dynamic properties defined in the get_properties handler in a per instance fashion. 2012-09-20 18:29:21 +07:00
Fabien Potencier 11e91f63e9 merged branch arnaud-lb/792 (PR #814)
Commits
-------

8fa97bb php5.2 fix
d6fc86a [Tests] Test accessing a public property when \ArrayAccess is implemented
6704227 [ext] made ext consistent with 8ec73cf475
228d2b0 [ext] use only read_property handler

Discussion
----------

Alternative fix for 792

This fixes #792 as described in https://github.com/fabpot/Twig/issues/792#issuecomment-7482480

- 228d2b0 removes the *object-to-array convertion* trick, since the bug comes from there, and it doesn't appear to be needed
- 6704227 is the equivalent of aa6b835816 + 8ec73cf475 (this were not needed before because the bug was hidden by the object to array trick: numeric strings and integers are treated equally in arrays keys)

---------------------------------------------------------------------------

by stof at 2012-08-23T10:19:17Z

@arnaud-lb you need to fix the PHP 5.2 support
2012-08-23 14:18:58 +02:00
Arnaud Le Blanc 46ce33972f [ext] fixed php 5.2 ZTS builds
zend_hash_apply_with_arguments and its callback argument do not have a
TSRMLS in php 5.2.
2012-08-23 13:58:44 +02:00
Arnaud Le Blanc 8fa97bb526 php5.2 fix 2012-08-23 13:32:55 +02:00
Arnaud Le Blanc 6704227644 [ext] made ext consistent with 8ec73cf475 2012-08-23 11:54:31 +02:00
Arnaud Le Blanc 228d2b0351 [ext] use only read_property handler 2012-08-23 11:54:31 +02:00
Arnaud Le Blanc 3ca6654617 avoid crash when TWIG_GET_ARRAY_ELEMENT returns NULL
fixes #807
2012-08-20 20:28:22 +02:00
stealth35 9229ef334d Removed useless code 2012-06-27 17:57:06 +02:00
Fabien Potencier 4a0773a8ad fixed usage of Z_ADDREF_P for PHP 5.2 in the C extension 2012-03-22 14:25:00 +01:00
Fabien Potencier 741b11c618 fixed Twig C extension 2012-02-28 23:19:54 +01:00
Sergey Linnik 75bfb4e1a0 Syncing Twig extension with latest changes in Twig master 2012-01-15 01:15:28 +04:00
Fabien Potencier c95fe91fc8 replaced zend_error_noreturn calls to zend_error as zend_error_noreturn is not exported (closes #554) 2011-12-22 14:17:59 +01:00
Arnaud Le Blanc b26d69af38 removed bogus TSRMLS_CCs 2011-12-21 19:52:05 +01:00
Fabien Potencier b990868012 merged branch arnaud-lb/ext-crash2 (PR #560)
Commits
-------

9e6f285 fixed crash in twig_template_get_attributes when input is not an array or object

Discussion
----------

Fix crash in twig_template_get_attributes when input is not an array or object

This fixes a crash when the input of twig_template_get_attributes() is not an array or object, and strict mode is enabled.

---------------------------------------------------------------------------

by nikic at 2011/12/16 12:03:21 -0800

Could you maybe place the exception tests in a different method?

---------------------------------------------------------------------------

by arnaud-lb at 2011/12/16 12:13:35 -0800

This method already expects many of its inputs to cause an exception to be thrown (it tests getAttribute() in strict mode, and in many cases the attribute isn't defined). I don't see a real benefit from moving these tests in a separate method in this case.
2011-12-17 08:58:24 +01:00
Arnaud Le Blanc 9e6f285362 fixed crash in twig_template_get_attributes when input is not an array or object 2011-12-16 20:46:37 +01:00
Fabien Potencier 972a93f85d merged branch arnaud-lb/ext-crash (PR #558)
Commits
-------

c920344 code style
50da1a2 don't modify function name

Discussion
----------

Fix crash in extension

This fixes a crash caused by `php_strtolower()` modifying its input. (Crashes on amd64, but not on x86 for me.)
2011-12-11 16:53:52 +01:00
Arnaud Le Blanc c9203442c5 code style 2011-12-10 14:49:52 +01:00
Arnaud Le Blanc 50da1a2881 don't modify function name 2011-12-10 14:48:20 +01:00
Fabien Potencier b496a2324c added Twig C extension version in phpinfo 2011-12-07 12:18:20 +01:00
Fabien Potencier 460ba4d6c7 bumped version to 1.5.0-DEV 2011-12-07 08:11:23 +01:00
Fabien Potencier 0b7d6dfa0c prepared the 1.4.0 release 2011-12-07 08:09:57 +01:00
Arnaud Le Blanc 569f782ad0 fix ZTS build 2011-11-23 14:01:51 +01:00
Arnaud Le Blanc 1606910a9a Fix undefined behavior
The callbacks are expected to return an integer, and returning void
instead was triggering weird bugs

I've also removed the casts to ensure that the signatures are compatible
2011-11-23 13:47:55 +01:00
Arnaud Le Blanc 0ce8d3c986 Convert item argument to string
This fixes a crash in some cases and repeated conversions
2011-11-23 13:47:48 +01:00
Arnaud Le Blanc d807981bc6 don't try to access non public property or method 2011-11-23 13:38:48 +01:00
Fabien Potencier bae4246356 updated Twig ext version 2011-11-23 12:19:09 +01:00
Fabien Potencier 7cfb0ecbb8 merged branch arjenjb/master (PR #528)
Commits
-------

c65be3e Pass around the TSRM
09d3095 Moved zval declaration
c941552 Removed globals
ffb2460 Added config.w32 for windows builds

Discussion
----------

Fixed compilation on windows
2011-11-23 12:16:47 +01:00
Arjen Brouwer c65be3e17b Pass around the TSRM 2011-11-22 00:17:40 +01:00
Arjen Brouwer 09d3095b66 Moved zval declaration 2011-11-21 23:57:44 +01:00
Arjen Brouwer c9415522a9 Removed globals 2011-11-21 23:56:11 +01:00
Derick Rethans c4a7d1983d Merge branch 'master' of github.com:derickr/twig-ext
Conflicts:
	ext/twig/twig.c
2011-11-21 11:09:34 +00:00
Derick Rethans 7d37d66317 Make the extension ZTS-proof. 2011-11-21 11:08:17 +00:00
Derick Rethans 229c07c6a6 Added another workaround for PHP 5.4 support. 2011-11-20 21:41:07 +00:00
Derick Rethans f7f8346d37 Switch LICENSE to Revised BSD. 2011-11-20 21:26:21 +00:00
Derick Rethans 16ca05529c Move files into ext/twig. 2011-11-20 21:25:05 +00:00