Enlightenment CVS committal

Author  : tsauerbeck
Project : misc
Module  : eplayer

Dir     : misc/eplayer/src


Modified Files:
        callbacks.c eplayer.c interface.c interface.h utils.c 


Log Message:
Fixed some memleaks. ePlayer now builds when Ecore_Evas doesn't offer FB or GL 
support. Removed evil trailing whitespace.
===================================================================
RCS file: /cvsroot/enlightenment/misc/eplayer/src/callbacks.c,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -3 -r1.41 -r1.42
--- callbacks.c 1 Feb 2004 18:34:15 -0000       1.41
+++ callbacks.c 3 Feb 2004 20:21:11 -0000       1.42
@@ -1,5 +1,5 @@
 /*
- * $Id: callbacks.c,v 1.41 2004/02/01 18:34:15 tsauerbeck Exp $
+ * $Id: callbacks.c,v 1.42 2004/02/03 20:21:11 tsauerbeck Exp $
  */
 
 #include <config.h>
@@ -317,7 +317,7 @@
 }
 
 EDJE_CB(switch_group) {
-       evas_object_del(player->gui.edje);
+       ui_deinit_edje(player);
        ui_init_edje(player, src);
 }
 
===================================================================
RCS file: /cvsroot/enlightenment/misc/eplayer/src/eplayer.c,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -3 -r1.35 -r1.36
--- eplayer.c   1 Feb 2004 16:58:53 -0000       1.35
+++ eplayer.c   3 Feb 2004 20:21:11 -0000       1.36
@@ -2,7 +2,7 @@
 /* Edje Overhaul startnig phase 4 - Started 7/30/03 */
 
 /*
- * $Id: eplayer.c,v 1.35 2004/02/01 16:58:53 tsauerbeck Exp $
+ * $Id: eplayer.c,v 1.36 2004/02/03 20:21:11 tsauerbeck Exp $
  */
 
 #include <config.h>
@@ -102,6 +102,8 @@
                free(str);
        }
 
+       e_db_close(edb);
+
        return true;
 }
 
@@ -126,6 +128,8 @@
        pthread_mutex_destroy(&player->playback_stop_mutex);
        pthread_mutex_destroy(&player->playback_next_mutex);
        
+       ui_deinit(player);
+       
        free(player);
 }
 
@@ -349,7 +353,6 @@
 
        eplayer_free(player);
 
-       ui_deinit();
        lt_dlexit();
        
        return 0;
===================================================================
RCS file: /cvsroot/enlightenment/misc/eplayer/src/interface.c,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -3 -r1.47 -r1.48
--- interface.c 1 Feb 2004 17:34:47 -0000       1.47
+++ interface.c 3 Feb 2004 20:21:11 -0000       1.48
@@ -1,5 +1,5 @@
 /*
- * $Id: interface.c,v 1.47 2004/02/01 17:34:47 tsauerbeck Exp $
+ * $Id: interface.c,v 1.48 2004/02/03 20:21:11 tsauerbeck Exp $
  */
 
 #include <config.h>
@@ -85,20 +85,30 @@
        char buf[PATH_MAX];
        
        debug(DEBUG_LEVEL_INFO, "Starting setup\n");
-
+       
        ecore_init();
        ecore_evas_init();
+       edje_init();
        ewl_init(&zero, NULL);
+
        ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, app_signal_exit,
                                NULL);
 
+#ifdef HAVE_ECORE_EVAS_GL
        if (!strcasecmp(player->cfg.evas_engine, "gl")) {
                debug(DEBUG_LEVEL_INFO, "Starting EVAS GL X11\n");
                player->gui.ee = ecore_evas_gl_x11_new(NULL, 0, 0, 0, 0, 0);
-       } else if(!strcasecmp(player->cfg.evas_engine, "fb")) {
+       } else
+#endif
+
+#ifdef HAVE_ECORE_EVAS_FB
+       if (!strcasecmp(player->cfg.evas_engine, "fb")) {
                debug(DEBUG_LEVEL_INFO, "Starting EVAS FB\n");
                player->gui.ee = ecore_evas_fb_new(NULL, 0, 0, 0);
-       } else {
+       } else
+#endif
+       
+       {
                debug(DEBUG_LEVEL_INFO, "Starting EVAS X11\n");
                player->gui.ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 0, 0);
        }
