All pastes #304563 Raw Copy code Copy link Edit

Miscellany

public text v1 · immutable
#304563 ·published 2007-01-04 13:03 UTC
rendered paste body
--- assert.c.old	2007-01-04 10:18:44.031250000 +0000
+++ assert.c	2007-01-04 12:42:06.671875000 +0000
@@ -114,6 +114,17 @@
 	return SUCCESS;
 }
 
+PHP_RINIT_FUNCTION(assert)
+{
+	if (ASSERTG(cb)) {
+		MAKE_STD_ZVAL(ASSERTG(callback));
+		ZVAL_STRING(ASSERTG(callback), ASSERTG(cb), 1);
+	}
+
+   return SUCCESS;
+}
+
+
 PHP_RSHUTDOWN_FUNCTION(assert)
 {
 	if (ASSERTG(callback)) { 
@@ -187,11 +198,6 @@
 		RETURN_TRUE;
 	}
 
-	if (!ASSERTG(callback) && ASSERTG(cb)) {
-		MAKE_STD_ZVAL(ASSERTG(callback));
-		ZVAL_STRING(ASSERTG(callback), ASSERTG(cb), 1);
-	}
-
 	if (ASSERTG(callback)) {
 		zval *args[3];
 		zval *retval;
@@ -286,6 +292,11 @@
 		break;
 
 	case ASSERT_CALLBACK:
+		if (ASSERTG(callback) != NULL) {
+			RETVAL_ZVAL(ASSERTG(callback), 1, 0);
+		} else {
+			RETVAL_NULL();
+		}
 		if (ac == 2) {
 			if (ASSERTG(callback)) {
 				zval_ptr_dtor(&ASSERTG(callback));
@@ -293,7 +304,7 @@
 			ASSERTG(callback) = *value;
 			zval_add_ref(value);
 		}
-		RETURN_TRUE;
+		return;
 		break;
 
 	default: