diff --git a/auto/run_test.erb b/auto/run_test.erb index e334d657..40672b67 100644 --- a/auto/run_test.erb +++ b/auto/run_test.erb @@ -8,7 +8,11 @@ static void run_test(UnityTestFunction func, const char* name, UNITY_LINE_TYPE l return; #endif Unity.NumberOfTests++; +#ifdef UNITY_DETAIL_STACK_SIZE + Unity.CurrentDetailStackSize = 0; +#else UNITY_CLR_DETAILS(); +#endif UNITY_EXEC_TIME_START(); CMock_Init(); if (TEST_PROTECT()) diff --git a/src/unity.c b/src/unity.c index d8a8dd35..69ee3b38 100644 --- a/src/unity.c +++ b/src/unity.c @@ -2527,8 +2527,12 @@ void UnityBegin(const char* filename) Unity.TestIgnores = 0; Unity.CurrentTestFailed = 0; Unity.CurrentTestIgnored = 0; - +#ifdef UNITY_DETAIL_STACK_SIZE + Unity.CurrentDetailStackSize = 0; +#else UNITY_CLR_DETAILS(); +#endif + UNITY_OUTPUT_START(); } diff --git a/src/unity_internals.h b/src/unity_internals.h index 67e99463..d5f90c55 100644 --- a/src/unity_internals.h +++ b/src/unity_internals.h @@ -1318,8 +1318,8 @@ int UnityTestMatches(void); #define UNITY_DETAIL_PUSH(label, value) UnityPushDetail((UNITY_DETAIL_LABEL_TYPE)(label), (UNITY_DETAIL_VALUE_TYPE)(value), __LINE__) #define UNITY_DETAIL_POP(label, value) UnityPopDetail((UNITY_DETAIL_LABEL_TYPE)(label), (UNITY_DETAIL_VALUE_TYPE)(value), __LINE__) #else -#define UNITY_DETAIL_PUSH(label, value) UNITY_TEST_FAIL((UNITY_LINE_TYPE)(line), UnityStrErrDetailStack) -#define UNITY_DETAIL_POP(label, value) UNITY_TEST_FAIL((UNITY_LINE_TYPE)(line), UnityStrErrDetailStack) +#define UNITY_DETAIL_PUSH(label, value) UNITY_TEST_FAIL((UNITY_LINE_TYPE)(__LINE__), UnityStrErrDetailStack) +#define UNITY_DETAIL_POP(label, value) UNITY_TEST_FAIL((UNITY_LINE_TYPE)(__LINE__), UnityStrErrDetailStack) #endif /* End of UNITY_INTERNALS_H */