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, 8 insertions, 6 deletions
diff --git a/apps/plugins/demystify.c b/apps/plugins/demystify.c
index 6a8f1eb0c1..468f1806ce 100644
--- a/apps/plugins/demystify.c
+++ b/apps/plugins/demystify.c
@@ -22,12 +22,11 @@
22****************************************************************************/ 22****************************************************************************/
23 23
24#include "plugin.h" 24#include "plugin.h"
25#include "lib/pluginlib_exit.h"
26 25
27#ifdef HAVE_LCD_BITMAP 26#ifdef HAVE_LCD_BITMAP
28#include "lib/pluginlib_actions.h" 27#include "lib/pluginlib_actions.h"
29#include "lib/helper.h" 28#include "lib/helper.h"
30 29PLUGIN_HEADER
31 30
32#define DEFAULT_WAIT_TIME 3 31#define DEFAULT_WAIT_TIME 3
33#define DEFAULT_NB_POLYGONS 7 32#define DEFAULT_NB_POLYGONS 7
@@ -260,8 +259,10 @@ void polygons_draw(struct polygon_fifo * polygons, struct screen * display)
260 } 259 }
261} 260}
262 261
263void cleanup(void) 262void cleanup(void *parameter)
264{ 263{
264 (void)parameter;
265
265 backlight_use_settings(); 266 backlight_use_settings();
266#ifdef HAVE_REMOTE_LCD 267#ifdef HAVE_REMOTE_LCD
267 remote_backlight_use_settings(); 268 remote_backlight_use_settings();
@@ -393,6 +394,7 @@ int plugin_main(void)
393 switch(action) 394 switch(action)
394 { 395 {
395 case DEMYSTIFY_QUIT: 396 case DEMYSTIFY_QUIT:
397 cleanup(NULL);
396 return PLUGIN_OK; 398 return PLUGIN_OK;
397 399
398 case DEMYSTIFY_ADD_POLYGON: 400 case DEMYSTIFY_ADD_POLYGON:
@@ -419,7 +421,9 @@ int plugin_main(void)
419 break; 421 break;
420 422
421 default: 423 default:
422 exit_on_usb(action); 424 if (rb->default_event_handler_ex(action, cleanup, NULL)
425 == SYS_USB_CONNECTED)
426 return PLUGIN_USB_CONNECTED;
423 break; 427 break;
424 } 428 }
425 } 429 }
@@ -432,8 +436,6 @@ enum plugin_status plugin_start(const void* parameter)
432 int ret; 436 int ret;
433 437
434 (void)parameter; 438 (void)parameter;
435 atexit(cleanup);
436
437#if LCD_DEPTH > 1 439#if LCD_DEPTH > 1
438 rb->lcd_set_backdrop(NULL); 440 rb->lcd_set_backdrop(NULL);
439#endif 441#endif