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