Changeset 344 for trunk/xcache.c


Ignore:
Timestamp:
2007-02-04T07:22:14+01:00 (8 years ago)
Author:
moo
Message:

copy internal functions/classes into sandbox, they're needed by compiler

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/xcache.c

    r341 r344  
    10251025        Bucket *b; 
    10261026        unsigned int i; 
     1027        unsigned int j; 
    10271028 
    10281029#define COPY_H(vartype, var, cnt, name, datatype) do {        \ 
    1029     for (i = 0; b; i ++, b = b->pListNext) {                  \ 
    1030         vartype *data = &php->var[i];                         \ 
     1030    for (i = 0, j = 0; b; i ++, b = b->pListNext) {           \ 
     1031        vartype *data = &php->var[j];                         \ 
    10311032                                                              \ 
    10321033        if (i < old_##cnt) {                                  \ 
    10331034            continue;                                         \ 
    10341035        }                                                     \ 
     1036        j ++;                                                 \ 
    10351037                                                              \ 
    10361038        assert(i < old_##cnt + php->cnt);                     \ 
     
    16031605    int i; 
    16041606 
     1607    if (XG(internal_function_table).nTableSize == 0) { 
     1608        zend_function tmp_func; 
     1609        xc_cest_t tmp_cest; 
     1610 
     1611        zend_hash_init_ex(&XG(internal_function_table), 100, NULL, NULL, 1, 0); 
     1612        zend_hash_copy(&XG(internal_function_table), CG(function_table), NULL, &tmp_func, sizeof(tmp_func)); 
     1613 
     1614        zend_hash_init_ex(&XG(internal_class_table), 10, NULL, NULL, 1, 0); 
     1615        zend_hash_copy(&XG(internal_class_table), CG(class_table), NULL, &tmp_cest, sizeof(tmp_cest)); 
     1616    } 
    16051617    if (xc_php_hcache.size && !XG(php_holds)) { 
    16061618        XG(php_holds) = calloc(xc_php_hcache.size, sizeof(xc_stack_t)); 
     
    16761688        xcache_globals->var_holds = NULL; 
    16771689    } 
     1690 
     1691    zend_hash_destroy(&xcache_globals->internal_function_table); 
     1692    zend_hash_destroy(&xcache_globals->internal_class_table); 
    16781693} 
    16791694/* }}} */ 
Note: See TracChangeset for help on using the changeset viewer.