We encountered the Problem, that if facebook is enabled and you put a certain products from its detailspage in Basket and click on "Proceed to Checkout", the Basket is gone. We were able to reproduce this in all Demoshops.
If you deactivate Facebook, everything is fine, so it's definetly related to the facebook integration.
5. In popup -> click "proceed to checkout"
However, we have in fact our shop working at a different subdomain, and there the problem doesn't occur.
I found the source of this problem: facebook does a request if you put something to basket, this request contains the force_sid. This request leads to the destruction of the session, because the shop kills a session initiated with force_sid which comes from a different user agent.
In this case aTrustedIPs is a bad solution, because facebook IP ranges are friggin huge and change often.
getLink returns an URL with force_sid parameter -> url gets called -> session destroyed. If you strip the force_sid param, everything works fine.
The issue occurs only when adding any product to basket for the first time. If you will go to basket (which is empty), then will add any other product to basket again - the second product will be shown in basket.
You can fix this problem by yourself by changing "$oProduct->getLink()" to "$oView->getCanonicalUrl()". This fix will be published only in update package.
You cannot reproduce it in VMWare because Facebook does a request to the url which is submitted in FBML (e.g. the one with force_sid) which breaks the session. In VMWare facebook cannot make a request, because your network is of course "private" and the demoshop is reachable through the internet.