summaryrefslogtreecommitdiff
path: root/apps/plugins/lua/rocklib.c
diff options
context:
space:
mode:
authorMaurus Cuelenaere <mcuelenaere@gmail.com>2009-10-29 17:13:36 +0000
committerMaurus Cuelenaere <mcuelenaere@gmail.com>2009-10-29 17:13:36 +0000
commit5ca112b21e2fd65aa66644ff6131a0b428ef1f75 (patch)
tree6ec59df43ad12cd6c023d8ed71c499942199707a /apps/plugins/lua/rocklib.c
parent8fb258856c537d02ed4ebd11397f055f9dc3cc5f (diff)
downloadrockbox-5ca112b21e2fd65aa66644ff6131a0b428ef1f75.zip
rockbox-5ca112b21e2fd65aa66644ff6131a0b428ef1f75.tar.gz
rockbox-5ca112b21e2fd65aa66644ff6131a0b428ef1f75.tar.bz2
rockbox-5ca112b21e2fd65aa66644ff6131a0b428ef1f75.tar.xz
Lua: return nil when function failed instead of returning nothing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23405 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/lua/rocklib.c')
-rw-r--r--apps/plugins/lua/rocklib.c27
1 files changed, 15 insertions, 12 deletions
diff --git a/apps/plugins/lua/rocklib.c b/apps/plugins/lua/rocklib.c
index ca77d5e..73c3851 100644
--- a/apps/plugins/lua/rocklib.c
+++ b/apps/plugins/lua/rocklib.c
@@ -330,12 +330,11 @@ RB_WRAP(lcd_get_backdrop)
{
fb_data* backdrop = rb->lcd_get_backdrop();
if(backdrop == NULL)
- return 0;
+ lua_pushnil(L);
else
- {
rli_wrap(L, backdrop, LCD_WIDTH, LCD_HEIGHT);
- return 1;
- }
+
+ return 1;
}
#endif /* LCD_DEPTH > 1 */
@@ -478,24 +477,28 @@ RB_WRAP(read_bmp_file)
if(result > 0)
{
bm.data = (unsigned char*) rli_alloc(L, bm.width, bm.height);
- rb->read_bmp_file(filename, &bm, result, format, NULL);
-
- return 1;
+ if(rb->read_bmp_file(filename, &bm, result, format, NULL) < 0)
+ {
+ /* Error occured, drop newly allocated image from stack */
+ lua_pop(L, 1);
+ lua_pushnil(L);
+ }
}
+ else
+ lua_pushnil(L);
- return 0;
+ return 1;
}
RB_WRAP(current_path)
{
const char *current_path = get_current_path(L, 1);
if(current_path != NULL)
- {
lua_pushstring(L, current_path);
- return 1;
- }
else
- return 0;
+ lua_pushnil(L);
+
+ return 1;
}
static void fill_text_message(lua_State *L, struct text_message * message,