Hello Wez,

  we could check if spl is initialized and if not forcefully initialize it
in pdo's MINIT.

marcus

Friday, June 10, 2005, 8:11:30 AM, you wrote:

> wez             Fri Jun 10 02:11:30 2005 EDT

>   Modified files:              
>     /php-src/ext/pdo    pdo.c 
>   Log:
>   "Fix" PECL #4411
>   SPL is not initialized before PDO, so inheriting from SPL's runtime
> exception class gives PDO a broken exception class.
>   We don't currently have a way to express this kind of "soft"
> dependency in the build system, so I'm disabling inheriting from the
> runtime exception for now.
  
  
  
> http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.48&r2=1.49&ty=u
> Index: php-src/ext/pdo/pdo.c
> diff -u php-src/ext/pdo/pdo.c:1.48 php-src/ext/pdo/pdo.c:1.49
> --- php-src/ext/pdo/pdo.c:1.48  Tue Mar 29 12:23:36 2005
> +++ php-src/ext/pdo/pdo.c       Fri Jun 10 02:11:29 2005
> @@ -18,7 +18,7 @@
>   
> +----------------------------------------------------------------------+
>  */
 
> -/* $Id: pdo.c,v 1.48 2005/03/29 17:23:36 tony2001 Exp $ */
> +/* $Id: pdo.c,v 1.49 2005/06/10 06:11:29 wez Exp $ */
 
>  #ifdef HAVE_CONFIG_H
>  #include "config.h"
> @@ -352,7 +352,7 @@
>  #endif
 
>         INIT_CLASS_ENTRY(ce, "PDOException", NULL);
> -#if defined(HAVE_SPL) && ((PHP_MAJOR_VERSION > 5) ||
> (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION >= 1))
> +#if can_handle_soft_dependency_on_SPL && defined(HAVE_SPL) &&
> ((PHP_MAJOR_VERSION > 5) || (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION
> >= 1))
>         pdo_exception_ce = zend_register_internal_class_ex(&ce,
> spl_ce_RuntimeException, NULL TSRMLS_CC);
>  #else
>         pdo_exception_ce = zend_register_internal_class_ex(&ce,
> zend_exception_get_default(), NULL TSRMLS_CC);




-- 
Best regards,
 Marcus                            mailto:[EMAIL PROTECTED]

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to