Stefan Siegl
745126b5cb
remove left-over TSRM stuff
2017-03-11 13:45:23 +01:00
Stefan Siegl
3e8ef5f684
remove V8JS_TSRMLS_FETCH
2017-03-11 13:43:30 +01:00
Stefan Siegl
24bb1761bf
remove TSRMLS_DC, TSRMLS_CC
2017-03-11 13:35:21 +01:00
Stefan Siegl
288fe4d2a0
PHP Version 5 -> 7
2017-03-11 12:33:49 +01:00
Stefan Siegl
3761657335
update copyright years of changed files
2017-03-11 10:17:10 +01:00
Stefan Siegl
e5f57b7661
move #undef min/max to v8js_v8.h
2017-03-10 22:51:15 +01:00
Stefan Siegl
cd28b5c320
v8js_class: add size checks + precission down casts
2017-03-10 22:51:15 +01:00
Stefan Siegl
8625f70e2e
Merge pull request #255 from TysonAndre/use-non-zend_string-v2
...
Use an non-interned zend_string for registerExtension on ZTS
2016-08-13 11:46:45 +02:00
Tyson Andre
efad52d739
Use an non-interned zend_string for registerExtension on ZTS
...
(There are no interned strings in ZTS, see the definition of
zend_new_interned_string_int)
On NTS, strings must be non-interned in order to last until module shutdown.
interned strings are cleaned up before module shutdown.
2016-08-12 15:38:47 -07:00
Stefan Siegl
880b17a45c
Merge pull request #243 from stesie/code-cleanup
...
fix compiler warnings
2016-08-12 15:41:27 +02:00
Stefan Siegl
5ae48bbda7
Fix refcounting, use zval_ptr_dtor, closes #250
2016-08-12 01:02:56 +02:00
Stefan Siegl
157f34521e
fix compiler warnings
2016-07-03 22:32:03 +02:00
Stefan Siegl
c459acd1ef
Merge remote-tracking branch 'origin/master' into php7
2016-07-02 22:59:33 +02:00
Stefan Siegl
3278be8bee
Add 'indent-tabs-mode: t' to file variables
2016-07-02 22:48:45 +02:00
Stefan Siegl
2e5a565237
Remove (meanwhile) unreferenced local variables
2016-05-26 21:53:17 +02:00
Stefan Siegl
d75ec1deeb
add parens around binary and expression
2016-05-26 21:37:12 +02:00
Stefan Siegl
a3161f6d9d
fix arginfo_v8js_wakeup assignment
2016-05-26 21:36:54 +02:00
Stefan Siegl
e9e90bac65
Merge remote-tracking branch 'origin/master' into php7
...
Conflicts:
config.w32
package.xml
php_v8js_macros.h
v8js.cc
v8js_array_access.cc
v8js_class.cc
v8js_convert.cc
v8js_exceptions.cc
v8js_object_export.cc
v8js_timer.cc
v8js_v8.cc
v8js_v8object_class.cc
2016-05-22 22:30:19 +02:00
Stefan Siegl
05b96a96b8
Use internal fields instead of GetHiddenValue/SetHiddenValue
...
The latter were deprecated and removed in V8 5.2
2016-05-22 15:20:52 +02:00
Stefan Siegl
d4d8ccc4f6
Fix #ifdef change, don't call SetArrayBufferAllocator
2016-05-22 15:20:05 +02:00
Stefan Siegl
4fea8f4fb9
Require V8 4.6.76 or higher
...
... and hence remove all #ifdef hell. Those versions didn't have
security support by Google anyhow, and it helps to drastically
shrink the test matrix.
2016-05-11 16:50:37 +02:00
Stefan Siegl
c804b16e4c
fix compiler warnings
2016-03-26 12:11:11 +01:00
Stefan Siegl
12903ca269
add V8Js::setAverageObjectSize method
2016-03-08 09:28:16 +01:00
Stefan Siegl
25cf46aa0c
Use zend_string with zend_parse_parameters
2016-03-05 22:43:57 +01:00
Stefan Siegl
bf6effba63
Merge remote-tracking branch 'origin/master' into php7
2016-03-05 22:21:42 +01:00
Stefan Siegl
930b450d99
refcount on snapshot_blob zval
2016-03-05 17:12:36 +01:00
Stefan Siegl
8e3e0c91b5
Add ZEND_ARG_INFO for V8Js::__construct 5th arg: snapshot_blob
2016-03-05 17:12:36 +01:00
Stefan Siegl
d0e78019aa
Allow snapshot creation & use with V8 > 4.3.7
...
This does *not* seem to depend on whether V8 itself was compiled
with support for snapshots or not.
Therefore use PHP_V8_USE_EXTERNAL_STARTUP_DATA only to mark
whether we need to provide external snapshot data to V8.
2016-03-05 17:12:36 +01:00
Stefan Siegl
a1cdd7537b
Fix conditional compilation for snapshot=off
2016-02-28 20:29:53 +01:00
Stefan Siegl
2c8ef2aa66
conditionally compile in snapshot functionality
2016-02-28 17:54:00 +01:00
Stefan Siegl
b405a34690
Allow to create snapshots and re-use them
2016-02-28 17:00:47 +01:00
Stefan Siegl
d438624a3d
Don't export V8Js methods even if overwritten
2016-01-09 19:11:30 +01:00
Stefan Siegl
1e86e2c9f7
Don't export methods of V8Js object to V8
2016-01-09 19:02:58 +01:00
Stefan Siegl
3508f0c8e7
export public methods of classes derived from \V8Js, closes #183
2016-01-08 15:42:43 +01:00
Stefan Siegl
98205461be
Reorder includes for Visual Studio 2015, closes #194
...
C++ headers need to go first, since PHP headers redefine
"inline" which causes trouble with the C++ header files.
2016-01-06 09:01:35 +00:00
Stefan Siegl
a83c49266e
defer bailout until std::function dtor
...
std::function allocates some heap memory, at least with some
implementations and expects the dtor to run. Hence defer the
bailout until the dtor ran.
2016-01-01 19:10:04 +01:00
Stefan Siegl
8de27fd2ce
free v8::Persistent<v8::Script> on bailout
2016-01-01 00:01:49 +01:00
Stefan Siegl
362eb0b806
Merge pull request #190 from stesie/warn-only-on-v8-errors
...
Don't abort PHP on fatal V8 errors, just warn about it
2015-12-31 21:42:00 +01:00
Stefan Siegl
2d34adb91f
Merge remote-tracking branch 'origin/master'
...
This primarily ports features introduced with V8Js 0.4.0
to the PHP7 branch.
2015-12-31 20:25:24 +01:00
Stefan Siegl
de23e8dba4
Don't abort PHP on fatal V8 errors, just warn about it
...
This way the PHP script can handle V8 errors gracefully
(and e.g. provide feedback to the user).
This especially changes behaviour when circular extension
dependencies happen (PHP code can go on, just V8 fails
to start). This also fixes memory leaks of V8 and V8Js
itself caused by bailing out directly otherwise.
2015-12-30 17:53:46 +01:00
Stefan Siegl
67a9de01bd
Allow custom module normalisation
2015-12-06 13:55:13 +01:00
Stefan Siegl
3085db6aeb
Merge remote-tracking branch 'origin/master' into php7
2015-10-11 19:51:59 +02:00
Stefan Siegl
b38c31b521
Remove v8::Debug agent stuff
...
Debug Agent support was removed from V8 with 3.28 line which
is pretty old meanwhile.
2015-10-11 19:47:22 +02:00
Stefan Siegl
5cba44ccd0
Merge remote-tracking branch 'origin/master' into php7
...
Conflicts:
README.md
v8js.cc
v8js_class.cc
v8js_exceptions.cc
v8js_object_export.cc
v8js_v8.cc
v8js_v8object_class.cc
2015-10-11 02:09:59 +02:00
Stefan Siegl
9827224471
Don't pass cache_slot to standard handlers
...
With the cache_slot being filled by the write-handler passing
on the cache_slot, succeeding write calls are not passed on to
our write but handled directly by the executor instead
(in zend_assign_to_object)
2015-10-05 21:41:48 +02:00
Stefan Siegl
b8726409f4
Throw V8JsException if v8 context cannot be created
...
We used to reset This to NULL, which never reallt was supposed to work
and PHP doc explicitly tell to not touch EX(This)
2015-10-03 00:01:12 +02:00
Stefan Siegl
0a93aa2306
Fix object name setting
2015-10-02 22:29:54 +02:00
Stefan Siegl
c6136ec3d2
Fix globals ptr passing wrt. timer thread
2015-09-28 22:03:24 +02:00
Stefan Siegl
74440ed9f7
Move V8JSG extensions and v8_flags to process globals
2015-09-26 21:39:26 +02:00
Stefan Siegl
83f51e5021
Merge pull request #156 from stesie/php-exception-behaviour
...
PHP->JS exception propagation
2015-09-23 19:40:23 +02:00