fix: nil pointer dereference panic in shellAction #4453
+10
−4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The shellAction function was calling cmd.Flags() directly multiple times throughout the function instead of using the flags variable that was already captured at the beginning (line 72).
In certain execution paths, cmd.Flags() could return nil, causing a panic:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x2 addr=0x98 pc=0x...]
This fix changes three locations to consistently use the flags variable:
Additionally, adds a nil check for inst.Config before accessing it to prevent similar panics and provide clearer error messages when instances have configuration errors.