View Issue Details

IDProjectCategoryView StatusLast Update
0022898CommunityOCCT:Data Exchangepublic2017-08-03 09:54
Reporterbrueninghaus Assigned Toabv 
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformLinuxOSSqueeze 
Product Version6.5.2 
Target Version6.6.0Fixed in Version6.6.0 
Summary0022898: IGES import fails in german environment
DescriptionThe IGES import do not work, if a german environment (i.e. LANG=de_DE.UTF-8) is used. This kind of problem is reported in the forum at least in this threads:
http://www.opencascade.org/org/forum/thread_18953/
http://www.opencascade.org/org/forum/thread_15307/
http://www.opencascade.org/org/forum/thread_21902/

Referring to "man 3 setlocale":
On startup of the main program, the portable "C" locale is selected as default.

If the locale is changed, i.e. Qt seems to do this, the IGES import might fail (dependent of the locale).

Import of STEP and BREP is not affected.

A workaround is to set locale to "C" before IGES import and restore the locale afterwards.
Steps To ReproduceSetting locale to de_DE.UTF-8 and import an IGES file (i.e. hammer.igs).
TagsNo tags attached.
Test case numberbugs xde(005) bug22898

Attached Files

  • iges-import-fail_apply-locale.cpp (367 bytes)
  • iges-import-fail_using_qt.cpp (362 bytes)
  • iges-import-work.cpp (277 bytes)
  • iges-import-work_set-locale.cpp (453 bytes)
  • bugfix-locale-iges.diff (1,481 bytes)

Relationships

related to 0021713 closed Community [OCC Forum]Incorrect decimal separator in GL2PS export on Linux 
parent of 0028971 closedkgv Open CASCADE Configuration - fix compatibility with glibc 2.26+ due to xlocale.h removal 
related to 0022808 closedbugmaster Community Undocumented change of global locale 
related to 0022933 closedbugmaster Community Thread-safe locale handling in OSD_Localizer 

Activities

brueninghaus

2012-01-11 02:59

reporter  

iges-import-fail_apply-locale.cpp (367 bytes)

brueninghaus

2012-01-11 02:59

reporter  

iges-import-fail_using_qt.cpp (362 bytes)

brueninghaus

2012-01-11 03:00

reporter  

iges-import-work.cpp (277 bytes)

brueninghaus

2012-01-11 03:00

reporter  

iges-import-work_set-locale.cpp (453 bytes)

brueninghaus

2012-01-15 22:05

reporter   ~0019132

Digging with gdb through the code I found the reason for the described behaviour. At least in IGESData_ParamReader.cxx atof() is used, but LC_NUMERIC is not changed to "C".

Steps to reproduce false conversion of reals with atof():
1) take iges-import-fail_apply-locale.cpp and compile to i.e. a.out and place hammer.igs in the same directory
2) gdb --args a.out hammer.igs
3) set breakpoint to src/IGESData/IGESData_IGESReaderTool.cxx:131 with condition num == 3
4) set breakpoint to src/IGESData/IGESData_ParamReader.cxx:906 with condition i == 13 and disable it
5) set breakpoint to src/IGESData/IGESData_ParamReader.cxx:1235 and disable it
6) run
7) enable once breakpoint from step 4 and continue
8) enable once breakpoint from step 5 and continue
9) print text
10) next
11) print val

text should be something like "-2.220446E-015\000\063\000\b\016 \374\266h\344\377\277\020b\377\267\260\345\031\b\002 \374\266\376\377\377\377\034\325(\267h\344\377\277"

val should be -2

Due to the locale settings (in german setting decimal point is ',') atof() gives not the expected result.

brueninghaus

2012-01-15 22:54

reporter  

bugfix-locale-iges.diff (1,481 bytes)

brueninghaus

2012-01-15 22:59

reporter   ~0019133

Last edited: 2012-01-15 23:01

Import works when applying bugfix-locale-iges.diff.

I changed LC_NUMERIC to C and restore it afterwards. It is placed as deep in the code as possible (with respect to the goal to do it only once for a iges import) to minimize possible side effects.

I would change the status to fixed, but I see not how I could do that...

abv

2012-01-17 14:12

manager   ~0019148

We have modified Mantis settings so that now you should be able to switch the issue to resolved; could you please try?

barbier

2012-01-17 18:27

developer   ~0019158

IGES writer has to be fixed too.

llbatlle

