Hi list.

We had some problems with catching some errors our own. First we
disabled every output from PHP and added our Exception handler. Also we
added an php_error_handler which only creates PHPError exceptions.

If using your own handlers all silent '@method' errors comes to top.
This throws some ob_end_clean errors on every exception thrown.

We wrote some patch to supress this messages:

$ git diff -u src/exception/AgaviException.class.php
diff --git a/lib/agavi/src/exception/AgaviException.class.php
b/lib/agavi/src/exception/AgaviException.class.php
index a726f7d..8558053 100755
--- a/lib/agavi/src/exception/AgaviException.class.php
+++ b/lib/agavi/src/exception/AgaviException.class.php
@@ -246,7 +246,9 @@ class AgaviException extends Exception
                $exitCode = 70;

                // discard any previous output waiting in the buffer
-               while(@ob_end_clean());
+               if (ob_get_length()) {
+                       while(@ob_end_clean());
+               }

                if($container !== null && $container->getOutputType()
!== null && $container->getOutputType()->getExceptionTemplate() !== null) {
                        // an exception template was defined for the
container's output type
@@ -280,4 +282,4 @@ class AgaviException extends Exception
        }
 }

-?>
\ No newline at end of file
+?>


Maybe this helps ;-)

Kind regards,
 Marius.

-- 
http://www.itsocks.de - Deep in their roots all flowers keep the light.
PGP: 0x53FA79D0 (https://users.itsocks.de/~mhein/pgp/mhein.asc)


_______________________________________________
users mailing list
[email protected]
http://lists.agavi.org/mailman/listinfo/users

Reply via email to