[EGIT] [core/efl] master 01/03: elementary: it seems I forgot to initialize some meaningful boolean.

2019-04-06 Thread Cedric BAIL
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=589fca7540714330a3b653d1ff157a8579b00ead

commit 589fca7540714330a3b653d1ff157a8579b00ead
Author: Cedric BAIL 
Date:   Thu Mar 28 12:44:31 2019 -0700

elementary: it seems I forgot to initialize some meaningful boolean.

Reviewed-by: Marcel Hollerbach 
Differential Revision: https://phab.enlightenment.org/D8501
---
 src/tests/elementary/elm_test_fileselector.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/tests/elementary/elm_test_fileselector.c 
b/src/tests/elementary/elm_test_fileselector.c
index 23cea7c133..b26e12fc51 100644
--- a/src/tests/elementary/elm_test_fileselector.c
+++ b/src/tests/elementary/elm_test_fileselector.c
@@ -133,6 +133,7 @@ EFL_START_TEST(elm_fileselector_selected)
evas_object_smart_callback_del(fileselector, "directory,open", _ready_cb);
evas_object_smart_callback_add(fileselector, "selected", _ready_cb, 
);
 
+   selected = EINA_FALSE;
ck_assert(elm_fileselector_selected_set(fileselector, exist));
ck_assert(fileselector_test_helper_wait_flag(10, ));
ck_assert(selected == EINA_TRUE);

-- 




[EGIT] [core/efl] master 02/03: elementary: fix error path during shutdown of fileselector.

2019-04-06 Thread Cedric BAIL
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=9afd12324b4e31c9a034912438985ab20fb2e31c

commit 9afd12324b4e31c9a034912438985ab20fb2e31c
Author: Cedric BAIL 
Date:   Thu Mar 28 14:09:54 2019 -0700

elementary: fix error path during shutdown of fileselector.

During shutdown, sometimes, we can have an error generated on the object
while it is invalidating, but before it is invalidated. This lead to
properties on the object to change to an error state and trigger the
properties changed logic. At this point, the parent has already been
destroyed and we don't really have anything more to do. So let's not
do anything.

Reviewed-by: Mike Blumenkrantz 
Differential Revision: https://phab.enlightenment.org/D8502
---
 src/lib/elementary/elc_fileselector.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/lib/elementary/elc_fileselector.c 
b/src/lib/elementary/elc_fileselector.c
index 5121e6d112..b718924429 100644
--- a/src/lib/elementary/elc_fileselector.c
+++ b/src/lib/elementary/elc_fileselector.c
@@ -823,6 +823,10 @@ _process_model(Elm_Fileselector_Data *sd, Efl_Model *child)
double mtime = 0;
Eina_Bool dir = EINA_FALSE;
 
