X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=php_psi.h;h=01582c58cc33c78ad73ced60a76d6a0fa0de6b11;hp=160970003677ee7b89bfe3e0ff74f3d63f9c0d29;hb=a7ac1c0a3c855321f21682c127a4b707de33a303;hpb=9bcb1df0786a8193d65949c857baaba2f4296e84 diff --git a/php_psi.h b/php_psi.h index 1609700..01582c5 100644 --- a/php_psi.h +++ b/php_psi.h @@ -26,6 +26,8 @@ #ifndef PHP_PSI_H #define PHP_PSI_H +#include "php.h" + extern zend_module_entry psi_module_entry; #define phpext_psi_ptr &psi_module_entry @@ -45,7 +47,7 @@ extern zend_module_entry psi_module_entry; static inline int psi_check_env(const char *var) { char *set = getenv(var); - return (set && *set && '0' != *set); + return (set && *set && (*set != '0' || set[1])); } typedef struct psi_object { @@ -59,6 +61,9 @@ static inline psi_object *PSI_OBJ(zval *zv, zend_object *zo) { if (zv) { zo = Z_OBJ_P(zv); } + if (!zo) { + return NULL; + } return (void *) (((char *) zo) - zo->handlers->offset); } @@ -69,7 +74,13 @@ PHP_PSI_API zend_class_entry *psi_object_get_class_entry(); ZEND_BEGIN_MODULE_GLOBALS(psi) char *engine; char *directory; + char *search_path; + struct psi_context_ops *ops; struct psi_context *context; + struct { + struct psi_plist *decls; + struct psi_plist *vars; + } blacklist; ZEND_END_MODULE_GLOBALS(psi); ZEND_EXTERN_MODULE_GLOBALS(psi);