Page 2 of 2

Re: Interesting TV Series Issue

Posted: Sun Jul 26, 2020 10:38 am
by Pauven
Tom,

Thanks for supplying all the data. I've loaded it up onto my test system, and I've recreated the exact issue you are experiencing.

Not sure why it is happening yet, but for some reason the file path for Seasons 4 and 5 are pointing to the wrong folder. Since the data appears correct in the XML, I think it might be a sync bug.

Paul

Re: Interesting TV Series Issue

Posted: Sun Jul 26, 2020 12:53 pm
by Pauven
Okay, I've identified the bug and what is triggering the bug.

They sync process parses each disc, getting the title # and chapter #, or MPLS #, for each episode, and it does this once per disc. When it is calling the routine, it makes sure it has the right disc by comparing the disc location stored in the XML to the disc location of the currently processing directory.

The problem occurs when you have two discs that are essentially the same path, but one has some extra characters at the end. For example,
  • smb://tigger/UK/Only Fools and Horses/Only Fools and Horses Series 04
  • smb://tigger/UK/Only Fools and Horses/Only Fools and Horses Series 04 Special 01 To Hull and Back
The disc location validation function is using a "Contains" method to see if the path is correct, and it is checking if "smb://tigger/UK/Only Fools and Horses/Only Fools and Horses Series 04 Special 01 To Hull and Back" contains the text "smb://tigger/UK/Only Fools and Horses/Only Fools and Horses Series 04", which it does. But because this is not the correct match, it ends up using the Special 01 To Hull and Back data to overwrite the main Series 04 data, so you can no longer play Series 04.

Had you named Series 04 as "Only Fools and Horses Series 04 Disc 01", this bug would not have been triggered, since "smb://tigger/UK/Only Fools and Horses/Only Fools and Horses Series 04 Special 01 To Hull and Back" does not contain the text "smb://tigger/UK/Only Fools and Horses/Only Fools and Horses Series 04 Disc 01". I'm not saying you did anything wrong, only that this very unique naming convention triggered this long-hidden bug.

The fix on my end is most likely to change the "Contains" method to instead use an "Equals" method. But I need to do some further evaluation on this. I recall I was trying to make this routine adapt to location changes (like when you copy a TV Series off your NAS and onto your laptop to watch while on the go), and I think the "Contains" method was part of that solution. But I've gotten myself confused now, as I don't think "Contains" would actually accomplish my goal anyway, so I don't know if this was just lazy programming on my part, or if there was a reason I used "Contains" instead of "Equals".

Ahh, I just figured out why I used "Contains". In the mmTitle.xml files that CME creates, the disc location path is complete. But in the mymovies.xml files that are created by MMCM, the path is shorthand/relative, i.e. ".\Only Fools and Horses Series 04". So I strip off the leading ".\" and compare the remaining name to the currently processing directory. I have to use Contains since the mymovies.xml data doesn't have the full path.

Now that I understand the problem, I should have it fixed soon. I'm planning a bug-fix release for CMC v3.5 soon, so hopefully I can have the fix to you later this week.

Paul

Re: Interesting TV Series Issue

Posted: Sun Jul 26, 2020 1:53 pm
by ScareDcrow
Great

It was more about the bug than personally having the fix as I was OK using the disc view to watch this, so that all sounds great. Obviously I can test at that point :-)

Cheers