]> granicus.if.org Git - php/commitdiff
Revert define() fix, it needs further review
authorIlia Alshanetsky <iliaa@php.net>
Wed, 22 Oct 2008 23:28:34 +0000 (23:28 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Wed, 22 Oct 2008 23:28:34 +0000 (23:28 +0000)
Zend/zend_builtin_functions.c

index b9c42b4787a84159526443fefa462f3308bbc371..0e3dba84188a51c45630f8a3d95ddce025576fc6 100644 (file)
@@ -26,7 +26,6 @@
 #include "zend_ini.h"
 #include "zend_exceptions.h"
 #include "zend_extensions.h"
-#include <ctype.h>
 
 #undef ZEND_TEST_EXCEPTIONS
 
@@ -718,7 +717,7 @@ ZEND_FUNCTION(error_reporting)
    Define a new constant */
 ZEND_FUNCTION(define)
 {
-       char *name, *p;
+       char *name;
        int name_len;
        zval *val;
        zval *val_free = NULL;
@@ -730,40 +729,6 @@ ZEND_FUNCTION(define)
                return;
        }
 
-       /* check if class constant */
-       if ((p = memchr(name, ':', name_len))) {
-               char *s = name;
-               zend_class_entry **ce;
-
-               if (*(p + 1) != ':') { /* invalid constant specifier */
-                       RETURN_FALSE;
-               } else if ((p + 2) >= (name + name_len)) { /* constant name length < 1 */
-                       zend_error(E_WARNING, "Constants name cannot be empty");
-                       RETURN_FALSE;
-               } else if (zend_lookup_class(s, (p - s), &ce TSRMLS_CC) != SUCCESS) { /* invalid class name */
-                       zend_error(E_WARNING, "Class does not exists");
-                       RETURN_FALSE;
-               } else { /* check of constant name contains invalid chars */
-                       int ok = 1;
-                       p += 2; /* move beyond :: to 1st char of constant's name */
-
-                       if (!isalpha(*p) && *p != '_') {
-                               ok = 0;
-                       }
-
-                       while (ok && *++p) {
-                               if (!isalnum(*p) && *p != '_') {
-                                       ok = 0;
-                                       break;
-                               }
-                       }
-
-                       if (!ok) {
-                               RETURN_FALSE;
-                       }
-               }
-       }
-
        if(non_cs) {
                case_sensitive = 0;
        }