OK, i tracked it down. It seems this was indeed a bug: when handling different Ian/Lena/Emma scenarios, the game didn't have one for Ian who fucked Emma but is now in relationship with Lena, and that caused the script to proceed to next scene which was Emma coming to Ian in the morning. That's been patched out now.
This is how the scene logic is now:
Python:
if ian_holly_dating:
jump v12morning1_holly
elif ian_emma_sex:
if v12_room == "emma":
jump v12morning1_emma
elif v12_room == "wade":
jump v12morning1_emma
elif (v12_room == "lena" and ian_lena_couple == False and v12_wade_trip == 2) or v10_emma_sex and ian_lena_couple == False:
jump v12morning1_emma
else:
jump v12morning1_alone
elif v12_room == "emma":
jump v12morning1_emma
else:
jump v12morning1_alone
This also limits Ian's options while at the beach, because extension of that scene hinges on Ian and Emma having sex in the morning.