diff --git a/src/ShellCheck/Analytics.hs b/src/ShellCheck/Analytics.hs index aed0e22..f275229 100644 --- a/src/ShellCheck/Analytics.hs +++ b/src/ShellCheck/Analytics.hs @@ -2823,11 +2823,10 @@ checkReadWithoutR _ t@T_SimpleCommand {} | t `isUnqualifiedCommand` "read" info (getId $ getCommandTokenOrThis t) 2162 "read without -r will mangle backslashes." where flags = getAllFlags t - has_t0 = fromMaybe False $ do + has_t0 = Just "0" == do parsed <- getOpts flagsForRead flags t <- lookup "t" parsed - str <- getLiteralString t - return $ str == "0" + getLiteralString t checkReadWithoutR _ _ = return () diff --git a/src/ShellCheck/AnalyzerLib.hs b/src/ShellCheck/AnalyzerLib.hs index 69eaf63..5ff1c7d 100644 --- a/src/ShellCheck/AnalyzerLib.hs +++ b/src/ShellCheck/AnalyzerLib.hs @@ -454,7 +454,7 @@ leadType params t = T_BatsTest {} -> SubshellScope "@bats test" T_CoProcBody _ _ -> SubshellScope "coproc" T_Redirecting {} -> - if fromMaybe False causesSubshell + if causesSubshell == Just True then SubshellScope "pipeline" else NoneScope _ -> NoneScope