my application has a chat service. when a user wants to inform someone new, he clicks on the “new chat” and the screen controller of the table is displayed, which is selected from the list of friends. I use unind segues to go back to the previous view controller and share the data between the two view controllers (basically, the data will be friends to chat with). unwinding segue works fine, however, in my application, when the user returns to the main VC, I start a new session to go to another VC directly, where the user has chat; and it does not work. All segments are well connected, and I tried NsLog in every corner, and it got there, and even to readyForSegue: it is accessed. I tried to put NsTimer, thought there might be some technical conflict,and it didn’t work. I change segue to VC chat for modal, and now it gives me this error:
A warning. Try to imagine whose view is not in the hierarchy of windows!
I can access this VC in other ways and in a hierarchy. my questions are: what could be wrong? does reversal segues change window hierarchies?
PICTURE:

To present the problem more visually, the main VC that I am talking about is located at the bottom left connected to the navigation view controller. when a user clicks on a new chat, two VCs are displayed in the upper right corner (one of them is between friends or a group, the other is for friends / groups). therefore, when a friend is selected to say from the top right VC, I have to unwind the segue to the main VC. as you can see from the main VC, there are other segments. not one of them can work if I unwind segue, and they work if I work normally.