mirror of
https://github.com/koalaman/shellcheck
synced 2025-07-16 10:03:08 -07:00
Save and restore pending here docs when sourcing files (fixes #2803)
This commit is contained in:
parent
372c0b667e
commit
9490b94886
3 changed files with 19 additions and 3 deletions
|
@ -2283,8 +2283,13 @@ readSource t@(T_Redirecting _ _ (T_SimpleCommand cmdId _ (cmd:file':rest'))) = d
|
|||
|
||||
subRead name script =
|
||||
withContext (ContextSource name) $
|
||||
inSeparateContext $
|
||||
subParse (initialPos name) (readScriptFile True) script
|
||||
inSeparateContext $ do
|
||||
oldState <- getState
|
||||
setState $ oldState { pendingHereDocs = [] }
|
||||
result <- subParse (initialPos name) (readScriptFile True) script
|
||||
newState <- getState
|
||||
setState $ newState { pendingHereDocs = pendingHereDocs oldState }
|
||||
return result
|
||||
readSource t = return t
|
||||
|
||||
|
||||
|
@ -3322,6 +3327,7 @@ readScriptFile sourced = do
|
|||
then do
|
||||
commands <- readCompoundListOrEmpty
|
||||
id <- endSpan start
|
||||
readPendingHereDocs
|
||||
verifyEof
|
||||
let script = T_Annotation annotationId annotations $
|
||||
T_Script id shebang commands
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue