summaryrefslogtreecommitdiff
path: root/src/sp_execute.c
diff options
context:
space:
mode:
authorjvoisin2018-08-09 16:28:15 +0200
committerjvoisin2018-08-09 16:28:15 +0200
commit568fc607acea0290179ea0680e1185642cd467ca (patch)
treef0bd7ee3812f18397ff0cb616fcacae0f6079031 /src/sp_execute.c
parente5d1375bae4fa16f1e92aaece70edf16a3d09959 (diff)
Fix yet an other hang/crash
There are valid reasons for `orig_zend_execute_internal` to be `NULL`, we we're not checking if it is, well, `NULL`.
Diffstat (limited to 'src/sp_execute.c')
-rw-r--r--src/sp_execute.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/sp_execute.c b/src/sp_execute.c
index 1f9226c..4b7d6d0 100644
--- a/src/sp_execute.c
+++ b/src/sp_execute.c
@@ -271,19 +271,15 @@ end:
271int hook_execute(void) { 271int hook_execute(void) {
272 TSRMLS_FETCH(); 272 TSRMLS_FETCH();
273 273
274 if (NULL == orig_execute_ex) { 274 if (NULL == orig_execute_ex && NULL == orig_zend_stream_open) {
275 /* zend_execute_ex is used for "user" function calls */ 275 /* zend_execute_ex is used for "user" function calls */
276 orig_execute_ex = zend_execute_ex; 276 orig_execute_ex = zend_execute_ex;
277 zend_execute_ex = sp_execute_ex; 277 zend_execute_ex = sp_execute_ex;
278 }
279 278
280 if (NULL == orig_zend_execute_internal) {
281 /* zend_execute_internal is used for "builtin" functions calls */ 279 /* zend_execute_internal is used for "builtin" functions calls */
282 orig_zend_execute_internal = zend_execute_internal; 280 orig_zend_execute_internal = zend_execute_internal;
283 zend_execute_internal = sp_zend_execute_internal; 281 zend_execute_internal = sp_zend_execute_internal;
284 }
285 282
286 if (NULL == orig_zend_stream_open) {
287 /* zend_stream_open_function is used for include-related stuff */ 283 /* zend_stream_open_function is used for include-related stuff */
288 orig_zend_stream_open = zend_stream_open_function; 284 orig_zend_stream_open = zend_stream_open_function;
289 zend_stream_open_function = sp_stream_open; 285 zend_stream_open_function = sp_stream_open;