q66 pushed a commit to branch master.

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

commit 74becf76c0247a7a4169c58eb07ea5733dd78366
Author: Daniel Kolesa <d.kol...@samsung.com>
Date:   Mon Sep 23 15:26:23 2019 +0200

    eolian: allow read-only stringshare in events
    
    While the type cannot be moved to the callee, it at least provides
    a hint that it's a stringshare, leeting people ref it instead of
    copying.
---
 src/lib/eolian/database_validate.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/eolian/database_validate.c 
b/src/lib/eolian/database_validate.c
index a24105c607..d0bf40d17a 100644
--- a/src/lib/eolian/database_validate.c
+++ b/src/lib/eolian/database_validate.c
@@ -646,11 +646,11 @@ _validate_event(Validate_State *vals, Eolian_Event 
*event, Eina_Hash *nhash)
           }
         /* any type past builtin value types and containers is not allowed,
          * any_value is allowed but passed as const reference, any_value_ref
-         * is not; string is allowed, but mutable strings or stringshares are
+         * is not; string and stringshare is allowed, but mutable strings are
          * not and neither are string buffers, the type is never owned by the
          * callee, so all strings passed in are unowned and read-only
          */
-        if (kwid >= KW_any_value_ref && kwid != KW_string)
+        if (kwid >= KW_any_value_ref && kwid != KW_string && kwid != 
KW_stringshare)
           {
              _eo_parser_log(&tp->base, "forbidden event type");
              return _reset_stable(vals, was_stable, EINA_FALSE);

-- 


Reply via email to