X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Farraywrapper.php;h=f9d3c3cf946313d14b35b2ee4cfca2fd1e59a706;hb=119d0f7dbab40f30170ba263de78d7e9cea984db;hp=a8a12b3bb35668ec1bc8e41872e8d5a7ab962b09;hpb=0461aafeef55782056b02cd0d8702ae0a0e3812a;p=quix0rs-gnu-social.git diff --git a/lib/arraywrapper.php b/lib/arraywrapper.php index a8a12b3bb3..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 +}