billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=7881e66b9804be9894274596f236a9db42dd9545
commit 7881e66b9804be9894274596f236a9db42dd9545 Author: Boris Faure <bill...@gmail.com> Date: Sun Nov 15 12:27:40 2020 +0100 color class: ensure operations work --- src/bin/colors.c | 22 +++++++++++++++------- src/bin/termptyesc.c | 11 +++++++---- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/src/bin/colors.c b/src/bin/colors.c index a50fb39..b1d7a5d 100644 --- a/src/bin/colors.c +++ b/src/bin/colors.c @@ -538,16 +538,24 @@ color_scheme_apply(Evas_Object *edje, EINA_SAFETY_ON_NULL_RETURN(cs); #define CS_SET(_K, _F) do {\ - edje_object_color_class_set(edje, _K, \ - cs->_F.r, cs->_F.g, cs->_F.b, cs->_F.a, \ - cs->_F.r, cs->_F.g, cs->_F.b, cs->_F.a, \ - cs->_F.r, cs->_F.g, cs->_F.b, cs->_F.a); \ + if (edje_object_color_class_set(edje, _K, \ + cs->_F.r, cs->_F.g, cs->_F.b, cs->_F.a, \ + cs->_F.r, cs->_F.g, cs->_F.b, cs->_F.a, \ + cs->_F.r, cs->_F.g, cs->_F.b, cs->_F.a) \ + != EINA_TRUE) \ + { \ + ERR("error setting color class '%s' on object %p", _K, edje); \ + } \ } while (0) -#define CS_SET_MANY(_K, _F1, _F2, _F3) do {\ - edje_object_color_class_set(edje, _K, \ +#define CS_SET_MANY(_K, _F1, _F2, _F3) do { \ + if (edje_object_color_class_set(edje, _K, \ cs->_F1.r, cs->_F1.g, cs->_F1.b, cs->_F1.a, \ cs->_F2.r, cs->_F2.g, cs->_F2.b, cs->_F2.a, \ - cs->_F3.r, cs->_F3.g, cs->_F3.b, cs->_F3.a); \ + cs->_F3.r, cs->_F3.g, cs->_F3.b, cs->_F3.a) \ + != EINA_TRUE) \ + { \ + ERR("error setting color class '%s' on object %p", _K, edje); \ + } \ } while (0) CS_SET("BG", bg); diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index f7022a8..16b3040 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -4175,9 +4175,9 @@ _handle_xterm_set_color_class(Termpty *ty, Eina_Unicode *p, int len, if (edje_object_color_class_get(obj, color_class, &r, &g, &b, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL) != 0) + NULL, NULL, NULL, NULL) != EINA_TRUE) { - ERR("error getting color class '%s'", color_class); + ERR("error getting color class '%s' on obj %p", color_class, obj); } l = snprintf(buf, sizeof(buf), "\033]%d;rgb:%.2x%.2x/%.2x%.2x/%.2x%.2x\007", @@ -4189,10 +4189,13 @@ _handle_xterm_set_color_class(Termpty *ty, Eina_Unicode *p, int len, unsigned char r, g, b; if (_xterm_parse_color(ty, &p, &r, &g, &b, len) < 0) goto err; - edje_object_color_class_set(obj, color_class, + if (edje_object_color_class_set(obj, color_class, r, g, b, 0xff, r, g, b, 0xff, - r, g, b, 0xff); + r, g, b, 0xff) != EINA_TRUE) + { + ERR("error setting color class '%s' on obj %p", color_class, obj); + } } return; --