Allow ext/mysql to build against PHP 4 again; update package.xml ready for

release via PECL.
This commit is contained in:
Wez Furlong 2005-09-04 04:51:23 +00:00
parent 60b1f64cc7
commit b6be0f9817
3 changed files with 27 additions and 8 deletions

View File

@ -93,6 +93,11 @@ Note that the MySQL client library is not bundled anymore!])
;;
esac
dnl for compat with PHP 4 build system
if test -z "$PHP_LIBDIR"; then
PHP_LIBDIR=lib
fi
for i in $PHP_LIBDIR $PHP_LIBDIR/mysql; do
MYSQL_LIB_CHK($i)
done

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE package SYSTEM "../pear/package.dtd">
<package>
<name>mysqli</name>
<name>mysql</name>
<summary>MySQL database access functions</summary>
<maintainers>
<maintainer>
@ -28,11 +28,12 @@ These functions allow you to access MySQL database servers.
</description>
<license>PHP</license>
<release>
<state>beta</state>
<version>5.0.0rc1</version>
<date>2004-03-19</date>
<state>stable</state>
<version>5.1</version>
<date>2005-09-04</date>
<notes>
package.xml added to support intallation using pear installer
This is the MySQL driver, taken from the PHP 5.1 release.
It can also be built against PHP 4.
</notes>
<configureoptions>
<configureoption name="with-mysql" default="autodetect" prompt="mysql installation dir?"/>
@ -54,7 +55,7 @@ package.xml added to support intallation using pear installer
<file role="test" name="tests/skipif.inc"/>
</filelist>
<deps>
<dep type="php" rel="ge" version="5" />
<dep type="php" rel="ge" version="4" />
</deps>
</release>
</package>

View File

@ -33,7 +33,14 @@
#include "php_globals.h"
#include "ext/standard/info.h"
#include "ext/standard/php_string.h"
#include "zend_exceptions.h"
#ifdef ZEND_ENGINE_2
# include "zend_exceptions.h"
#else
/* PHP 4 compat */
# define OnUpdateLong OnUpdateInt
# define E_STRICT E_NOTICE
#endif
#if HAVE_MYSQL
@ -1904,6 +1911,7 @@ static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type,
zval *res, *ctor_params = NULL;
zend_class_entry *ce;
#ifdef ZEND_ENGINE_2
if (into_object) {
char *class_name;
int class_name_len;
@ -1922,7 +1930,9 @@ static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type,
return;
}
result_type = MYSQL_ASSOC;
} else {
} else
#endif
{
if (ZEND_NUM_ARGS() > expected_args) {
WRONG_PARAM_COUNT;
}
@ -1997,6 +2007,7 @@ static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type,
}
}
#ifdef ZEND_ENGINE_2
if (into_object) {
zval dataset = *return_value;
zend_fcall_info fci;
@ -2060,6 +2071,8 @@ static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type,
zend_throw_exception_ex(zend_exception_get_default(), 0 TSRMLS_CC, "Class %s does not have a constructor hence you cannot use ctor_params", ce->name);
}
}
#endif
}
/* }}} */