diff options
author | William Wilgus <me.theuser@yahoo.com> | 2018-10-12 11:58:09 -0400 |
---|---|---|
committer | William Wilgus <me.theuser@yahoo.com> | 2018-10-12 17:31:25 -0400 |
commit | 0b7a8d5afd3d751fd0f6454098bc9fd1d05ee764 (patch) | |
tree | 29cf72355d65dda948d16aef100e1eb9542fedf6 /apps/plugins/lua | |
parent | d2cef81bba743cc7ee209bddf81f1c1e97387250 (diff) | |
download | rockbox-0b7a8d5afd3d751fd0f6454098bc9fd1d05ee764.tar.gz rockbox-0b7a8d5afd3d751fd0f6454098bc9fd1d05ee764.zip |
Lua remove unusable/unneeded functions from rocklib_aux
rocklib_aux is auto generated from plugin.h
there are a few functions that get added automatically that
are unusable without their companion functions or duplicate
functionality already supplied by lua
Duplicated functionality:
rb->rand, rb->srand
-- see math.rand math.srand
rb->remove, rb->rename
-- see os.remove, os.rename
Unusable:
rb->open_utf8
-- this should be added to the lua file open routines (if at all)
rb->codec_run_proc, rb->codec_close
-- without rb->codec_load_file these are pointless
rb->timer_set_period, timer_unregister
-- even with timer_register implemented lua is not
-- reentrant and crashes the state when timer fires
Shouldn't be used!:
rb->strlcpy, rb->strlcat, rb->strcpy, rb->strcat
-- lua reuses strings by hashed values you break this contract if
-- you change strings behind its back plus lua provides a way to
-- do these functions safely within the strings api
Change-Id: I2f65704a90930378cbbceb254e52f61e8074471e
Diffstat (limited to 'apps/plugins/lua')
-rwxr-xr-x | apps/plugins/lua/rocklib_aux.pl | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/apps/plugins/lua/rocklib_aux.pl b/apps/plugins/lua/rocklib_aux.pl index 9103fccbda..8256b838ed 100755 --- a/apps/plugins/lua/rocklib_aux.pl +++ b/apps/plugins/lua/rocklib_aux.pl | |||
@@ -51,17 +51,25 @@ my @ported_functions; | |||
51 | # you want to manually port them to Lua. The format is a standard Perl regular | 51 | # you want to manually port them to Lua. The format is a standard Perl regular |
52 | # expression. | 52 | # expression. |
53 | my @forbidden_functions = ('^open$', | 53 | my @forbidden_functions = ('^open$', |
54 | '^open_utf8$', | ||
54 | '^close$', | 55 | '^close$', |
55 | '^read$', | 56 | '^read$', |
56 | '^write$', | 57 | '^write$', |
57 | '^mkdir$', | 58 | '^mkdir$', |
58 | '^rmdir$', | 59 | '^rmdir$', |
60 | '^remove$', | ||
61 | '^rename$', | ||
59 | '^lseek$', | 62 | '^lseek$', |
60 | '^ftruncate$', | 63 | '^ftruncate$', |
61 | '^filesize$', | 64 | '^filesize$', |
62 | '^fdprintf$', | 65 | '^fdprintf$', |
63 | '^read_line$', | 66 | '^read_line$', |
64 | '^[a-z]+dir$', | 67 | '^[a-z]+dir$', |
68 | '^s?+rand$', | ||
69 | '^strl?+cpy$', | ||
70 | '^strl?+cat$', | ||
71 | '^codec_', | ||
72 | '^timer_', | ||
65 | '^__.+$', | 73 | '^__.+$', |
66 | '^.+_(un)?cached$', | 74 | '^.+_(un)?cached$', |
67 | '^audio_play$', | 75 | '^audio_play$', |