csvorbis.VorbisFile.get_next_page C# (CSharp) Method

get_next_page() private method

private get_next_page ( Page page, long boundary ) : int
page csogg.Page
boundary long
return int
        private int get_next_page(Page page, long boundary)
        {
            if(boundary>0) boundary+=offset;
            while(true)
            {
                int more;
                if(boundary>0 && offset>=boundary)return OV_FALSE;
                more=oy.pageseek(page);
                if(more<0){offset-=more;}
                else
                {
                    if(more==0)
                    {
                        if(boundary==0)return OV_FALSE;
                        //	  if(get_data()<=0)return -1;
                        int ret=get_data();
                        if(ret==0) return OV_EOF;
                        if(ret<0) return OV_EREAD;
                    }
                    else
                    {
                        int ret=(int)offset; //!!!
                        offset+=more;
                        return ret;
                    }
                }
            }
        }