diff options
Diffstat (limited to 'luasandbox_compat.h')
-rw-r--r-- | luasandbox_compat.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/luasandbox_compat.h b/luasandbox_compat.h new file mode 100644 index 0000000..b0a13c2 --- /dev/null +++ b/luasandbox_compat.h @@ -0,0 +1,36 @@ +// Macros to hide the differences between PHP versions +// Implementation details, include only from .c files +#ifndef LUASANDBOX_COMPAT_H +#define LUASANDBOX_COMPAT_H + +#if PHP_VERSION_ID < 80000 + + #define luasandbox_update_property(scope, object, name, name_length, value) \ + zend_update_property(scope, object, name, name_length, value) + + #define luasandbox_update_property_string(scope, object, name, name_length, value) \ + zend_update_property_string(scope, object, name, name_length, value) + + #define luasandbox_update_property_long(scope, object, name, name_length, value) \ + zend_update_property_long(scope, object, name, name_length, value) + + #define luasandbox_read_property(scope, object, name, name_length, silent, rv) \ + zend_read_property(scope, object, name, name_length, silent, rv) + +#else + + #define luasandbox_update_property(scope, object, name, name_length, value) \ + zend_update_property(scope, Z_OBJ_P(object), name, name_length, value) + + #define luasandbox_update_property_string(scope, object, name, name_length, value) \ + zend_update_property_string(scope, Z_OBJ_P(object), name, name_length, value) + + #define luasandbox_update_property_long(scope, object, name, name_length, value) \ + zend_update_property_long(scope, Z_OBJ_P(object), name, name_length, value) + + #define luasandbox_read_property(scope, object, name, name_length, silent, rv) \ + zend_read_property(scope, Z_OBJ_P(object), name, name_length, silent, rv) + +#endif + +#endif // LUASANDBOX_COMPAT_H |