The test for season/episode numbers the same has become broken during
the changeover of types from string to int. So it was only checking
episode numbers, meaning that S02E01 would not record if S01E01 was
available.
* AND episode are present since OTA often have just "Ep 1" without
* giving the season.
*/
- if (de1->de_epnum.e_num && de2->de_epnum.e_num)
- return de1->de_epnum.e_num == de2->de_epnum.e_num ? DUP : NOT_DUP;
+ if (de1->de_epnum.s_num && de1->de_epnum.e_num &&
+ de2->de_epnum.s_num && de2->de_epnum.e_num)
+ return de1->de_epnum.s_num == de2->de_epnum.s_num && de1->de_epnum.e_num == de2->de_epnum.e_num ? DUP : NOT_DUP;
/* Only one has season and episode? Then can't be a dup with the
* other one that doesn't have season+episode