+   // In case we are shutting down, there might be an error being gnerated
+   if (!parent) return ;
+
+   // We should be good now
if (!_fetch_string_value(parent, "path", _path) ||
!_fetch_string_value(child, "path", ) ||
!_fetch_string_value(child, "filename", ) ||

-- 




[EGIT] [core/efl] master 03/03: eio: do not fail in case of early ECANCEL.

2019-04-06 Thread Cedric BAIL
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=40867cd0b866af0ec33536bce54aa9d248cdcf1c

commit 40867cd0b866af0ec33536bce54aa9d248cdcf1c
Author: Cedric BAIL 
Date:   Tue Apr 2 15:24:03 2019 -0700

eio: do not fail in case of early ECANCEL.

Actually with directory that contain a lot of file and the right order for 
them,
you would end up getting what you are looking for before you have triggered 
all
the future callback. In that case, all the future callback are cancelled and
we will get that notification. The test is not failing in this case as we 
already
got what we wanted.

Reviewed-by: Mike Blumenkrantz 
Differential Revision: https://phab.enlightenment.org/D8541
---
 src/tests/eio/efl_io_model_test_monitor_add.c | 9 +
 1 file changed, 9 insertions(+)

diff --git a/src/tests/eio/efl_io_model_test_monitor_add.c 
b/src/tests/eio/efl_io_model_test_monitor_add.c
index 35e217aa63..041a44a5a9 100644
--- a/src/tests/eio/efl_io_model_test_monitor_add.c
+++ b/src/tests/eio/efl_io_model_test_monitor_add.c
@@ -109,6 +109,15 @@ _children_get(void *data,
Eo *child = NULL;
unsigned int i, len;
 
+   if (eina_value_type_get() == EINA_VALUE_TYPE_ERROR)
+ {
+Eina_Error err = 0;
+
+fail_if(!eina_value_error_get(, ));
+fail_if(err != ECANCELED);
+return v;
+ }
+
fail_if(eina_value_type_get() != EINA_VALUE_TYPE_ARRAY);
 
EINA_VALUE_ARRAY_FOREACH(, len, i, child)

-- 




[EGIT] [core/efl] master 01/01: elementary: fix not to call duplicate theme set

2019-04-06 Thread Jaehyun Cho
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=a6cc94321176700b5bfb89b85d71c33461180f22

commit a6cc94321176700b5bfb89b85d71c33461180f22
Author: Jaehyun Cho 
Date:   Fri Apr 5 04:05:37 2019 +

elementary: fix not to call duplicate theme set

Theme is set during finalize in Efl.Ui.Layout_Base.
Therefore, it is not necessary to call theme set function if the widget
inherits Efl.Ui.Layout_Base and its klass is properly set.

Reviewed-by: Cedric BAIL 
Differential Revision: https://phab.enlightenment.org/D8559
---
 src/lib/elementary/efl_ui_list.c | 6 ++
 src/lib/elementary/efl_ui_scroller.c | 4 ++--
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/lib/elementary/efl_ui_list.c b/src/lib/elementary/efl_ui_list.c
index 2b2b077f24..1cb6f1061e 100644
--- a/src/lib/elementary/efl_ui_list.c
+++ b/src/lib/elementary/efl_ui_list.c
@@ -413,6 +413,8 @@ _efl_ui_list_size_hint_changed_cb(void *data, const 
Efl_Event *ev EINA_UNUSED)
 EOLIAN static Eo *
 _efl_ui_list_efl_object_constructor(Eo *obj, Efl_Ui_List_Data *pd EINA_UNUSED)
 {
+   if (!elm_widget_theme_klass_get(obj))
+ elm_widget_theme_klass_set(obj, "list");
obj = efl_constructor(efl_super(obj, MY_CLASS));
 
return obj;
@@ -426,10 +428,6 @@ _efl_ui_list_efl_object_finalize(Eo *obj,
 
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL);
 
-   Eina_Error theme_apply_ret = efl_ui_layout_theme_set(obj, "list", "base", 
efl_ui_widget_style_get(obj));
-   if (theme_apply_ret == EFL_UI_THEME_APPLY_ERROR_GENERIC)
- CRI("list(%p) failed to set theme [efl/list:%s]!", obj, 
efl_ui_widget_style_get(obj) ?: "NULL");
-
pd->smanager = efl_add(EFL_UI_SCROLL_MANAGER_CLASS, obj);
efl_ui_mirrored_set(pd->smanager, efl_ui_mirrored_get(obj));
efl_composite_attach(obj, pd->smanager);
diff --git a/src/lib/elementary/efl_ui_scroller.c 
b/src/lib/elementary/efl_ui_scroller.c
index 5891e422f9..0fef382346 100644
--- a/src/lib/elementary/efl_ui_scroller.c
+++ b/src/lib/elementary/efl_ui_scroller.c
@@ -550,6 +550,8 @@ EOLIAN static Eo *
 _efl_ui_scroller_efl_object_constructor(Eo *obj,
 Efl_Ui_Scroller_Data *sd EINA_UNUSED)
 {
+   if (!elm_widget_theme_klass_get(obj))
+ elm_widget_theme_klass_set(obj, "scroller");
obj = efl_constructor(efl_super(obj, MY_CLASS));
 
return obj;
@@ -563,8 +565,6 @@ _efl_ui_scroller_efl_object_finalize(Eo *obj,
 
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL);
 
-   efl_ui_layout_theme_set(obj, "scroller", "base", 
efl_ui_widget_style_get(obj));
-
sd->smanager = efl_add(EFL_UI_SCROLL_MANAGER_CLASS, obj);
efl_ui_mirrored_set(sd->smanager, efl_ui_mirrored_get(obj));
efl_composite_attach(obj, sd->smanager);

-- 




[EGIT] [e16/e16] master 04/04: Fix compositing glitches with tiled backgrounds

2019-04-06 Thread Kim Woelders
kwo pushed a commit to branch master.

http://git.enlightenment.org/e16/e16.git/commit/?id=5d21c40c922856ee106a968121e32ffc094e1f61

commit 5d21c40c922856ee106a968121e32ffc094e1f61
Author: Kim Woelders 
Date:   Fri Apr 5 20:25:43 2019 +0200

Fix compositing glitches with tiled backgrounds

It seems that sometimes there are rendering glitches when having a tiled
backround with 0 offsets and tile size less than screen size.

In this case the desktop pixmap would be smaller than the screen size and
we rely on the repeat picture attribute in the desktop picture to get it
tiled over the entire desktop window when compositing.

However, it seems that sometimes(?) the desktop window is not properly
repainted outside the top left tile.

To fix this we now always use a full-sized background pixmap when
compositing is enabled.

I think this is an X-server bug but I haven't been able to produce a
test case demonstrating the problem.
---
 src/backgrounds.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/backgrounds.c b/src/backgrounds.c
index 93859223..d756d38e 100644
--- a/src/backgrounds.c
+++ b/src/backgrounds.c
@@ -30,6 +30,7 @@
 #include "backgrounds.h"
 #include "desktops.h"
 #include "dialog.h"
+#include "ecompmgr.h"
 #include "eimage.h"
 #include "emodule.h"
 #include "file.h"
@@ -607,7 +608,7 @@ BackgroundRealize(Background * bg, Win win, EX_Drawable 
draw,
  }
 
if (is_win && hasbg && !hasfg && x == 0 && y == 0 &&
-   ((w == rw && h == rh) || (bg->bg_tile)))
+   ((w == rw && h == rh) || (bg->bg_tile && !ECompMgrIsActive(
  {
/* Window, no fg, no offset, and scale to 100%, or tiled, no trans */
pmap = BackgroundCreatePixmap(win, w, h);

-- 




[EGIT] [e16/e16] master 01/04: Fix memory leak in pulseaudio sound loader

2019-04-06 Thread Kim Woelders
kwo pushed a commit to branch master.

http://git.enlightenment.org/e16/e16.git/commit/?id=8994417b49bf82b9d999146268db92f127fd0a34

commit 8994417b49bf82b9d999146268db92f127fd0a34
Author: Kim Woelders 
Date:   Sat Mar 30 18:02:17 2019 +0100

Fix memory leak in pulseaudio sound loader

The leak only happens when a sound file is first loaded so the leakage
will not grow indefinitely.

Also eliminate global sample_stream and sample_length.
---
 src/sound_pa.c | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/sound_pa.c b/src/sound_pa.c
index 2cb0daa8..aad87cdd 100644
--- a/src/sound_pa.c
+++ b/src/sound_pa.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2008-2018 Kim Woelders
+ * Copyright (C) 2008-2019 Kim Woelders
  *
  * Permission is hereby granted, free of charge, to any person obtaining a copy
  * of this software and associated documentation files (the "Software"), to
@@ -52,8 +52,6 @@ static pa_mainloop *pa_mloop = NULL;
 static pa_mainloop_api *mainloop_api = NULL;
 static pa_context  *pa_ctx = NULL;
 
-static pa_stream   *sample_stream = NULL;
-static size_t   sample_length = 0;
 static int  pa_block = 0;
 
 static void _sound_pa_Exit(void);
@@ -207,6 +205,7 @@ _sound_pa_Load(const char *file)
 {
Sample *s;
pa_sample_spec  sample_spec;
+   pa_stream  *sample_stream = NULL;
int err;
char   *p;
 
@@ -241,24 +240,26 @@ _sound_pa_Load(const char *file)
  }
sample_spec.rate = s->ssd.rate;
sample_spec.channels = s->ssd.channels;
-   sample_length = s->ssd.size;
 
sample_stream = pa_stream_new(pa_ctx, s->name, _spec, NULL);
if (!sample_stream)
   goto bail_out;
pa_stream_set_state_callback(sample_stream, stream_state_callback, NULL);
pa_stream_set_write_callback(sample_stream, stream_write_callback, s);
-   pa_stream_connect_upload(sample_stream, sample_length);
+   pa_stream_connect_upload(sample_stream, s->ssd.size);
 
err = dispatch(-1);
if (err)
   goto bail_out;
 
EFREE_NULL(s->ssd.data);
+   pa_stream_unref(sample_stream);
 
return s;
 
  bail_out:
+   if (sample_stream)
+  pa_stream_unref(sample_stream);
_sound_pa_Destroy(s);
return NULL;
 }

-- 




[EGIT] [e16/e16] master 03/04: Remove unused header

2019-04-06 Thread Kim Woelders
kwo pushed a commit to branch master.

http://git.enlightenment.org/e16/e16.git/commit/?id=8ff53d95758d002fba1a0662ef07fe9ee2461399

commit 8ff53d95758d002fba1a0662ef07fe9ee2461399
Author: Kim Woelders 
Date:   Sat Apr 6 10:55:21 2019 +0200

Remove unused header
---
 src/ewins.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/ewins.c b/src/ewins.c
index fc93f9ac..b72ca7c5 100644
--- a/src/ewins.c
+++ b/src/ewins.c
@@ -32,7 +32,6 @@
 #include "borders.h"
 #include "cursors.h"
 #include "desktops.h"
-#include "ecompmgr.h"
 #include "emodule.h"
 #include "eobj.h"
 #include "events.h"

-- 




[EGIT] [e16/e16] master 02/04: Fix potential segv in pulseaudio sound handler

2019-04-06 Thread Kim Woelders
kwo pushed a commit to branch master.

http://git.enlightenment.org/e16/e16.git/commit/?id=9e476fb4265fd5f30e06f723b0a9c5a227059139

commit 9e476fb4265fd5f30e06f723b0a9c5a227059139
Author: Kim Woelders 
Date:   Sat Mar 30 17:44:37 2019 +0100

Fix potential segv in pulseaudio sound handler
---
 src/sound_pa.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/sound_pa.c b/src/sound_pa.c
index aad87cdd..d0bd7c86 100644
--- a/src/sound_pa.c
+++ b/src/sound_pa.c
@@ -67,8 +67,9 @@ dispatch(int block)
for (;;)
  {
err = pa_mainloop_iterate(pa_mloop, pa_block, );
-   D4printf("%s: run err=%d rc=%d\n", __func__, err, rc);
-   if (err <= 0)
+   D4printf("%s: run err=%d rc=%d block=%d\n", __func__,
+err, rc, pa_block);
+   if (err < 0 || (err == 0 && !pa_block))
   break;
  }
 

--