mirror of
https://github.com/openwrt/luci.git
synced 2025-12-26 15:36:22 +04:00
06901331f5c8a0cfdb19520e1feed90fd4415b32
I had occasion to use nixio.exece() recently and I could not figure out what it wanted for the third argument (the environment) as no matter what sort of table I passed, even nixio.getenv(), would fail with bad argument #3 to 'exece' (invalid environment). What it should expect is a table full of string values for keys and something that can be converted to a string as a value, however it inverts the value of lua_type() and compares it against a type, which will never evaluate to true. Getting past this, the code inserts the KEY=VALUE string before the arg userdata, and then forgets to take the env userdata into account when collecting the arguments back into a C char**. This patch addresses all these issues and provides a working nixio.exece(). [Fixes #500]
Description
Languages
JavaScript
59.2%
C
18.4%
Lua
11.2%
CSS
3.8%
HTML
2.3%
Other
5%