Thanks, the screenshot was extremely helpful! The bug is in Vidalia, src/vidalia/config/ServerPage.cpp, where an empty CountrySummary leads to the described error message.
This is a Vidalia bug, not an issue with Tor, as the Tor specification explicitly states that an empty list of CountrySummary is possible.
There's a trivial patch. It doesn't make the resulting window very pretty (the window is just empty, some text saying "hey sorry, no bridges, go spread your bridge manually/check connectivity/maybe china blocked it, etc" would be nice, tho it does seem kind of optional.
Someone should also figure out why the foreach body is actually reached at all, and if maybe pair is simply empty or something that can be detected earlier on.
Meh, Sebastian's patch kinda sucks for the reasons he noted above. There's already code for a dialog box in that with the "hey sorry, no bridge users yet" message, so why not reuse it rather than displaying an empty user table? In theory, I like the patch I attached better, but I haven't been able to reproduce the blank CountrySummary line (I didn't try too hard) so I haven't been able to test it. If someone who can reproduce the black CountrySummary wants to give it a try, that'd be handy.
And the answer to the mystery noted in your patch and comment above is because QString's default split behavior is QString::KeepEmptyParts.