lua_cliargs icon indicating copy to clipboard operation
lua_cliargs copied to clipboard

Crash when reading numbers and/or boolean values from ini files

Open deining opened this issue 5 years ago • 1 comments

Even with #63 applied, reading from .ini files can fail:

Minimum working example:

test.ini

[database]
verbose=true
port=5432

test.lua

1 cli = require 'cliargs';
2 tbl = cli:read_defaults('test.ini', 'ini', 'database', false);

Running test.lua result in this error:

attempt to index a boolean value (local 'str')
stack traceback:
	./cliargs/utils/trim.lua:3: in function 'cliargs.utils.trim'
	./cliargs/config_loader.lua:99: in function 'cliargs.config_loader.from_ini'
	(...tail calls...)
	./test.lua:2: in main chunk
	[C]: in ?

Notes:

  • the error does not occur once I read only string values from the ini file
  • the error disappear once I set the fourth parameter of function read_defaults to true (line 2)

deining avatar Jun 27 '20 14:06 deining

PR #63 now contains a failing test case #read_defaults_from_ini_file_group_with_cast related this issue. It is currently disabled as there is no fix available yet.

deining avatar Jul 04 '20 09:07 deining