Original Sin

Original Sin is set in the late 19th century Cuba during the Spanish rule,[3][4] and flashes back and forth from the scene of a woman awaiting her execution by garrote while telling her story to a priest, to the actual events of that story.
Luis Vargas (Antonio Banderas), a wealthy Cuban businessman, sends for American Julia Russell (Angelina Jolie) to sail to his country to be his bride. Julia departs from the ship, looking nothing like the photos she's sent prior to her voyage. Julia explains she wants more than a man who is interested in a pretty face, and that's why she's been deceptive - substituting a plain-looking woman in place of her own picture. Luis also admits to deception; he's been misleading her into believing he's a poor working man, instead of the rich owner of a coffee company.
Luis and Julia wed within hours of her setting foot in Cuba. Luis falls passionately in love with his new wife.
Meanwhile, Julia's sister Emily has been trying to contact her, worried about her after such a long trip to a strange land. Luis forces Julia to write back, fearing that if Julia continues to ignore Emily's letters, Emily will assume something terrible has befallen her sister and might send the authorities to check on her welfare. Holding off as long as possible, Julia finally pens a letter to her sister.
In order to assure that his wife has everything she wants, Luis adds Julia to his business and personal bank accounts, giving her free rein to spend as she pleases. Luis discovers Julia has run off with nearly all of his fortune, and then teams up with a detective, Walter Downs (Thomas Jane), hired by Emily to find her real sister Julia. Walter reveals to Luis he believes Julia to be an impostor and the intended wife to be dead by her hand, and that she may be working with someone. The two set out together looking for her.
Luis finds Julia and discovers she is actually working with Walter and that he and Luis are staying at the same hotel. Luis believes she loves him and lies to Walter, but, when confronted, a fight breaks out and Luis shoots Walter. Julia coldly tells Luis to go and buy them tickets home, but the minute he leaves, Walter gets to his feet; he had loaded the gun with blanks. Julia appears to love Luis, but, Walter has too much control over her, so, she continues to work for him as she and Luis run off to live in secret with the supposedly dead Walter in pursuit.
Luis throws away his promising future and opens himself to living a lie with Julia. One night, Luis follows Julia and discovers Walter is alive and that the two are still working together; she is apparently going to poison her husband that very night. He returns home and waits for her, and when she arrives, reveals he knows of the plan, confesses his love for her once more and swallows the poisoned drink. Julia flees with the dying Luis, with Walter close behind. They run into him at a train station; Walter is furious that Julia has betrayed him. As Walter holds a knife to her throat, Luis shoots and wounds him, with Julia finishing him off.
Back in the mise en scene, Julia finishes her story and asks the priest to pray with her. The next morning the guards come to her cell to take her to her execution, only to find the priest in her clothing.
In Morocco, Julia is watching a card game. She walks around the table occupied by gamblers - including Luis - and thanks them for allowing her to watch. As Julia signals Luis about the other players' cards, he begins telling them the story of how they got there.

Question: Who swallows the poison?
Answer: Luis