summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xext/spl/spl_engine.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/ext/spl/spl_engine.c b/ext/spl/spl_engine.c
index 9273308b13..d501f31435 100755
--- a/ext/spl/spl_engine.c
+++ b/ext/spl/spl_engine.c
@@ -45,19 +45,16 @@ PHPAPI void spl_instantiate(zend_class_entry *pce, zval **object, int alloc TSRM
PHPAPI long spl_offset_convert_to_long(zval *offset TSRMLS_DC) /* {{{ */
{
- switch(Z_TYPE_P(offset)) {
+ switch (Z_TYPE_P(offset)) {
case IS_STRING:
ZEND_HANDLE_NUMERIC(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, idx);
break;
case IS_DOUBLE:
+ return (long)Z_DVAL_P(offset);
case IS_RESOURCE:
case IS_BOOL:
case IS_LONG:
- if (Z_TYPE_P(offset) == IS_DOUBLE) {
- return (long)Z_DVAL_P(offset);
- } else {
- return Z_LVAL_P(offset);
- }
+ return Z_LVAL_P(offset);
}
return -1;
}