summaryrefslogtreecommitdiff
path: root/apps/plugins/demystify.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/demystify.c')
-rw-r--r--apps/plugins/demystify.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/apps/plugins/demystify.c b/apps/plugins/demystify.c
index 468f180..6a8f1eb 100644
--- a/apps/plugins/demystify.c
+++ b/apps/plugins/demystify.c
@@ -22,11 +22,12 @@
****************************************************************************/
#include "plugin.h"
+#include "lib/pluginlib_exit.h"
#ifdef HAVE_LCD_BITMAP
#include "lib/pluginlib_actions.h"
#include "lib/helper.h"
-PLUGIN_HEADER
+
#define DEFAULT_WAIT_TIME 3
#define DEFAULT_NB_POLYGONS 7
@@ -259,10 +260,8 @@ void polygons_draw(struct polygon_fifo * polygons, struct screen * display)
}
}
-void cleanup(void *parameter)
+void cleanup(void)
{
- (void)parameter;
-
backlight_use_settings();
#ifdef HAVE_REMOTE_LCD
remote_backlight_use_settings();
@@ -394,7 +393,6 @@ int plugin_main(void)
switch(action)
{
case DEMYSTIFY_QUIT:
- cleanup(NULL);
return PLUGIN_OK;
case DEMYSTIFY_ADD_POLYGON:
@@ -421,9 +419,7 @@ int plugin_main(void)
break;
default:
- if (rb->default_event_handler_ex(action, cleanup, NULL)
- == SYS_USB_CONNECTED)
- return PLUGIN_USB_CONNECTED;
+ exit_on_usb(action);
break;
}
}
@@ -436,6 +432,8 @@ enum plugin_status plugin_start(const void* parameter)
int ret;
(void)parameter;
+ atexit(cleanup);
+
#if LCD_DEPTH > 1
rb->lcd_set_backdrop(NULL);
#endif