This is a separate issue from the since confirmed bug in the other thread (though it uses some similar functions). What is occurring is one inline Lua function is obtaining an inline function from a custom option stored in a meter but is getting mangled when it contains certain formulas due to some unexpected parsing.
It appears to be related to parentheses and possibly quotes but I've tried with multiple different quoting methods and can't seem to avoid the behavior.
The `Chk()` function (correctly) parses and returns the `Cust` option stored in its own meter (uncomment the `print()` line from the script to view the returned string). This option itself contains an inline function. For the `ExampleText` meter this just returns a concatenation of the two input arguments which are then displayed as a string.
However despite displaying the strings as expected in the string meter if one uncomments the `print()` line in the `Disp()` function and looks at the Rainmeter log it's showing that on subsequent skin updates the second argument gets mangled and becomes a nil value.
This is made more obvious in the second `Example` meter. The first commented out `Cust` option function of that meter works as expected, both strings are equivalent so it returns the third arg (there are also no formulas in this version). However the uncommented `Cust` function fails due to unexpected parsing (see log), so no shape height is produced due to the errors.
Test case with various examples to play around with (see Rainmeter log and comments):
INI:
Script:
It appears to be related to parentheses and possibly quotes but I've tried with multiple different quoting methods and can't seem to avoid the behavior.
The `Chk()` function (correctly) parses and returns the `Cust` option stored in its own meter (uncomment the `print()` line from the script to view the returned string). This option itself contains an inline function. For the `ExampleText` meter this just returns a concatenation of the two input arguments which are then displayed as a string.
However despite displaying the strings as expected in the string meter if one uncomments the `print()` line in the `Disp()` function and looks at the Rainmeter log it's showing that on subsequent skin updates the second argument gets mangled and becomes a nil value.
This is made more obvious in the second `Example` meter. The first commented out `Cust` option function of that meter works as expected, both strings are equivalent so it returns the third arg (there are also no formulas in this version). However the uncommented `Cust` function fails due to unexpected parsing (see log), so no shape height is produced due to the errors.
Test case with various examples to play around with (see Rainmeter log and comments):
INI:
Statistics: Posted by Crest — June 3rd, 2024, 8:02 am