Plot hole: The movie takes place before and around 1938 and, supposedly ends in that year, following the entrance in Shanghai of the Japanese, with the exodus by many Chinese and foreign residents. Ralph Fiennes' character, as an American ex-diplomat and businessman, would have resided, have bank accounts, his car, etcetera, in the foreign concessions. The Japanese did not occupy the concessions until after Pearl Harbor, so there was no need for him to flee the city, as a refugee without a passport and with little or no money, sailing towards Macao in a fragile Chinese junk. He could just have driven or walked a few blocks to any of the "Western" concessions, from where he could have married Natasha Richardson's character, obtained U.S. passports (White Russians had none, as the rest of her family in the movie until assisted by an official in the French Consulate) for her and her daughter, purchased a ticket in a safer vessel, sold his assets (regardless of the damage to his club, he still had a house, furniture, a car, presumably bank accounts, etc.).
Factual error: There are a couple of references throughout the movie to Ralph Fiennes' character as an "American diplomat" "of the League of Nations". The United States was not a member of the League, so there were no "American diplomats", as such, working for the League.
Factual error: The lead character, Ralph Fiennes, goes to the racetrack in Shanghai in 1937, where an American flag is displayed. The flag has 50 stars, although the U.S. had only 48 states in 1937. (Alaska and Hawaii were not admitted to the Union until 1959.) The error is easy to spot because the rows of stars in the 50-star flag are staggered whereas the rows in the 48-star flag are even.