fix: change current_provider default value to nil #88
+6
−6
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 PR is based on issue #87
The main cause of #87 is because current_provider in state.lua is initial as
{ chat = "", command = ""}
, whenchat_handler.lua
ChatHandler:get_provider
first time been called,current_prov
will be nil so it will try to getprov
by calledState:get_provider
, but it will return "" byself.file_state.current_provider.chat
(orself.file_state.current_provider.command
) because thefile_state
hasn't updated yet.And since empty string is truthy, so
chat_handler.lua:78
(if not prov
) will be false, then finally lead to query a provider with empty string.One of the solutions I came up with was to simply set
current_provider
to{ chat = nil, command = nil }
when init states.