Ticket #2352 (closed: fixed)

Opened 10 years ago

Last modified 5 years ago

Mantid can Hang on non-english locales

Reported by: Nick Draper Owned by: Martyn Gigg
Priority: major Milestone: Iteration 27
Component: Mantid Keywords:
Cc: Blocked By:
Blocking: Tester: Michael Whitty

Description

Mantid can hang when reading xml files if the system local is set to use , as a decimal seperator. For example in Germany.

Force the application Locale to always be english.

Change History

comment:1 Changed 10 years ago by Nick Draper

  • Summary changed from Mantid can Hang on non-englidh locales to Mantid can Hang on non-english locales

comment:2 Changed 10 years ago by Martyn Gigg

  • Status changed from new to verify
  • Resolution set to fixed

(In [9277]) Set the global locale for C++ stream operations to simple ASCII. This avoids problems with XML proceesing on non-English systems that prevents loading an instrument where we cache the triangles Fixes #2352.

comment:3 Changed 10 years ago by Martyn Gigg

To the tester.

The bug that sparked this ticket was to do with reading/writing the instrument cache, i.e. GEM_Definition.vtp.

When the system locale was set to something non-English the cache writer would run into an infinite loop. To reproduce this:

  • Remove the GEM_Definition.vtp file in the Instrument directory
  • Set the language to German(on Ubuntu with german language support) export LANG=de_DE.utf-8
  • Load a GEM raw file, i.e. Test/Data/GEM38370.raw
  • The algorithm should create the cache successfully;

comment:4 Changed 10 years ago by Michael Whitty

  • Status changed from verify to verifying
  • Tester set to Michael Whitty

comment:5 Changed 10 years ago by Michael Whitty

  • Status changed from verifying to closed

tested on windows in [9515], developed on linux - alls good.

comment:6 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 3199

Note: See TracTickets for help on using tickets.