This bug is related to QM. If QM don't have space to land the troops are supposed to be automatically unloaded... And we can assign them and start attacking...

But QM is a stubborn one and he don't give up so easily, he wants his troops back. And he likes to land even we don't really care he is or not on adv map while doing the attacking part.
So, once he find a free spot on landing area he land by himself and take his troops back. Doesn't matter we already assigned them to other generals, the troops are HIS!!!

To avoid fighting with our own QMs i suggest to send them first on adv map, so they could always find free landing spots.

I stumbled on this bug some months a go... remember when QMs were never find a free spot to land? They fixed that bug and this one appeared. I lost some cannons then and learned to always check the troops assigned to a general before sending attack.