X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Farraywrapper.php;h=f9d3c3cf946313d14b35b2ee4cfca2fd1e59a706;hb=119d0f7dbab40f30170ba263de78d7e9cea984db;hp=a3495212930bebb590e118bfcc8bfa28aecaa432;hpb=793a6a1155996a7bcdc068fc891e7063934bdb19;p=quix0rs-gnu-social.git diff --git a/lib/arraywrapper.php b/lib/arraywrapper.php index a349521293..f9d3c3cf94 100644 --- a/lib/arraywrapper.php +++ b/lib/arraywrapper.php @@ -1,7 +1,7 @@ . */ -if (!defined('LACONICA')) { +if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } @@ -25,12 +25,14 @@ class ArrayWrapper { var $_items = null; var $_count = 0; + var $N = 0; var $_i = -1; function __construct($items) { $this->_items = $items; $this->_count = count($this->_items); + $this->N = $this->_count; } function fetch() @@ -74,6 +76,10 @@ class ArrayWrapper function __call($name, $args) { $item =& $this->_items[$this->_i]; + if (!is_object($item)) { + common_log(LOG_ERR, "Invalid entry " . var_export($item, true) . " at index $this->_i of $this->N; calling $name()"); + throw new ServerException("Internal error: bad entry in array wrapper list."); + } return call_user_func_array(array($item, $name), $args); } -} \ No newline at end of file +}