Normally, the iPhone attempts to format local phone numbers accourding to the country code associated with your regional settings. Unfortunately, this means that if you roam internationally (or simply prefer to a non-local locale) you will never get expected results as local phone numbers will still be formatted as they might be in your home country.

This MobileSubstrate module changes this algorithm to use the country code associated with the current network instead, which usually provides much more reasonable results (of course, this assumes the country you are in is reasonably supported by the phone's formatting algorithms). This fix should not be specific to any version of the iPhone firmware and is likely to work (and will at least be safe to apply) on any firmware 2.x+.

(Special Thanks on this package goes out to "aviegas", who described the problem and what changes had to be done to Apple's frameworks to provide this fix.)