kwo pushed a commit to branch master.

http://git.enlightenment.org/e16/e16-epplets.git/commit/?id=b76845e265dd5a951603582485b19eb65abdc4fe

commit b76845e265dd5a951603582485b19eb65abdc4fe
Author: Kim Woelders <k...@woelders.dk>
Date:   Fri Aug 27 15:03:30 2021 +0200

    Introduce Epplet_Exit()
    
    Avoiding some code duplication.
---
 api/epplet.c               | 8 ++++++++
 api/epplet.h.in            | 7 ++++++-
 epplets/ConfigTestEpplet.c | 4 +---
 epplets/E-Areas.c          | 4 +---
 epplets/E-Bandwidth.c      | 4 +---
 epplets/E-Biff.c           | 4 +---
 epplets/E-Clock.c          | 4 +---
 epplets/E-Cpu.c            | 4 +---
 epplets/E-Disk.c           | 4 +---
 epplets/E-Exec.c           | 3 +--
 epplets/E-Load.c           | 4 +---
 epplets/E-LoadMeter.c      | 4 +---
 epplets/E-Magic.c          | 4 +---
 epplets/E-MemWatch.c       | 4 +---
 epplets/E-Mixer.c          | 5 ++---
 epplets/E-MoonClock.c      | 4 +---
 epplets/E-Mountbox.c       | 5 ++---
 epplets/E-Net.c            | 8 ++------
 epplets/E-NetFlame.c       | 8 ++------
 epplets/E-NetGraph.c       | 8 ++------
 epplets/E-OpenGL-Demo.c    | 5 ++---
 epplets/E-Pants.c          | 4 +---
 epplets/E-Pinger.c         | 4 +---
 epplets/E-PlayCD.c         | 4 +---
 epplets/E-Power.c          | 4 +---
 epplets/E-SD.c             | 5 ++---
 epplets/E-ScreenSave.c     | 5 ++---
 epplets/E-ScreenShoot.c    | 5 ++---
 epplets/E-Slides.c         | 4 +---
 epplets/E-Sys.c            | 4 +---
 epplets/E-Time.c           | 4 +---
 epplets/E-Toolbox.c        | 4 +---
 epplets/E-UrlWatch.c       | 7 ++-----
 epplets/E-Wireless.c       | 5 ++---
 epplets/E-Xss.c            | 5 ++---
 epplets/Emix.c             | 5 ++---
 epplets/TestEpplet.c       | 4 +---
 37 files changed, 62 insertions(+), 116 deletions(-)

diff --git a/api/epplet.c b/api/epplet.c
index 8101264..8d6a192 100644
--- a/api/epplet.c
+++ b/api/epplet.c
@@ -659,6 +659,14 @@ Epplet_internal_create_window(int w, int h, const char 
*title, char vertical,
    return ret->win;
 }
 
