function _fetch()
 {
     $f = ibase_fetch_row($this->_queryID);
     if ($f === false) {
         return false;
     }
     // OPN stuff start - optimized
     // fix missing nulls and decode blobs automatically
     // WARNING - this could break bc.
     for ($i = 0, $max = $this->_numOfFields; $i < $max; $i++) {
         if ($this->_cacheType[$i] == "BLOB") {
             if (isset($f[$i])) {
                 $f[$i] = ADODB_ibase::_BlobDecode($f[$i]);
             } else {
                 $f[$i] = null;
             }
         } else {
             if (!isset($f[$i])) {
                 $f[$i] = null;
             }
         }
     }
     // OPN stuff end
     $this->fields = $f;
     if ($this->fetchMode & ADODB_FETCH_ASSOC) {
         $this->fields = $this->GetRowAssoc(ADODB_ASSOC_CASE);
     }
     return true;
 }
 function __construct()
 {
     parent::__construct();
 }