2012-03-07 19:02

reporter   ~0019897

The same here (LANG=ca_ES.UTF-8). I have to start the opencascade programs with LANG=C.

This happens since years ago; in 6.3 already it worked that way.

marko_knoebl

2012-04-12 14:59

reporter   ~0020357

Exporting STEP is affected too.

llbatlle

2012-12-13 13:35

reporter   ~0022691

Any will to fix this by upstream developers? It's very annoying; it makes the programs crash in non-english or non-c locales.

I don't think the temporary locale change trick is a nice fix though. :)

Couldn't we change 'atof()' to 'atof_l()'? That should allow fixing the locale at runtime for that atof operation that has to be run in a specific locale.

abv

2012-12-13 15:39

manager   ~0022693

Good idea! Do you know if functions with _l suffix are supported on different platforms? Gnu LibC seems to have it, as well as MS VC++ since at least 7.x (VS 2005), so we must have a try.

To follow common pattern, we can define global function Atof() in Standard package, and then use it instead of atof() in all relevant places (currently I find ~ 1400 occurrences). The same should be done for other functions (e.g. strtod).

llbatlle

2012-12-18 18:48

reporter   ~0022748

I've no idea. But I imagine that a new Atof() is perfect, it calling atof_l when possible, and falling back to atof() in platforms where atof_l isn't available.

Same for strtod, yes.

llbatlle

2012-12-18 18:49

reporter   ~0022749

And just one more point against the 'temporary locale change': it can be terribly bad for a multithread program. The opencascade thread will affect the rest.

abv

2012-12-23 09:38

manager   ~0022808

The corrections are pushed to branch CR22898, please review.
I have tested it with locale "deutsh" on Windows built with VC 2009, 32-bit mode; other platforms are to be tested.

abv

2012-12-26 08:30

manager   ~0022842

Note that I have rebased CR22898 on current master

san

2012-12-26 19:39

developer   ~0022855

Branch CR22898 reviewed without remarks, ready for testing.

kgv

2013-01-07 13:42

developer   ~0022907

No patch is not ready for testing - Microsoft-specific names used.

Standard_CString.cxx
 264 namespace {
 265 class CLocalePtr {
 266 public:
 267 CLocalePtr () { myLocale = _create_locale (LC_ALL, "C"); }
 268 ~CLocalePtr () { _free_locale (myLocale); }
 269 operator _locale_t () const { return myLocale; }
 270 private:
 271 _locale_t myLocale;
 272 };
 273 static CLocalePtr theCLocale;
 274 };
On POSIX systems:
_locale_t -> locale_t
_create_locale (LC_ALL, "C") -> newlocale(LC_ALL_MASK, "C", NULL)
_free_locale(myLocale) -> freelocale(myLocale)

Notice that for older systems (though it is difficult to track strtod_l history) we can also use more complicated C++ syntax:
> double aResult;
> std::istringstream aStream (theString);
> std::locale aLocale ("C");
> aStream.imbue (aLocale);
> aStream >> aResult;

kgv

2013-01-08 13:55

developer   ~0022910

There is strtod_l on Linux glibc but no vprintf_l, vsprintf_l and vfprintf_l (though MacOS X provides them for a long time). Please see CR22898_1 branch for update.

Taking into account this fact patch should be redesigned somehow.

barbier

2013-01-08 16:14

developer   ~0022911

IMHO the submitter was right, it is better to switch to C locale when reading/writing files. As can be seen in the CR22898_1 branch, replacing atof/strtod/printf is a huge and error prone work.
This can be done by thread (uselocale+newlocale on Linux and Mac, _configurethreadlocale on Windows).

llbatlle

2013-01-08 17:02

reporter   ~0022912

If the locale can be changed per thread, fine.

abv

2013-01-09 10:50

manager   ~0022916

I have pushed to CR22898_1 a correction which should fix the problem of missing v*printf_l functions in GLibc. The proposed solution is to switch to C locale (thread-local) and back each time. Though this might appear to be expensive, the implementation of uselocale() in glibc contains just 3 comparisons and 7 assignments (including 4 thread-local), and I believe this should be much less than call to v*printf() itself, thus not too much overhead.

Also a test case is added.

Note that I have not changed yet all calls to *printf() functions to locale-independent ones; this is to be completed.

I have some doubts if check for presence and flavor of of strtod_l and other functions available in given compiler / environment are done correctly, this could likely be improved.

