- (declare|update)_property_bool is also missing
authorMichael Wallner <mike@php.net>
Fri, 22 Jul 2005 09:26:11 +0000 (09:26 +0000)
committerMichael Wallner <mike@php.net>
Fri, 22 Jul 2005 09:26:11 +0000 (09:26 +0000)
missing.c
missing.h

index 98354deb8dd68cfa11043cebc463b483f351b2c0..7f9fcd8771b71b58eeea9058e8585cef148838d4 100644 (file)
--- a/missing.c
+++ b/missing.c
@@ -44,6 +44,31 @@ void zend_update_property_double(zend_class_entry *scope, zval *object, char *na
        zend_update_property(scope, object, name, name_length, tmp TSRMLS_CC);
 }
 
+int zend_declare_property_bool(zend_class_entry *ce, char *name, int name_length, long value, int access_type TSRMLS_DC)
+{
+       zval *property;
+
+       if (ce->type & ZEND_INTERNAL_CLASS) {
+               property = malloc(sizeof(zval));
+       } else {
+               ALLOC_ZVAL(property);
+       }
+       INIT_PZVAL(property);
+       ZVAL_BOOL(property, value);
+       return zend_declare_property(ce, name, name_length, property, access_type TSRMLS_CC);
+}
+
+void zend_update_property_bool(zend_class_entry *scope, zval *object, char *name, int name_length, long value TSRMLS_DC)
+{
+       zval *tmp;
+
+       ALLOC_ZVAL(tmp);
+       tmp->is_ref = 0;
+       tmp->refcount = 0;
+       ZVAL_BOOL(tmp, value);
+       zend_update_property(scope, object, name, name_length, tmp TSRMLS_CC);
+}
+
 #endif
 
 /*
index cfe3d2e0a26e2f7b66a868458b53a8cd7a5b709d..215cbf32880d6eea1a5954f35365ee87559ad9f3 100644 (file)
--- a/missing.h
+++ b/missing.h
@@ -23,6 +23,9 @@
 #if (PHP_MAJOR_VERSION == 5) && (PHP_MINOR_VERSION == 0)
 extern int zend_declare_property_double(zend_class_entry *ce, char *name, int name_length, double value, int access_type TSRMLS_DC);
 extern void zend_update_property_double(zend_class_entry *scope, zval *object, char *name, int name_length, double value TSRMLS_DC);
+
+extern int zend_declare_property_bool(zend_class_entry *ce, char *name, int name_length, long value, int access_type TSRMLS_DC);
+extern void zend_update_property_bool(zend_class_entry *scope, zval *object, char *name, int name_length, long value TSRMLS_DC);
 #endif
 
 #endif