It can be a mod causing the issue but the first report I had of this on the Terrain Pack thread was simply strange: fo hellrazor everything was OK until the 4th terror site, which took place on an island (i.e. no polygons underneath the mission marker) but when he landed it was a mission on Steppe terrain. Hellrazor provided a Geoscape save and on the MissionSites, the entry was assigned to texture #4 (with Steppe being one possible option for that texture), instead of -2 (for Port Attacks).
I'm still using Nightly 2015_03_04_0147 for mod design (almost two weeks old) and I simply can't reproduce this bug using the same version of the Terrain Pack (just tried it again, Port Attack is generated, with the correct -2 texture). Of course, it could still be some other mod, which is why I haven't reported this until someone has this bug with no mods being used.
I so far had not any other Terrormissions in my testplay but everyother textureasignment to UFO Crashsites etc.. was working as expected.
I also took a look into the respective openxcom code for generating the missionmarkers, which is the place where the textures get asigned, but since i am still beginner of c++ i could not really find any error, which could have been causing this (the code looks good in my eyes).
So something else came actually to my mind, which could have caused this was, yaml.
If openxcom creates a missionmarker and asignes textures to it ( or reads them from templates which are filled with yaml data) and this asignment is correct but out of some reason the yaml input was corrupt or inconsistent or the template was read wrong then it could have been leading to this.
As so far the Ruleset get's loaded on the beginning of the game (or on restart/reload when activating a new mod), maybe there was an inconsistancy in the memory (a wrong reference or so) which led to this wrong assignment. But on the other side i find it rather disturbing that the yaml code for savegames is in general in a specific order, but the subsections sometimes a completly out of order, they are still seperated of course and do work but the order / sequence in which the subsection data appears is sometimes not following a specific identifiable rule.
I also had been having a "ghost" soldier, which was appearing in Battlescapemission of another team which was from another base, examining the savegame both soldiers had been assigned the same ID out of some reason, which i could not trace back. So i gave the "ghost" soldier an unused ID and increased the SoldierIDcount by 1 to solve this.
Those maybe related to some degree, but i am just guessing.