if(sigofrtime==3)//XXX: This looks like a bug to me, because timeRangeIndicator == 3 does not seem to have the same meaning as significanceOfReferenceTime == 3. I would recommend replacing this condition with `if(!gribapiTimeIsFC())`.
{
...
...
@@ -190,13 +170,14 @@ int gribapiGetValidityDateTime(grib_handle *gh, int *vdate, int *vtime)