Xiangrong Fang wrote > The end of array mark is added by lua52.pas, if you read the source > code... > > 在 六, 12月 29, 2012 at 9:39 下午,leledumbo <
> [email protected] > > 写道: > Reading luaL_newlib documentation and lua52.pas implementation of it (it's > a > macro in the original C code), I see that you need a sentinel value to > mark > the end of the array by putting nil in the name part. lua52.pas does not append a sentinel for you. You must do it yourself. Forgetting to append a sentinel will lead to unpredictable behavior of Lua internals. Inside API functions in lua52.pas *@lr* is always equal to *@lr[0]* because *lr* is an open array parameter. -- View this message in context: http://free-pascal-lazarus.989080.n3.nabble.com/Lazarus-SEGFAULT-difference-between-pointer-and-dynarray-tp4028296p4036026.html Sent from the Free Pascal - Lazarus mailing list archive at Nabble.com. -- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
