PredatH0r / ChanSort

TV channel list editor for Samsung, LG, Sony, Hisense, Panasonic, Philips, Sharp, Toshiba and MANY more.
849 stars 115 forks source link

Weird problem with GlobalClone00001 files from LG. #184

Closed hotshotbg closed 4 years ago

hotshotbg commented 4 years ago

When I export the channel list from my two LG TV's - one with WebOS and one basic TV without OS, I get a very strange error. The exported file has a name: GlobalClone00001.TLL and it's working fine in the editor but if I change the file name to something different (LG 28inch TV.TLL) suddenly the editor says that there is no plug in for reading this file and opens a blank window.

If I enter GlobalClone00001 somewhere in the filename (LG 28inch TV - GlobalClone00001.TLL) - the file works normally and opens like nothing happened.

Is this a normal behaviour or am I missing something? :( 1 2

?

PredatH0r commented 4 years ago

That is normal behavior that comes with the logic how ChanSort selects "ChanSort.Loader.*.DLL" modules to load a file.

All the different file formats have their own loader DLL. Each DLL defines a file name / extension pattern that it can handle. ChanSort then selects based on the actual file name which loaders might be able to load the file - and skips the others.

LG's XML text based "GlobalClone" format is handled by ChanSort.Loader.GlobalClone.dll, but it will only be used if the file has "GlobalClone" in the name. LG's binary file formats, typically xx*.TLL with a model number in it, will be handled by ChanSort.Loader.LG.dll.

If none of the loaders succeeded, ChanSort shows the error messge that each attempted loader returned.

In any case, the TV can only import the file with the exact same name that it exported it, so renaming only makes sense for the case of archiving a list on the PC. In that case, just keep "GlobalClone" somewhere in the file name and ChanSort will be able to select the correct loader.

hotshotbg commented 4 years ago

Thank you for the explanation. Thought it was some strange behaviour on my end. : )