summaryrefslogtreecommitdiff
path: root/apps/plugins/midi
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2010-08-24 14:30:46 +0000
committerThomas Martitz <kugel@rockbox.org>2010-08-24 14:30:46 +0000
commitcae4ae2c71ae10ff67d39a78a705136e740dc07e (patch)
treeb5bb5e1879493f67d7c7ad977fba90eb49b743d7 /apps/plugins/midi
parent3478bc5d6dc0a081c3aeb4f501c8b4cb4f53a78d (diff)
downloadrockbox-cae4ae2c71ae10ff67d39a78a705136e740dc07e.tar.gz
rockbox-cae4ae2c71ae10ff67d39a78a705136e740dc07e.zip
Second try: Introduce plugin_crt0.c that every plugin links.
It handles exit() properly, calling the handler also when the plugin returns normally (also make exit() more standard compliant while at it). It also holds PLUGIN_HEADER, so that it doesn't need to be in each plugin anymore. To work better together with callbacks passed to rb->default_event_handler_ex() introduce exit_on_usb() which will call the exit handler before showing the usb screen and exit() after it. In most cases rb->default_event_handler_ex() was passed a callback which was manually called at all other return points. This can now be done via atexit(). In future plugin_crt0.c could also handle clearing bss, initializing iram and more. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27873 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/midi')
-rw-r--r--apps/plugins/midi/midiplay.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/apps/plugins/midi/midiplay.c b/apps/plugins/midi/midiplay.c
index d9e215158e..442a747d89 100644
--- a/apps/plugins/midi/midiplay.c
+++ b/apps/plugins/midi/midiplay.c
@@ -25,7 +25,7 @@
25#include "sequencer.h" 25#include "sequencer.h"
26#include "midifile.h" 26#include "midifile.h"
27 27
28PLUGIN_HEADER 28
29PLUGIN_IRAM_DECLARE 29PLUGIN_IRAM_DECLARE
30 30
31/* variable button definitions */ 31/* variable button definitions */
@@ -450,7 +450,6 @@ static int midimain(const void * filename)
450enum plugin_status plugin_start(const void* parameter) 450enum plugin_status plugin_start(const void* parameter)
451{ 451{
452 int retval; 452 int retval;
453 PLUGINLIB_EXIT_INIT;
454 453
455 PLUGIN_IRAM_INIT(rb) 454 PLUGIN_IRAM_INIT(rb)
456 455