From 7d3a2abf0137c5257eeb0a8e0f76381b79f1e7bb Mon Sep 17 00:00:00 2001 From: albert-github Date: Wed, 18 Mar 2015 18:44:53 +0100 Subject: Crash in case of non generic interface in Fortran In case of a non generic interface in Fortran it happened that doxygen crashed due to the fact that the pointer for setting the endBodyLine does not exist. The line number is only defined for GENERIC interfaces and therefore it should not be set anyhow when ending a non generic interface. --- src/fortranscanner.l | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fortranscanner.l b/src/fortranscanner.l index 1cfa13d..094bfb1 100644 --- a/src/fortranscanner.l +++ b/src/fortranscanner.l @@ -485,7 +485,7 @@ SCOPENAME ({ID}{BS}"::"{BS})* ^{BS}end{BS}interface({BS_}{ID})? { // end scope only if GENERIC interface - last_entry->parent()->endBodyLine = yyLineNr - 1; + if (ifType == IF_GENERIC)last_entry->parent()->endBodyLine = yyLineNr - 1; if (ifType == IF_GENERIC && !endScope(current_root)) yyterminate(); -- cgit v0.12