Changeset 74 in svn for branches/1.0/xcache.c


Ignore:
Timestamp:
2006-06-08T09:15:16+02:00 (9 years ago)
Author:
Xuefer
Message:

fix win32 zts ini problem

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/1.0/xcache.c

    r65 r74  
    17381738
    17391739/* {{{ PHP_INI */
    1740 static PHP_INI_MH(xc_OnUpdateLong)
    1741 {
    1742     long *p = (long *)mh_arg1;
    1743     *p = zend_atoi(new_value, new_value_length);
    1744     return SUCCESS;
    1745 }
    17461740
    17471741static PHP_INI_MH(xc_OnUpdateBool)
     
    17551749        *p = (zend_bool) 1;
    17561750    }
    1757     return SUCCESS;
    1758 }
    1759 
    1760 static PHP_INI_MH(xc_OnUpdateHashInfo)
    1761 {
    1762     xc_hash_t *p = (xc_hash_t *)mh_arg1;
    1763     int bits, size;
    1764 
    1765     p->size = zend_atoi(new_value, new_value_length);
    1766     for (size = 1, bits = 1; size < p->size; bits ++, size <<= 1) {
    1767         /* empty body */
    1768     }
    1769     p->size = size;
    1770     p->bits = bits;
    1771     p->mask = size - 1;
    1772 
    17731751    return SUCCESS;
    17741752}
     
    17841762    return SUCCESS;
    17851763}
     1764
    17861765#ifdef ZEND_ENGINE_2
    17871766#define OnUpdateInt OnUpdateLong
     
    17941773#endif
    17951774PHP_INI_BEGIN()
    1796     PHP_INI_ENTRY1     ("xcache.size",                   "0", PHP_INI_SYSTEM, xc_OnUpdateLong,     &xc_php_size)
    1797     PHP_INI_ENTRY1     ("xcache.count",                  "1", PHP_INI_SYSTEM, xc_OnUpdateHashInfo, &xc_php_hcache)
    1798     PHP_INI_ENTRY1     ("xcache.slots",                 "8K", PHP_INI_SYSTEM, xc_OnUpdateHashInfo, &xc_php_hentry)
    1799 
    1800     PHP_INI_ENTRY1     ("xcache.var_size",               "0", PHP_INI_SYSTEM, xc_OnUpdateLong,     &xc_var_size)
    1801     PHP_INI_ENTRY1     ("xcache.var_count",              "1", PHP_INI_SYSTEM, xc_OnUpdateHashInfo, &xc_var_hcache)
    1802     PHP_INI_ENTRY1     ("xcache.var_slots",             "8K", PHP_INI_SYSTEM, xc_OnUpdateHashInfo, &xc_var_hentry)
    1803 
    18041775    PHP_INI_ENTRY1     ("xcache.mmap_path",     DEFAULT_PATH, PHP_INI_SYSTEM, xc_OnUpdateString,   &xc_mmap_path)
    18051776    PHP_INI_ENTRY1     ("xcache.coredump_directory",      "", PHP_INI_SYSTEM, xc_OnUpdateString,   &xc_coredump_dir)
     
    18671838}
    18681839/* }}} */
     1840static int xc_config_hash(xc_hash_t *p, char *name, char *default_value) /* {{{ */
     1841{
     1842    int bits, size;
     1843    char *value;
     1844
     1845    if (cfg_get_string(name, &value) != SUCCESS) {
     1846        value = default_value;
     1847    }
     1848
     1849    p->size = zend_atoi(value, strlen(value));
     1850    for (size = 1, bits = 1; size < p->size; bits ++, size <<= 1) {
     1851        /* empty body */
     1852    }
     1853    p->size = size;
     1854    p->bits = bits;
     1855    p->mask = size - 1;
     1856
     1857    return SUCCESS;
     1858}
     1859static int xc_config_long(long *p, char *name, char *default_value) /* {{{ */
     1860{
     1861    char *value;
     1862
     1863    if (cfg_get_string(name, &value) != SUCCESS) {
     1864        value = default_value;
     1865    }
     1866
     1867    *p = zend_atoi(value, strlen(value));
     1868    return SUCCESS;
     1869}
     1870/* }}} */
    18691871/* {{{ PHP_MINIT_FUNCTION(xcache) */
    18701872static PHP_MINIT_FUNCTION(xcache)
     
    18921894        }
    18931895    }
     1896
     1897    xc_config_long(&xc_php_size,   "xcache.size",       "0");
     1898    xc_config_hash(&xc_php_hcache, "xcache.count",      "1");
     1899    xc_config_hash(&xc_php_hentry, "xcache.slots",     "8K");
     1900
     1901    xc_config_long(&xc_var_size,   "xcache.var_size",   "0");
     1902    xc_config_hash(&xc_var_hcache, "xcache.var_count",  "1");
     1903    xc_config_hash(&xc_var_hentry, "xcache.var_slots", "8K");
    18941904
    18951905    if (xc_php_size <= 0) {
Note: See TracChangeset for help on using the changeset viewer.