I'm implementing GeckoFx60 in an Outlook VSTO solution.
As soon as I call the Xpcom.Initialize() method, all the decimals in Outlook change.
For example, the reminder dialog suggests postponing a meeting reminder for 5,00000000000 minutes. Also, the weather forecast changes from 17 degrees Celcius to 17,00000000000 degrees Celcius.
With GeckoFX45 everything is fine, but I need GeckoFx 60.
Example:

It is fairly easy to reproduce the issue:
- Open Visual studio 2013
- New project
- Visual C# > Office/Sharepoint > Outlook 2013 add-in
- Edit csproj file and Change DebugInfoExeName from Office\15.0\Outlook\InstallRoot to Office\16.0\Outlook\InstallRoot
- Change the projects targeted framework to .NET Framework 4.5
- Nuget package manager > install geckofx-60 Windows 32bit
- Change the ThisAddIn_Startup
[STAThread]
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
Xpcom.Initialize("Firefox");
}
If you launch Outlook, the decimals are changed. Thread.CurrentThread.CurrentCulture and Thread.CurrentThread.CurrentUICulture are still the same before and after Initialize is called.
Even threaded, the same isses exists:
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
Thread thread = new Thread(init);
thread.TrySetApartmentState(ApartmentState.STA);
thread.Start();
}
private void init()
{
Xpcom.Initialize("Firefox");
}