Yes, it is odd in the sense that the condition is failing where it doesnt need to do anything isnt it. you would think it would be along the lines of
If adverts are on then play adverts
otherwise do nothing.
The reason the external monitor appeared to be the issue is because it always froze on the "between tracks" screen; as I guess thats when the adverts are set to run and the code is executed.
Its possible there is some code to initialise the adverts that is skipped on loading the program as "off" is selected and then that the condition to check before actually playing them at certain points (between tracks) isnt there or working and is therefore calling something that was not initialised. That would lead to an error/crash.