@@ -141,8 +151,27 @@
        return ui_init_edje(player, "eplayer");
 }
 
-void ui_deinit() {
+void ui_deinit_edje(ePlayer *player) {
+       if (player->gui.playlist) {
+               edje_object_part_unswallow(player->gui.edje,
+                                          player->gui.playlist);
+               evas_object_del(player->gui.playlist);
+               player->gui.playlist = NULL;
+       }
+
+       if (player->gui.edje) {
+               evas_object_del(player->gui.edje);
+               player->gui.edje = NULL;
+       }
+}
+
+void ui_deinit(ePlayer *player) {
+       assert(player);
+
+       ui_deinit_edje(player);
+
        ewl_deinit();
+       edje_shutdown();
        ecore_evas_shutdown();
        ecore_shutdown();
 }
===================================================================
RCS file: /cvsroot/enlightenment/misc/eplayer/src/interface.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- interface.h 1 Feb 2004 12:03:53 -0000       1.10
+++ interface.h 3 Feb 2004 20:21:11 -0000       1.11
@@ -2,14 +2,16 @@
 #define __INTERFACE_H
 
 /*
- * $Id: interface.h,v 1.10 2004/02/01 12:03:53 tsauerbeck Exp $
+ * $Id: interface.h,v 1.11 2004/02/03 20:21:11 tsauerbeck Exp $
  */
 
 #include "eplayer.h"
 
 bool ui_init(ePlayer *player);
 bool ui_init_edje(ePlayer *player, const char *name);
-void ui_deinit();
+
+void ui_deinit_edje(ePlayer *player);
+void ui_deinit(ePlayer *player);
 
 void ui_fill_track_info(ePlayer *player);
 void ui_fill_playlist(ePlayer *player);
===================================================================
RCS file: /cvsroot/enlightenment/misc/eplayer/src/utils.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- utils.c     1 Feb 2004 12:03:53 -0000       1.6
+++ utils.c     3 Feb 2004 20:21:11 -0000       1.7
@@ -1,5 +1,5 @@
 /*
- * $Id: utils.c,v 1.6 2004/02/01 12:03:53 tsauerbeck Exp $
+ * $Id: utils.c,v 1.7 2004/02/03 20:21:11 tsauerbeck Exp $
  */
 
 #include <config.h>
@@ -25,12 +25,12 @@
        snprintf(eet, sizeof(eet),
                 "%s/.e/apps/" PACKAGE "/" "themes/%s.eet",
                 getenv("HOME"), name);
-       
+
        if (!stat(eet, &st))
                return eet;
 
        snprintf(eet, sizeof(eet), DATA_DIR "/themes/%s.eet", name);
-       
+
        return stat(eet, &st) ? NULL : eet;
 }
 
@@ -51,10 +51,10 @@
  */
 char *strstrip(char *str) {
        char *start, *ptr = str;
-       
+
        /* step over leading whitespace */
        for (start = str; isspace(*start); start++);
-       
+
        if (str != start) {
                while ((*ptr++ = *start++));
                *ptr = 0;
@@ -68,7 +68,7 @@
 
        if (!isspace(*ptr))
                return str;
-       
+
        while (isspace(*ptr) && ptr >= str)
                ptr--;
 
@@ -79,7 +79,7 @@
 
 void debug(DebugLevel level, const char *fmt, ...) {
        va_list list;
-       
+
        if (level > DEBUG_LEVEL || !fmt || !fmt[0])
                return;
 




-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to