+void
+Epplet_Exit(int rc)
+{
+   Epplet_unremember();
+   Esync();
+   exit(rc);
+}
+
 Window
 Epplet_create_window(int w, int h, const char *title, char vertical)
 {
diff --git a/api/epplet.h.in b/api/epplet.h.in
index b0a6801..c79556b 100644
--- a/api/epplet.h.in
+++ b/api/epplet.h.in
@@ -78,11 +78,16 @@ EAPI void           Epplet_Init(const char *name, const 
char *version,
                                const char *info, int w, int h,
                                int argc, char **argv, char vertical);
 
+/****************************************************************************/
+/* Exit call                                                                */
+/****************************************************************************/
+/* Should normally be called to exit your epplet (calls Epplet_cleanup()) */
+EAPI void           Epplet_Exit(int rc);
+
 /****************************************************************************/
 /* Cleanup call                                                             */
 /****************************************************************************/
 /* You HAVE to call this before exiting your epplet!                        */
-
 EAPI void           Epplet_cleanup(void);
 
 /* Adjust priority */
diff --git a/epplets/ConfigTestEpplet.c b/epplets/ConfigTestEpplet.c
index 2f76c79..cfeaf89 100644
--- a/epplets/ConfigTestEpplet.c
+++ b/epplets/ConfigTestEpplet.c
@@ -4,9 +4,7 @@
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 int
diff --git a/epplets/E-Areas.c b/epplets/E-Areas.c
index 732f439..8de9fb2 100644
--- a/epplets/E-Areas.c
+++ b/epplets/E-Areas.c
@@ -23,9 +23,7 @@ static Epplet_gadget b_close;
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Bandwidth.c b/epplets/E-Bandwidth.c
index 736bee5..9b27ad7 100644
--- a/epplets/E-Bandwidth.c
+++ b/epplets/E-Bandwidth.c
@@ -137,9 +137,7 @@ timer_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Biff.c b/epplets/E-Biff.c
index 9252152..24cc12c 100644
--- a/epplets/E-Biff.c
+++ b/epplets/E-Biff.c
@@ -120,9 +120,7 @@ mailcheck_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Clock.c b/epplets/E-Clock.c
index 511291c..0321314 100644
--- a/epplets/E-Clock.c
+++ b/epplets/E-Clock.c
@@ -33,9 +33,7 @@ cb_timer(void *data __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Cpu.c b/epplets/E-Cpu.c
index 7c44a5c..39a04b5 100644
--- a/epplets/E-Cpu.c
+++ b/epplets/E-Cpu.c
@@ -265,9 +265,7 @@ cb_timer(void *data __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Disk.c b/epplets/E-Disk.c
index 9952ebb..31d6206 100644
--- a/epplets/E-Disk.c
+++ b/epplets/E-Disk.c
@@ -173,9 +173,7 @@ timer_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Exec.c b/epplets/E-Exec.c
index b310c8a..6e8bcc1 100644
--- a/epplets/E-Exec.c
+++ b/epplets/E-Exec.c
@@ -24,8 +24,7 @@ static void         exec_popup(void *data);
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Load.c b/epplets/E-Load.c
index d7e90a6..16271bb 100644
--- a/epplets/E-Load.c
+++ b/epplets/E-Load.c
@@ -75,9 +75,7 @@ cb_timer(void *data __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static int
diff --git a/epplets/E-LoadMeter.c b/epplets/E-LoadMeter.c
index 6d58436..8d1338a 100644
--- a/epplets/E-LoadMeter.c
+++ b/epplets/E-LoadMeter.c
@@ -65,9 +65,7 @@ timer_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Magic.c b/epplets/E-Magic.c
index b8cfb8d..935827b 100644
--- a/epplets/E-Magic.c
+++ b/epplets/E-Magic.c
@@ -84,9 +84,7 @@ button_click_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-MemWatch.c b/epplets/E-MemWatch.c
index 954c082..9d0813e 100644
--- a/epplets/E-MemWatch.c
+++ b/epplets/E-MemWatch.c
@@ -193,9 +193,7 @@ timer_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Mixer.c b/epplets/E-Mixer.c
index d68d6a0..e8703be 100644
--- a/epplets/E-Mixer.c
+++ b/epplets/E-Mixer.c
@@ -185,14 +185,13 @@ setMixer(int myvol)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
 #ifdef SGI_AUDIO
    alClosePort(audport);
 #else
    close(mixerfd);
 #endif
-   Esync();
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-MoonClock.c b/epplets/E-MoonClock.c
index dfbfe1d..d2077f2 100644
--- a/epplets/E-MoonClock.c
+++ b/epplets/E-MoonClock.c
@@ -65,9 +65,7 @@ moonclock_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Mountbox.c b/epplets/E-Mountbox.c
index 5fc8aef..67cdffb 100644
--- a/epplets/E-Mountbox.c
+++ b/epplets/E-Mountbox.c
@@ -1427,9 +1427,8 @@ CallbackExit(void *data __UNUSED__)
    FreeMounts();
    FreeMountPointTypes();
    FreeImages();
-   Epplet_unremember();
-   Esync();
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Net.c b/epplets/E-Net.c
index 5b39ebf..adfb812 100644
--- a/epplets/E-Net.c
+++ b/epplets/E-Net.c
@@ -28,9 +28,7 @@ cb_timer(void *data __UNUSED__)
        Epplet_dialog_ok
           ("Unable to get network device statistics for eth0:  %s",
            net_strerror(invalid));
-       Epplet_unremember();
-       Esync();
-       exit(-1);
+       Epplet_Exit(1);
      }
    if (val != -1.0)
      {
@@ -92,9 +90,7 @@ cb_set_downstream(void *data)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 int
diff --git a/epplets/E-NetFlame.c b/epplets/E-NetFlame.c
index 2e4d512..70e318b 100644
--- a/epplets/E-NetFlame.c
+++ b/epplets/E-NetFlame.c
@@ -243,9 +243,7 @@ epplet_timer(void *data __UNUSED__)
      {
        Epplet_dialog_ok("Unable to get network device statistics for %s:  %s",
                         netdev, net_strerror(invalid));
-       Epplet_unremember();
-       Esync();
-       exit(-1);
+       Epplet_Exit(1);
      }
    if (val != -1.0)
      {
@@ -269,9 +267,7 @@ epplet_timer(void *data __UNUSED__)
 static void
 epplet_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 /* called when you select a color from the epplet color menu */
diff --git a/epplets/E-NetGraph.c b/epplets/E-NetGraph.c
index 7762eaa..5f2e42b 100644
--- a/epplets/E-NetGraph.c
+++ b/epplets/E-NetGraph.c
@@ -194,9 +194,7 @@ timer_draw(void *data __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
@@ -422,9 +420,7 @@ main(int argc, char **argv)
                    {
                       fprintf(stderr, "missing device "
                               "string -- aborting\n");
-                      Epplet_unremember();
-                      Esync();
-                      exit(1);
+                      Epplet_Exit(1);
                    }
                  i += 2;
                  break;
diff --git a/epplets/E-OpenGL-Demo.c b/epplets/E-OpenGL-Demo.c
index 8ba8c40..c38f6cf 100644
--- a/epplets/E-OpenGL-Demo.c
+++ b/epplets/E-OpenGL-Demo.c
@@ -219,11 +219,10 @@ cb_close(void *data)
    GLXContext         *cx;
 
    cx = (GLXContext *) data;
-   Epplet_unremember();
-   Esync();
    if (cx)
       Epplet_unbind_GL(*cx);
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Pants.c b/epplets/E-Pants.c
index fc87e5c..2d6c056 100644
--- a/epplets/E-Pants.c
+++ b/epplets/E-Pants.c
@@ -104,9 +104,7 @@ log_pants(void *data __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Pinger.c b/epplets/E-Pinger.c
index 4de3362..c143387 100644
--- a/epplets/E-Pinger.c
+++ b/epplets/E-Pinger.c
@@ -200,9 +200,7 @@ nb_read(int fd, char *buffer, unsigned int n)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-PlayCD.c b/epplets/E-PlayCD.c
index 2bdc11c..55a5b9b 100644
--- a/epplets/E-PlayCD.c
+++ b/epplets/E-PlayCD.c
@@ -125,9 +125,7 @@ update_track_info(void *data __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   cd_finish(cd_desc);
-   exit(0);
+   Epplet_Exit(0);
 }
 
 /* Rewind */
diff --git a/epplets/E-Power.c b/epplets/E-Power.c
index fa86808..9d5630f 100644
--- a/epplets/E-Power.c
+++ b/epplets/E-Power.c
@@ -403,9 +403,7 @@ cb_timer(void *data __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-SD.c b/epplets/E-SD.c
index 88916cd..cd92fa3 100644
--- a/epplets/E-SD.c
+++ b/epplets/E-SD.c
@@ -110,10 +110,9 @@ static void
 cb_close(void *data __UNUSED__)
 {
    save_config();
-   Epplet_unremember();
    esd_close(esd.fd);
-   Esync();
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-ScreenSave.c b/epplets/E-ScreenSave.c
index 3f1d961..2274ea0 100644
--- a/epplets/E-ScreenSave.c
+++ b/epplets/E-ScreenSave.c
@@ -138,9 +138,8 @@ static void
 cb_close(void *data __UNUSED__)
 {
    save_config();
-   Epplet_unremember();
-   Esync();
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-ScreenShoot.c b/epplets/E-ScreenShoot.c
index 4c99844..aaef3b5 100644
--- a/epplets/E-ScreenShoot.c
+++ b/epplets/E-ScreenShoot.c
@@ -227,9 +227,8 @@ static void
 cb_close(void *data __UNUSED__)
 {
    save_config();
-   Epplet_unremember();
-   Esync();
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Slides.c b/epplets/E-Slides.c
index cc823ea..6103633 100644
--- a/epplets/E-Slides.c
+++ b/epplets/E-Slides.c
@@ -322,9 +322,7 @@ change_image(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Sys.c b/epplets/E-Sys.c
index 6e405d1..1e59ccf 100644
--- a/epplets/E-Sys.c
+++ b/epplets/E-Sys.c
@@ -95,9 +95,7 @@ timer_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Time.c b/epplets/E-Time.c
index af814a1..922d02e 100644
--- a/epplets/E-Time.c
+++ b/epplets/E-Time.c
@@ -71,9 +71,7 @@ timer_cb(void *data __UNUSED__)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Toolbox.c b/epplets/E-Toolbox.c
index 00c2653..9f4e1aa 100644
--- a/epplets/E-Toolbox.c
+++ b/epplets/E-Toolbox.c
@@ -163,9 +163,7 @@ delete_gadget(int n)
 static void
 close_cb(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-UrlWatch.c b/epplets/E-UrlWatch.c
index 65b2e54..898b17c 100644
--- a/epplets/E-UrlWatch.c
+++ b/epplets/E-UrlWatch.c
@@ -138,11 +138,8 @@ cb_close(void *data __UNUSED__)
 {
    /* save options */
    save_config();
-   /* User closed, so forget session restart */
-   Epplet_unremember();
-   /* Sync drawing and ipc to eesh */
-   Esync();
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Wireless.c b/epplets/E-Wireless.c
index 36cd73b..d90efe7 100644
--- a/epplets/E-Wireless.c
+++ b/epplets/E-Wireless.c
@@ -186,10 +186,9 @@ cb_out(void *data __UNUSED__, Window w __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
    free(cpu_hist);
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/E-Xss.c b/epplets/E-Xss.c
index d4d6290..cc49041 100644
--- a/epplets/E-Xss.c
+++ b/epplets/E-Xss.c
@@ -97,9 +97,8 @@ static void
 close_cb(void *data __UNUSED__)
 {
    stop_hack();
-   Epplet_unremember();
-   Esync();
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/Emix.c b/epplets/Emix.c
index 1ad6ffc..99602d9 100644
--- a/epplets/Emix.c
+++ b/epplets/Emix.c
@@ -35,10 +35,9 @@ static Epplet_gadget b_mute;
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
    close(fd_mixer);
-   Esync();
-   exit(0);
+
+   Epplet_Exit(0);
 }
 
 static void
diff --git a/epplets/TestEpplet.c b/epplets/TestEpplet.c
index eb79c35..4c71d6e 100644
--- a/epplets/TestEpplet.c
+++ b/epplets/TestEpplet.c
@@ -33,9 +33,7 @@ cb_timer(void *data __UNUSED__)
 static void
 cb_close(void *data __UNUSED__)
 {
-   Epplet_unremember();
-   Esync();
-   exit(0);
+   Epplet_Exit(0);
 }
 
 int

-- 


Reply via email to