China is a huge market. The day that either 1) Yahoo's shares go down when they do business in China or 2) Doing business in China is made illegal is the only day that they can justify a decision not to do business there -- and not complying with the Chinese government's repressive rules is in effect a decision not to do business there, because it'll get them blocked.
If we want to change this state of affairs, we should either outlaw doing business with China, or we should change the laws under which companies are incorporated so that they can incorporate something besides profit into their decision-making without having to go through a lengthy justification about how this other thing is really in their long-term monetary interest too, or we, as a nation, should stop buying their stock if they engage in business in China (which is a free-market way of outlawing doing business there).
Besides which, I don't think Lantos is much of a moral giant himself. I haven't done research yet, but from various comments it appears he's not much for protecting American constitutional rights either. Let's get our own government straightened out before we go around telling people who do business with other governments that they're moral pygmies.