NatLabRockies / NatLabRockies/OpenStudio
OpenStudio gbXML ReverseTranslator crash on file from ArchiCad/StruSoft
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 646
- Forks
- 237
- Avg merge
- 3d 11h
- Merged PRs (30d)
- 10
Description
Issue overview
User reported crash of OpenStudio Application when importing gbXML file from ArchiCad/StruSoft. File is attached to original issue https://github.com/openstudiocoalition/OpenStudioApplication/issues/726
Current Behavior
The date format in the gbXML file may be invalid according to the schema. This generates an assertion/crash in the gbXML ReverseTranslator::translateSchedule.
Expected Behavior
It would be better if the ReverseTranslator skipped invalid elements rather than crashing.
Steps to Reproduce
Use ReverseTranslator to convert the gbXML file https://github.com/user-attachments/files/16567495/M-K.OS.test.file.xml.zip to OpenStudio
Possible Solution
Skip importing invalid elements rather than crash or provide alternate method to handle invalid elements.
Details
Environment
Some additional details about your environment for this issue (if relevant):
- Platform (Operating system, version):
- Version of OpenStudio (if using an intermediate build, include SHA):
Context
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at gbXML ReverseTranslator::translateSchedule and reproduce the crash with the attached M-K.OS.test.file.xml file from ArchiCad/StruSoft. Trace the invalid date handling and determine where the assertion occurs. Done means the ReverseTranslator skips invalid elements or handles them without crashing while converting the file.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100