-
Type:
Bug Report
-
Status: Closed
-
Priority:
Minor
-
Resolution: Fixed
-
Affects Version/s: 5.2.1-B1
-
Fix Version/s: 5.2.1-B2
-
Component/s: Data Management
-
Labels:None
-
Change Log Group:Fixed
-
Change Log Message:Presence of "kEventHandler" sub-class in displayed error stack trace prevented error from being logged.
-
Story Points:1
-
Copy Issue Key:
-
Patch Instructions:
In INP-811 we've introduced logging engine, that allows to log every error, that is happening in In-Portal in form, that allows easy error log processing later on.
However recently I've noticed a case, where error is happening inside error processing code of kLogger class. PHP threats such case as super-error and doesn't pass it back to kLogger class to prevent recursion. Because of it both errors are not logged:
- error, that happened originally
- error during original error processing in kLogger class
In this case, problem happened because of kBase::__toString method thought, that no harm will come if it calls kBase::getPrefixSpecial method. It turned out, that this method has an descendant in kEventHandler class, that throws an exception at all times. This is actually a protection against developers calling this method by accident and getting incorrect results (because kEvent::getPrefixSpecial method should be used in such cases).