]> granicus.if.org Git - php/commitdiff
Tweak fix for #45458 to allow this branch (from PECL) to continue building with PHP...
authorChristopher Jones <sixd@php.net>
Thu, 5 Feb 2009 21:43:31 +0000 (21:43 +0000)
committerChristopher Jones <sixd@php.net>
Thu, 5 Feb 2009 21:43:31 +0000 (21:43 +0000)
ext/oci8/oci8_interface.c

index c8a4ca21c63b708e14e70effea4ffdbbaae75376..3dba5f23306cb5f3ffca51cf5674b9bef4ab8088 100644 (file)
@@ -1399,7 +1399,13 @@ PHP_FUNCTION(oci_fetch_all)
                                if (flags & PHP_OCI_NUM) {
                                        zend_hash_next_index_insert(Z_ARRVAL_P(row), &element, sizeof(zval*), NULL);
                                } else { /* default to ASSOC */
+#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 1) || (PHP_MAJOR_VERSION > 5)
+                                       /* zend_symtable_update is only available in 5.2+ */
                                        zend_symtable_update(Z_ARRVAL_P(row), columns[ i ]->name, columns[ i ]->name_len+1, &element, sizeof(zval*), NULL);
+#else
+                                       /* This code path means Bug #45458 will remain broken when OCI8 is built with PHP 4 */
+                                       zend_hash_update(Z_ARRVAL_P(row), columns[ i ]->name, columns[ i ]->name_len+1, &element, sizeof(zval*), NULL);
+#endif
                                }
                        }
 
@@ -1431,7 +1437,13 @@ PHP_FUNCTION(oci_fetch_all)
                                
                                MAKE_STD_ZVAL(tmp);
                                array_init(tmp);
+#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 1) || (PHP_MAJOR_VERSION > 5)
+                               /* zend_symtable_update is only available in 5.2+ */
                                zend_symtable_update(Z_ARRVAL_P(array), columns[ i ]->name, columns[ i ]->name_len+1, (void *) &tmp, sizeof(zval*), (void **) &(outarrs[ i ]));
+#else
+                               /* This code path means Bug #45458 will remain broken when OCI8 is built with PHP 4 */
+                               zend_hash_update(Z_ARRVAL_P(array), columns[ i ]->name, columns[ i ]->name_len+1, (void *) &tmp, sizeof(zval*), (void **) &(outarrs[ i ]));
+#endif
                        }
                }