diff options
author | Thomas Martitz <kugel@rockbox.org> | 2009-10-20 21:54:44 +0000 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2009-10-20 21:54:44 +0000 |
commit | 774bacc692b4d5c7b769bb88d24e182db9e4656f (patch) | |
tree | 07c5ed05c9d46145c783bd1de5062731e6babb32 /firmware | |
parent | 872852639fc52bcdb2cc8199fed60f81c7cad1f9 (diff) |
Correct wrong usage of event callbacks all over the place. It's not supposed to return anything, and should take a data parameter.
Fixing it because correcting the event api prototypes causes many warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23301 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/ata_idle_notify.c | 8 | ||||
-rw-r--r-- | firmware/events.c | 4 | ||||
-rw-r--r-- | firmware/export/ata_idle_notify.h | 6 | ||||
-rw-r--r-- | firmware/export/events.h | 4 |
4 files changed, 10 insertions, 12 deletions
diff --git a/firmware/ata_idle_notify.c b/firmware/ata_idle_notify.c index 99b1d4d786..35d192bee0 100644 --- a/firmware/ata_idle_notify.c +++ b/firmware/ata_idle_notify.c @@ -25,12 +25,12 @@ #include "kernel.h" #include "string.h" -void register_storage_idle_func(storage_idle_notify function) +void register_storage_idle_func(void (*function)(void *data)) { #if USING_STORAGE_CALLBACK add_event(DISK_EVENT_SPINUP, true, function); #else - function(); /* just call the function now */ + function(NULL); /* just call the function now */ /* this _may_ cause problems later if the calling function sets a variable expecting the callback to unset it, because the callback will be run before this function exits, so before the var is set */ @@ -38,12 +38,12 @@ void register_storage_idle_func(storage_idle_notify function) } #if USING_STORAGE_CALLBACK -void unregister_storage_idle_func(storage_idle_notify func, bool run) +void unregister_storage_idle_func(void (*func)(void *data), bool run) { remove_event(DISK_EVENT_SPINUP, func); if (run) - func(); + func(NULL); } bool call_storage_idle_notifys(bool force) diff --git a/firmware/events.c b/firmware/events.c index 951214377e..dca612bc7b 100644 --- a/firmware/events.c +++ b/firmware/events.c @@ -33,7 +33,7 @@ struct sysevent { static struct sysevent events[MAX_SYS_EVENTS]; -bool add_event(unsigned short id, bool oneshot, void (*handler)) +bool add_event(unsigned short id, bool oneshot, void (*handler)(void *data)) { int i; @@ -60,7 +60,7 @@ bool add_event(unsigned short id, bool oneshot, void (*handler)) return false; } -void remove_event(unsigned short id, void (*handler)) +void remove_event(unsigned short id, void (*handler)(void *data)) { int i; diff --git a/firmware/export/ata_idle_notify.h b/firmware/export/ata_idle_notify.h index 18f1648e00..348165f1d1 100644 --- a/firmware/export/ata_idle_notify.h +++ b/firmware/export/ata_idle_notify.h @@ -48,11 +48,9 @@ enum { && (CONFIG_NAND == NAND_IFP7XX)) \ && !defined(BOOTLOADER) -typedef bool (*storage_idle_notify)(void); - -extern void register_storage_idle_func(storage_idle_notify function); +extern void register_storage_idle_func(void (*function)(void *data)); #if USING_STORAGE_CALLBACK -extern void unregister_storage_idle_func(storage_idle_notify function, bool run); +extern void unregister_storage_idle_func(void (*function)(void *data), bool run); extern bool call_storage_idle_notifys(bool force); #else #define unregister_storage_idle_func(f,r) diff --git a/firmware/export/events.h b/firmware/export/events.h index cad0fad895..694566a43e 100644 --- a/firmware/export/events.h +++ b/firmware/export/events.h @@ -38,8 +38,8 @@ #define EVENT_CLASS_BUFFERING 0x0400 #define EVENT_CLASS_GUI 0x0800 -bool add_event(unsigned short id, bool oneshot, void (*handler)); -void remove_event(unsigned short id, void (*handler)); +bool add_event(unsigned short id, bool oneshot, void (*handler)(void *data)); +void remove_event(unsigned short id, void (*handler)(void *data)); void send_event(unsigned short id, void *data); #endif |