Please review anyway.

To Denis: though global replacement of functions like atof() and *printf() to OCCT-specific equivalents is a lot of changes, this is quite straightforward (actually, automatic) and guarantees that the code is independent on global locale. I would appreciate knowing your opinion on why this is error-prone.

barbier

2013-01-09 12:28

developer   ~0022918

My comment was misleading; I said that this is error prone because your branch will not compile on Linux (hint: HAVE_XLOCALE_H is set, thus the #else clause l.324 is never used), and it is hard to ensure that all occurences of operator<< are safe. You also have to check third-party code (as you did in OpenGl_GraphicDriver_Export.cxx, but you should not have used setlocale() because of threading issues).

BTW your test case shows here that everything works fine except with IGES (a patch is provided in this bugreport for reading, a trivial patch is also needed for writing) and STEP (not investigated yet). So modifying those low-level functions to fix this issue looks overkill to me.

kgv

2013-01-18 11:51

developer   ~0023028

Dear bugmaster,

patch was updated in CR22898_1 branch.
Please test compilation of the patch on all supported platforms and perform regression tests.

mkv

2013-01-28 19:26

tester   ~0023186

Dear kgv,
could you please rebase CR22898_1 branch with current master.

kgv

2013-01-29 08:49

developer   ~0023189

Last edited: 2013-01-29 08:49

Rebased patch located in CR22898_2 branch

mkv

2013-01-30 15:19

tester   ~0023208

Dear BugMaster,
Branch CR22898_2 (and products from GIT master) was compiled on Linux and Windows platforms.
Where is following compilation error on Linux platform:

http://jenkins-test-01.nnov.opencascade.com/user/mnt/my-views/view/CR22898_2/job/mnt-CR22898_2-master_build_occt_linux/2/console
../../../src/Standard/Standard_CLocaleSentry.cxx: In destructor 'virtual Standard_CLocaleSentry::~Standard_CLocaleSentry()':
../../../src/Standard/Standard_CLocaleSentry.cxx:113: error: '_locale_t' was not declared in this scope

kgv

2013-01-30 15:35

developer   ~0023209

Compilation error should be fixed now

dc

2013-01-30 18:46

reporter   ~0023213

Exporting STEP is affected too on Linux (german) WORKS on Windows (german)

mkv

2013-01-31 18:39

tester   ~0023223

Dear BugMaster,

Branch CR22898_2 was rebased on the current master.
Conflicts files was merged by KGV.

Branch CR222898_2 (and products from GIT master) was compiled on Linux and Windows platforms and tested.

Number of compiler warnings:

occt component :
Linux: 3 (3 on master)
Windows: 56 (57 on master)

products component :
Linux: 9 (9 on master)
Windows: 50 (50 on master)

Regressions:
http://occt-tests/CR22898-2-master-occt/Mandriva2010/bugs/xde/bug22898.html
bugs xde(005) bug22898 - on Linux only

Improvements:
No improvements

Testing cases:
bugs xde(005) bug22898

abv

2013-01-31 20:52

manager   ~0023224

The problem in test on Linux is obviously due to absence of Deutsh locale on the test machine. We shall either install Deutsh support or use one of available locales (fr or ru, I guess they both use comma as decimal radix).

abv

2013-01-31 20:57

manager   ~0023225

To Denis (sorry for late reply): thank you for highlighting the issue with Gl2Ps export, should be corrected now. As for the test case, it is clearly very incomplete as it checks only import / export -- the operation which is 100% affected. Note that export / import can pass well even if the file exported is wrong, this only checks consistency of export / import. The test case needs to be improved for sure. Actually a lot of other situations are possible with wrong locale; the fix has been actually tested by running the full set of OCCT tests with Deutsh locale.

kgv

2013-02-01 11:03

developer   ~0023227

Test case bugs/xde/bug22898 was modified in CR22898_2 branch to use French locale.

Please check only THIS test case - there no need to re-perform building from sources and whole testing company.

mkv

2013-02-01 18:52

tester   ~0023238

Dear BugMaster,

Test case bugs/xde/bug22898 was retested, it is OK.

Related Changesets

occt: master 91322f44

2013-02-01 14:41:16

abv


Committer: abv Details Diff
0022898: IGES import fails in german environment

Added DRAW command dlocale to set and query current locale of the C subsystem
Equivalents of C functions working with conversions of strings to/from reals added in Standard_CString, providing locale-independent behavior (using always "C" locale)
In DRAW packages, calls to atof() and atoi() are replaced by direct calls to Draw::Atof() and Draw::Atoi(), respectively, instead of substituting by #define
Use of atof(), strtod(), and *scanf() involving floating point conversions in OCCT code replaced by locale-independent Atof() and Strtod()
Calls to sprintf() involving floating point in OCCT code are replaced by call to locale-independent Sprintf(), except a few places where converted strings are used immediately for display in the 3d viewer
Changes of global locale are eliminated throughout OCCT code
Proposed correction for GNU libC where v*printf_l functions are absent
Added test case (bugs xde bug22898) for data exchange operations with non-standard locale
Use xlocale on Mac OS X and within glibc
Corrected strtod_l wrapper
Generate error rather than warning
Introduce Standard_CLocaleSentry replacement for removed OSD_Localizer
Standard_CLocaleSentry - copy locale string
Standard_CLocaleSentry - use _configthreadlocale on Windows
Standard_CLocaleSentry::GetCLocale() - return locale_t rather than void*
Corrected misprint in ~Standard_CLocaleSentry()
Use French locale in bug22898 test case
Mark test case as skipped if locale is unavailable on tested system.
Use fr_FR locale for tests on Mac OS X
Affected Issues
0022898
mod - src/Approx/Approx_SameParameter.cxx Diff File
mod - src/BOPTest/BOPTest_BOPCommands.cxx Diff File
mod - src/BOPTest/BOPTest_CurveCommands.cxx Diff File
mod - src/BOPTest/BOPTest_EFCommands.cxx Diff File
mod - src/BOPTest/BOPTest_LowCommands.cxx Diff File
mod - src/BOPTest/BOPTest_MTestCommands.cxx Diff File
mod - src/BOPTest/BOPTest_TolerCommands.cxx Diff File
mod - src/BOPTools/BOPTools_Checker.cxx Diff File
mod - src/BRepTest/BRepTest_BasicCommands.cxx Diff File
mod - src/BRepTest/BRepTest_ChamferCommands.cxx Diff File
mod - src/BRepTest/BRepTest_CheckCommands.cxx Diff File
mod - src/BRepTest/BRepTest_CurveCommands.cxx Diff File
mod - src/BRepTest/BRepTest_DraftAngleCommands.cxx Diff File
mod - src/BRepTest/BRepTest_ExtremaCommands.cxx Diff File
mod - src/BRepTest/BRepTest_FeatureCommands.cxx Diff File
mod - src/BRepTest/BRepTest_Fillet2DCommands.cxx Diff File
mod - src/BRepTest/BRepTest_FilletCommands.cxx Diff File
mod - src/BRepTest/BRepTest_FillingCommands.cxx Diff File
mod - src/BRepTest/BRepTest_GPropCommands.cxx Diff File
mod - src/BRepTest/BRepTest_OtherCommands.cxx Diff File
mod - src/BRepTest/BRepTest_PrimitiveCommands.cxx Diff File
mod - src/BRepTest/BRepTest_ProjectionCommands.cxx Diff File
mod - src/BRepTest/BRepTest_SurfaceCommands.cxx Diff File
mod - src/BRepTest/BRepTest_SweepCommands.cxx Diff File
mod - src/BRepTest/BRepTest_TopologyCommands.cxx Diff File
mod - src/DBRep/DBRep.cxx Diff File
mod - src/DDataStd/DDataStd_BasicCommands.cxx Diff File
mod - src/DDataStd/DDataStd_ConstraintCommands.cxx Diff File
mod - src/DDataStd/DDataStd_DatumCommands.cxx Diff File
mod - src/DDataStd/DDataStd_DrawDisplayCommands.cxx Diff File
mod - src/DDataStd/DDataStd_TreeCommands.cxx Diff File
mod - src/DDF/DDF_BrowserCommands.cxx Diff File
mod - src/DDF/DDF_IOStream.cxx Diff File
mod - src/DDF/DDF_TransactionCommands.cxx Diff File
mod - src/DDocStd/DDocStd_DocumentCommands.cxx Diff File
mod - src/DDocStd/DDocStd_MTMCommands.cxx Diff File
mod - src/DNaming/DNaming_BasicCommands.cxx Diff File
mod - src/DNaming/DNaming_ModelingCommands.cxx Diff File
mod - src/DNaming/DNaming_SelectionCommands.cxx Diff File
mod - src/DPrsStd/DPrsStd_AISPresentationCommands.cxx Diff File
mod - src/Draw/Draw.cdl Diff File
mod - src/Draw/Draw.cxx Diff File
mod - src/Draw/Draw_Appli.hxx Diff File
mod - src/Draw/Draw_BasicCommands.cxx Diff File
mod - src/Draw/Draw_GraphicCommands.cxx Diff File
mod - src/Draw/Draw_Interpretor.cxx Diff File
mod - src/Draw/Draw_ProgressIndicator.cxx Diff File
mod - src/Draw/Draw_UnitCommands.cxx Diff File
mod - src/Draw/Draw_VariableCommands.cxx Diff File
mod - src/DrawDim/DrawDim_PlanarDimensionCommands.cxx Diff File
mod - src/DrawTrSurf/DrawTrSurf.cxx Diff File
mod - src/DrawTrSurf/DrawTrSurf_Triangulation.cxx Diff File
mod - src/Dynamic/Dynamic_FuzzyDefinitionsDictionary.cxx Diff File
mod - src/Dynamic/Dynamic_MethodDefinitionsDictionary.cxx Diff File
mod - src/Expr/Expr_NumericValue.cxx Diff File
mod - src/ExprIntrp/ExprIntrp_yaccintrf.cxx Diff File
mod - src/FSD/FSD_CmpFile.cdl Diff File
mod - src/FSD/FSD_CmpFile.cxx Diff File
mod - src/FSD/FSD_File.cxx Diff File
mod - src/GeometryTest/GeometryTest_API2dCommands.cxx Diff File
mod - src/GeometryTest/GeometryTest_APICommands.cxx Diff File
mod - src/GeometryTest/GeometryTest_ConstraintCommands.cxx Diff File
mod - src/GeometryTest/GeometryTest_ContinuityCommands.cxx Diff File
mod - src/GeometryTest/GeometryTest_CurveCommands.cxx Diff File
mod - src/GeometryTest/GeometryTest_FairCurveCommands.cxx Diff File
mod - src/GeometryTest/GeometryTest_PolyCommands.cxx Diff File
mod - src/GeometryTest/GeometryTest_SurfaceCommands.cxx Diff File
mod - src/GeometryTest/GeometryTest_TestProjCommands.cxx Diff File
mod - src/GeomliteTest/GeomliteTest_API2dCommands.cxx Diff File
mod - src/GeomliteTest/GeomliteTest_ApproxCommands.cxx Diff File
mod - src/GeomliteTest/GeomliteTest_CurveCommands.cxx Diff File
mod - src/GeomliteTest/GeomliteTest_ModificationCommands.cxx Diff File
mod - src/GeomliteTest/GeomliteTest_SurfaceCommands.cxx Diff File
mod - src/GeomProjLib/GeomProjLib.cxx Diff File
mod - src/HLRTest/HLRTest.cxx Diff File
mod - src/IGESData/IGESData_GlobalSection.cxx Diff File
mod - src/IGESData/IGESData_ParamReader.cxx Diff File
mod - src/IGESGeom/IGESGeom_ToolCircularArc.cxx Diff File
mod - src/IGESGeom/IGESGeom_ToolConicArc.cxx Diff File
mod - src/IGESGeom/IGESGeom_ToolPlane.cxx Diff File
mod - src/IGESSelect/IGESSelect_Activator.cxx Diff File
mod - src/IGESSelect/IGESSelect_Dumper.cxx Diff File
mod - src/IGESSelect/IGESSelect_FloatFormat.cxx Diff File
mod - src/IGESToBRep/IGESToBRep_Reader.cxx Diff File
mod - src/Interface/Interface_FileReaderData.cxx Diff File
mod - src/Interface/Interface_FloatWriter.cxx Diff File
mod - src/Interface/Interface_Static.cxx Diff File
mod - src/Materials/Materials_MaterialDefinition.cxx Diff File
mod - src/Materials/Materials_MaterialsDictionary.cxx Diff File
mod - src/MeshTest/MeshTest.cxx Diff File
mod - src/MeshTest/MeshTest_PluginCommands.cxx Diff File
mod - src/Message/Message.cxx Diff File
mod - src/Message/Message_Msg.cxx Diff File
mod - src/MoniTool/MoniTool_Timer.cxx Diff File
mod - src/MoniTool/MoniTool_TypedValue.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_Export.cxx Diff File
mod - src/OSD/FILES Diff File
mod - src/OSD/OSD.cdl Diff File
mod - src/OSD/OSD.cxx Diff File
rm - src/OSD/OSD_Localizer.cdl Diff File
rm - src/OSD/OSD_Localizer.cxx Diff File
rm - src/OSD/OSD_Real2String.cdl Diff File
rm - src/OSD/OSD_Real2String.cxx Diff File
mod - src/PCDM/PCDM_RetrievalDriver.cxx Diff File
mod - src/PCDM/PCDM_StorageDriver.cxx Diff File
mod - src/PCollection/PCollection_HAsciiString.cxx Diff File
mod - src/Poly/Poly_CoherentNode.cxx Diff File
mod - src/QABugs/QABugs_1.cxx Diff File
mod - src/QABugs/QABugs_10.cxx Diff File
mod - src/QABugs/QABugs_11.cxx Diff File
mod - src/QABugs/QABugs_12.cxx Diff File
mod - src/QABugs/QABugs_13.cxx Diff File
mod - src/QABugs/QABugs_14.cxx Diff File
mod - src/QABugs/QABugs_15.cxx Diff File
mod - src/QABugs/QABugs_16.cxx Diff File
mod - src/QABugs/QABugs_17.cxx Diff File
mod - src/QABugs/QABugs_18.cxx Diff File
mod - src/QABugs/QABugs_2.cxx Diff File
mod - src/QABugs/QABugs_3.cxx Diff File
mod - src/QABugs/QABugs_4.cxx Diff File
mod - src/QABugs/QABugs_5.cxx Diff File
mod - src/QABugs/QABugs_6.cxx Diff File
mod - src/QABugs/QABugs_8.cxx Diff File
mod - src/QABugs/QABugs_9.cxx Diff File
mod - src/QADNaming/QADNaming.cxx Diff File
mod - src/QADNaming/QADNaming_BasicCommands.cxx Diff File
mod - src/QADNaming/QADNaming_BuilderCommands.cxx Diff File
mod - src/QADNaming/QADNaming_IteratorsCommands.cxx Diff File
mod - src/QADNaming/QADNaming_SelectionCommands.cxx Diff File
mod - src/QADraw/QADraw.cxx Diff File
mod - src/QANCollection/QANCollection2.cxx Diff File
mod - src/QANCollection/QANCollection3.cxx Diff File
mod - src/QANewDBRepNaming/QANewDBRepNaming.cxx Diff File
mod - src/QANewDBRepNaming/QANewDBRepNaming_FeatureCommands.cxx Diff File
mod - src/QANewDBRepNaming/QANewDBRepNaming_PrimitiveCommands.cxx Diff File
mod - src/RWStl/RWStl.cxx Diff File
mod - src/Standard/FILES Diff File
mod - src/Standard/Standard.cxx Diff File
add - src/Standard/Standard_CLocaleSentry.cxx Diff File
add - src/Standard/Standard_CLocaleSentry.hxx Diff File
mod - src/Standard/Standard_CString.cxx Diff File
mod - src/StepSelect/StepSelect_Activator.cxx Diff File
mod - src/StepSelect/StepSelect_FloatFormat.cxx Diff File
mod - src/Storage/Storage_Schema.cxx Diff File
mod - src/SWDRAW/SWDRAW.cxx Diff File
mod - src/SWDRAW/SWDRAW_ShapeAnalysis.cxx Diff File
mod - src/SWDRAW/SWDRAW_ShapeCustom.cxx Diff File
mod - src/SWDRAW/SWDRAW_ShapeFix.cxx Diff File
mod - src/SWDRAW/SWDRAW_ShapeTool.cxx Diff File
mod - src/SWDRAW/SWDRAW_ShapeUpgrade.cxx Diff File
mod - src/TCollection/TCollection_AsciiString.cxx Diff File
mod - src/TCollection/TCollection_ExtendedString.cxx Diff File
mod - src/TestTopOpe/TestTopOpe_BOOP.cxx Diff File
mod - src/TestTopOpe/TestTopOpe_BOOPCommands.cxx Diff File
mod - src/TestTopOpe/TestTopOpe_CORCommands.cxx Diff File
mod - src/TestTopOpe/TestTopOpe_HDSCommands.cxx Diff File
mod - src/TestTopOpe/TestTopOpe_MesureCommands.cxx Diff File
mod - src/TestTopOpe/TestTopOpe_OtherCommands.cxx Diff File
mod - src/TestTopOpeDraw/TestTopOpeDraw_OtherCommands.cxx Diff File
mod - src/TestTopOpeTools/TestTopOpeTools_TraceCommands.cxx Diff File
mod - src/TObjDRAW/TObjDRAW.cxx Diff File
mod - src/TopOpeBRep/TopOpeBRep_traceALWL.cxx Diff File
mod - src/TopOpeBRepBuild/TopOpeBRepBuild_Griddump.cxx Diff File
mod - src/TopTools/TopTools_ShapeSet.cxx Diff File
mod - src/Units/Units_UnitsDictionary.cxx Diff File
mod - src/ViewerTest/ViewerTest.cxx Diff File
mod - src/ViewerTest/ViewerTest_FilletCommands.cxx Diff File
mod - src/ViewerTest/ViewerTest_ObjectCommands.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
mod - src/Voxel/Voxel_Reader.cxx Diff File
mod - src/VrmlData/VrmlData_Geometry.cxx Diff File
mod - src/VrmlData/VrmlData_Group.cxx Diff File
mod - src/VrmlData/VrmlData_IndexedFaceSet.cxx Diff File
mod - src/VrmlData/VrmlData_Material.cxx Diff File
mod - src/VrmlData/VrmlData_Scene.cxx Diff File
mod - src/VrmlData/VrmlData_WorldInfo.cxx Diff File
mod - src/WNT/WNT_GraphicDevice.cxx Diff File
mod - src/XDEDRAW/XDEDRAW.cxx Diff File
mod - src/XDEDRAW/XDEDRAW_Colors.cxx Diff File
mod - src/XDEDRAW/XDEDRAW_Common.cxx Diff File
mod - src/XDEDRAW/XDEDRAW_Layers.cxx Diff File
mod - src/XDEDRAW/XDEDRAW_Props.cxx Diff File
mod - src/XDEDRAW/XDEDRAW_Shapes.cxx Diff File
mod - src/XmlLDrivers/XmlLDrivers.cxx Diff File
mod - src/XmlLDrivers/XmlLDrivers_DocumentRetrievalDriver.cxx Diff File
mod - src/XmlLDrivers/XmlLDrivers_DocumentStorageDriver.cxx Diff File
mod - src/XmlMDataStd/XmlMDataStd_NamedDataDriver.cxx Diff File
mod - src/XmlMDataStd/XmlMDataStd_RealArrayDriver.cxx Diff File
mod - src/XmlMDataStd/XmlMDataStd_RealDriver.cxx Diff File
mod - src/XmlMNaming/XmlMNaming_Shape1.cxx Diff File
mod - src/XmlMPrsStd/XmlMPrsStd_PositionDriver.cxx Diff File
mod - src/XmlMXCAFDoc/XmlMXCAFDoc_CentroidDriver.cxx Diff File
mod - src/XmlMXCAFDoc/XmlMXCAFDoc_DimTolDriver.cxx Diff File
mod - src/XmlObjMgt/XmlObjMgt.cxx Diff File
mod - src/XmlObjMgt/XmlObjMgt_GP.cxx Diff File
mod - src/XSDRAW/XSDRAW.cxx Diff File
mod - src/XSDRAWIGES/XSDRAWIGES.cxx Diff File
mod - src/XSDRAWSTEP/XSDRAWSTEP.cxx Diff File
mod - src/XSDRAWSTLVRML/XSDRAWSTLVRML.cxx Diff File
mod - tests/bugs/begin Diff File
mod - tests/bugs/parse.rules Diff File
add - tests/bugs/xde/bug22898 Diff File

Issue History

Date Modified Username Field Change
2012-01-11 02:59 brueninghaus New Issue
2012-01-11 02:59 brueninghaus Assigned To => gka
2012-01-11 02:59 brueninghaus File Added: iges-import-fail_apply-locale.cpp
2012-01-11 02:59 brueninghaus File Added: iges-import-fail_using_qt.cpp
2012-01-11 03:00 brueninghaus File Added: iges-import-work.cpp
2012-01-11 03:00 brueninghaus File Added: iges-import-work_set-locale.cpp
2012-01-15 22:05 brueninghaus Note Added: 0019132
2012-01-15 22:54 brueninghaus File Added: bugfix-locale-iges.diff
2012-01-15 22:59 brueninghaus Note Added: 0019133
2012-01-15 23:01 brueninghaus Note Edited: 0019133
2012-01-17 14:06 bugmaster Assigned To gka => brueninghaus
2012-01-17 14:06 bugmaster Status new => assigned
2012-01-17 14:12 abv Note Added: 0019148
2012-01-17 16:26 abv Relationship added related to 0022808
2012-01-17 18:27 barbier Note Added: 0019158
2012-01-30 08:17 abv Relationship added related to 0022933
2012-03-07 19:02 llbatlle Note Added: 0019897
2012-04-12 14:59 marko_knoebl Note Added: 0020357
2012-12-13 13:35 llbatlle Note Added: 0022691
2012-12-13 14:47 abv Assigned To brueninghaus => abv
2012-12-13 15:39 abv Note Added: 0022693
2012-12-18 18:48 llbatlle Note Added: 0022748
2012-12-18 18:49 llbatlle Note Added: 0022749
2012-12-18 18:52 abv Target Version => 6.6.0
2012-12-23 09:38 abv Note Added: 0022808
2012-12-23 09:38 abv Assigned To abv => kgv
2012-12-23 09:38 abv Status assigned => resolved
2012-12-26 08:30 abv Note Added: 0022842
2012-12-26 11:29 san Relationship added related to 0021713
2012-12-26 19:39 san Note Added: 0022855
2012-12-26 19:39 san Assigned To kgv => bugmaster
2012-12-26 19:39 san Status resolved => reviewed
2013-01-07 13:42 kgv Note Added: 0022907
2013-01-07 13:42 kgv Assigned To bugmaster => abv
2013-01-07 13:42 kgv Status reviewed => assigned
2013-01-08 13:55 kgv Note Added: 0022910
2013-01-08 16:14 barbier Note Added: 0022911
2013-01-08 17:02 llbatlle Note Added: 0022912
2013-01-09 10:50 abv Note Added: 0022916
2013-01-09 10:50 abv Assigned To abv => kgv
2013-01-09 10:50 abv Status assigned => resolved
2013-01-09 12:28 barbier Note Added: 0022918
2013-01-18 11:51 kgv Note Added: 0023028
2013-01-18 11:51 kgv Assigned To kgv => bugmaster
2013-01-18 11:51 kgv Status resolved => feedback
2013-01-25 10:19 bugmaster Assigned To bugmaster => mkv
2013-01-25 10:19 bugmaster Status feedback => reviewed
2013-01-28 19:26 mkv Note Added: 0023186
2013-01-28 19:27 mkv Assigned To mkv => kgv
2013-01-28 19:27 mkv Status reviewed => feedback
2013-01-29 08:49 kgv Note Added: 0023189
2013-01-29 08:49 kgv Assigned To kgv => mkv
2013-01-29 08:49 kgv Note Edited: 0023189
2013-01-29 10:24 abv Status feedback => reviewed
2013-01-30 15:19 mkv Note Added: 0023208
2013-01-30 15:20 mkv Assigned To mkv => kgv
2013-01-30 15:20 mkv Status reviewed => assigned
2013-01-30 15:35 kgv Note Added: 0023209
2013-01-30 15:35 kgv Assigned To kgv => mkv
2013-01-30 15:35 kgv Status assigned => resolved
2013-01-30 15:35 kgv Status resolved => reviewed
2013-01-30 18:46 dc Note Added: 0023213
2013-01-31 18:39 mkv Note Added: 0023223
2013-01-31 20:52 abv Note Added: 0023224
2013-01-31 20:57 abv Note Added: 0023225
2013-02-01 11:03 kgv Note Added: 0023227
2013-02-01 18:52 mkv Note Added: 0023238
2013-02-01 18:53 mkv Test case number => bugs xde(005) bug22898
2013-02-01 18:53 mkv Assigned To mkv => bugmaster
2013-02-01 18:53 mkv Status reviewed => tested
2013-02-04 14:47 abv Changeset attached => occt master 91322f44
2013-02-04 14:47 abv Assigned To bugmaster => abv
2013-02-04 14:47 abv Status tested => verified
2013-02-04 14:47 abv Resolution open => fixed
2013-04-23 13:36 aiv Status verified => closed
2013-04-29 15:21 aiv Fixed in Version => 6.6.0
2017-08-03 09:54 kgv Relationship added parent of 0028971