/* count ogg pages and get duration of the file */
for (i = 0; ogg_sync_pageseek(&oss, &op) > 0; i++) {
int this_pageno = ogg_page_pageno(&op);
-
- granule = ogg_page_granulepos(&op);
+ int64_t this_granule = ogg_page_granulepos(&op);
+ if (this_granule >= 0)
+ granule = this_granule;
if (i > 0 && this_pageno != prev_pageno + 1) /* hole */
granule_skip += granule - prev_granule;
prev_pageno = this_pageno;