Troubleshooting
Problem
If you try to run the evalTop_ command via an IBM Rational DOORS trigger, you will get an error window with a DOORS exception. This command should not be used in a trigger.
Symptom
If you try to run the evalTop_ command via an IBM Rational DOORS trigger, you will get an error window with a DOORS exception similar to:
DOORS: doors.exe caused an EXCEPTION_ACCESS_VIOLATION in module doors.exe at 001B:00564AAE
DOORS: 001B:00564AAE (0xBDFAA947 0x1000F715 0x1000F70A 0x040984A8) doors.exe
DOORS: 001B:00672E2C (0x7C422F0C 0x7C422F20 0x00000000 0x041174A4) doors.exe
DOORS: 001B:78134C58 (0x7C422F20 0x00000000 0x041174A4 0x7C42319E) MSVCR80.dll, free()+0236 byte(s)
DOORS: 001B:7C422F0C (0x00000000 0x041174A4 0x7C42319E 0x00000001) MSVCP80.dll, std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy()+0051 byte(s)
DOORS: 001B:7C422F20 (0x00000001 0x00000000 0x006724B0 0xBDFAA9C3) MSVCP80.dll, std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy()+0071 byte(s)
DOORS: 001B:7C42319E (0xBDFAA9C3 0x1000F715 0x1000F70A 0x040984A8) MSVCP80.dll, std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >()+0009 byte(s)
Cause
This has been identified as a documentation defect under APAR PM82252. The documentation needs to explain that using evalTop_() in an IBM Rational DOORS trigger is not supported and why.
Environment
This was seen on IBM Rational DOORS 9.4, but the issue is version-independent.
Diagnosing The Problem
To determine if you are having this problem, check to see if you are using the evalTop_() command in an IBM Rational DOORS trigger.
Resolving The Problem
Using the evalTop_() command from inside an IBM Rational DOORS trigger is not safe. If you are using evalTop_() to define variables at startup, the recommended way to do this is by using startup files to define the variables at startup. You can also use registry entries or command-line switches.
If you want to centralize how the variables are set, one way would be to send a startup file to all the users that includes a file from a network share that all users can access. If you do that, then you would only need to update one file to affect all users.
Was this topic helpful?
Document Information
Modified date:
01 May 2020
UID
swg21668356