Summary:
Program lookups triggered by removed edje program should be removed when removing
edje program, but program lookups for removed program should be kept to check
exitence of removed program.
This patch keeps lookups for removed program.
Reviewers: cedric, jpeg
Reviewed By: jpeg
Differential Revision: https://phab.enlightenment.org/D4544
Previously, edje_cc could not compile EDC file whose path contains space
character since edje_cc interpreted the EDC file as separate 2 inputs.
(i.e. "input file.edc" was interpreted as "input" and "file.edc")
This patch enables edje_cc to interpret above case correctly.
There are few image formats that converted into *.png on data writing
stage (*.svg, *.tgv). After converting image, this image entry name
changes by <name>.<vector format ext>.png. This make possible save
vector images into edj file.
Because images set could contain vector images too - after save on
disk set image entry name wasn't updated. And still have original name:
<name>.<vector format ext>. This commit update image set entries
name accordingly to the global pool of images.
@fix
yes - the type is const char * for edje runtime (the library) but in
edje_cc we strdup these strings and yes - assign them to a const char *
thus the warning and the need to cast. it's specific co edje_cc only
and so this is correct.
This path add notify for user in case when svg use in image section. It
need for clear understanding why vertor image scale like bitmap. And
add to file name new extension '.png'
This reverts commit 9730eb1f47.
This introduces new issues, such as:
Warning: naviframe.edc:451: couldn't find an exact match in
part 'elements_clip' when looking for 'hidden' 0.000000. Falling
back to nearest one 'hidden' 0.000000.
Because some comparison was not done properly, and changed
float != 0 to float == 0.
Get it right if you insist on "fixing" those floating point
comparisons.
collections.group.parts.part.allowed_seats keeps a list
of seat names to be used for events filter.
So when evas devices of seat type are added, filters
may be applied for each part.
If no seat is listed, every seat may interact with such
part.
collections.group.use_custom_seat_names should be set to '1'
to use seat names on signals as provided by Evas.
By default just follow Edje naming approach
("seat1", "seat2", ...)
If not provided, FOCUS_OBJECT action will keep acting
over default seat.
Also include a usage on edje-multiseat test
(actually no example was exercising this action).
Seat goes as an optional parameter for FOCUS_SET (if not
provided, act over default seat), and emit signals
with seat suffix:
* focus,in,$SEAT
* focus,out,$SEAT
* focus,part,in,$SEAT
* focus,part,out,$SEAT
A lot of cases were missed, cases that are making resulting edj file
useless.
> Now export all aliases
> If group "1" source of group "2" which is source of group "3", it will
> be imported as well!
@fix
Summary:
The inherit_only groups could be used for template of other groups.
So, even if it has image part, it dose not need to have image attributes.
@fix
Test Plan: N/A
Reviewers: cedric, conr2d, jpeg, raster
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D4322
Summary:
Fix parsing error which occurs when lazEDC keyword is combined
with other keyword by period. (like parts.rect)
@fix
Test Plan: Download attached file and run "make"
Reviewers: Hermet, cedric, jpeg
Subscribers: taxi2se
Differential Revision: https://phab.enlightenment.org/D4309
Summary:
When removing program, program lookups for its after programs
should be removed.
@fix
Reviewers: cedric, jpeg, Hermet
Reviewed By: Hermet
Subscribers: taxi2se
Differential Revision: https://phab.enlightenment.org/D4286
Summary:
"after" program inherited from inherit_only group does not have original
program lookup, but _edje_program_copy() doesn't consider this case.
When it fails to copy program lookup, new program lookup should be appeded.
@fix
Test Plan: make attached program and run
Reviewers: cedric, jpeg, Hermet
Reviewed By: Hermet
Subscribers: taxi2se
Differential Revision: https://phab.enlightenment.org/D4253
Previously, it was limited to the part block. It was a mistake
and should have been put in the description instead, as this
allows it to change during state transition (like visible, or
proxy_src_visible).
@feature
fill spread and angle have never been used - resevred intitially for
gradient objects, but never put into use, so remove to get rid of
junk/memory footprint etc.
@optimize
this fixes programs that inherit and play audio on specific channels.
i found that sound worked on single line entries but not multipline
beause single line inherit from multi but didnt copy this program
param - the channel number. this fixes this
@fix
Summary: We use int from 0 to 255 for color, not float
Reviewers: raster, Hermet, cedric
Reviewed By: cedric
Subscribers: jpeg, artem.popov
Differential Revision: https://phab.enlightenment.org/D4182
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary: change specular color to ambient int the function of ambient color
Reviewers: cedric, raster, Hermet
Subscribers: jpeg, artem.popov
Differential Revision: https://phab.enlightenment.org/D4169
Parts can use enother groups as source, for example textblock. If source
groups does not exist - group is not valid. This patch extend the group
copy process and copy dependend group too.
@fix
Summary:
When using EDC written by another person, developer usually
does not need to know all specified parts in EDC but editable
like swallow, text or textblock parts.
The required flag tells whether the part is intended to be used outside EDC.
Reviewers: jpeg, cedric, raster, Hermet
Reviewed By: jpeg, raster
Subscribers: raster, NikaWhite, kimcinoo, jpeg
Differential Revision: https://phab.enlightenment.org/D3579
CID 1261439
An assigned value that is never used may represent unnecessary computation,
an incorrect algorithm, or possibly the need for cleanup or refactoring.
In source_fetch_file: A value assigned to a variable is never used. (CWE-563)
Tested compilation of a few EDC files with no breakage.
Summary:
To keep consistency with Evas Textblock part in edje,
text.min has to work logically even if ellipsis is enabled.
If a Text part has minimum width, maximum width and "text.min: 1 X;",
Text part should be expanded until its width reaches to the maximum width.
Then, ellipsis will work. Singleline Textblock is also working like this.
@fix
Reviewers: cedric, herdsman, raster, tasn
Subscribers: Blackmole, z-wony, jpeg
Differential Revision: https://phab.enlightenment.org/D3587
Summary: check if the size of scene is bigger than 0x0 and build 3D scene in the edje_player in this case and use "opengl_x11"
Reviewers: Hermet, jpeg, cedric
Subscribers: NikaWhite, Oleksander, artem.popov, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4041
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
bin/edje/edje_cc_out.c: In function ‘data_write_images’:
bin/edje/edje_cc_out.c:1164:7: warning: ‘f’ may be used uninitialized in this function [-Wmaybe-uninitialized]
if (!f) return EINA_FALSE;
^
bin/edje/edje_cc_out.c:1154:15: note: ‘f’ was declared here
Eina_File *f;
^
Reviewers: cedric, jpeg
Reviewed By: jpeg
Subscribers: seoz, jpeg
Differential Revision: https://phab.enlightenment.org/D4101
passing in wrond data type as a void * (no typechecking) like
node->style instead of node as the function EXPECTED node not
node->style
also why malloc strlen of string then strcpy when strdup will do? why?
fix!
still doesn't work. i can't display an svg vector at all.
so compiling current efl theme seems to spawn 178 instances of
embryo_cc in the background (then collect results). this is a bit
excessive and may be a source of issues. this may be causing T3874
perhaps due to embryo_cc's not launching (fork failing or something
else) and we don't check if fork fails. so try limit to 8 embryo_cc's
in the bg which is more reasonable than the currently "unlimited"
which leads to 178 currently...
i hope this fixes T3874
@fix
Summary:
This is the svg loader which will parse the svg file and store it in a intermediate structure.
It provides the helper function to get EET descriptor to save the structure into eet file.
NOTE: Not all svg attributes are handled yet. but most common attributes are handled .
Reviewers: Hermet, cedric
Subscribers: Hermet, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3868
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
EXTERNAL parts can have parameters, and its form is like the next.
params.string: "param_name" "param_value";
This patch will shorten above line by the next syntax.
params.param_name: "param_value";
The type of param will be determined by the type of inserted value.
Reviewers: cedric, raster, Hermet
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3958
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
According to D3710 new field "camera" in edc was added for IMAGE parts.
It is the name of the CAMERA part to set its viewport as a source of image if no image name is given.
Reviewers: raster, Hermet, cedric
Reviewed By: cedric
Subscribers: jpeg, artem.popov
Differential Revision: https://phab.enlightenment.org/D3777
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
When a new edje program is created, some jobs like lookup part
(Part_Lookup) or compiling embryo script (Code_Program) are queued.
If program is removed, queued jobs should be removed also.
Reviewers: jpeg, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3900
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
add programs block to the sample code of LazEDC,
and add comment about possibility to omit "default"
when part description inherits from "default".
Reviewers: Hermet, zmike
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3915
This reverts commit 6f7608befd.
Item in table and box do not need names as they have an index. This
is breaking ABI for edje application that rely on getting the index
properly when a signal is emitted. To be precise, this did break
elemines.
This was broken in c0f887b429 (2015/10/01).
What happened was: ted->filter is not part of tex->text anymore,
so it didn't get copied over from the parent.
Thanks @zmike for the report and pointing out the bad commit.
Fixes T3467.
@fix
Summary:
program_remove attribute allows to remove program inherited from
parent group, but if its action is EDJE_ACTION_TYPE_SCRIPT,
anonymous lookup also should be deleted.
@fix
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3875
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
enum Evas.Canvas3D.Shade_Mode are using for choose relevant shader source code.
So renaming have a sence.
Rename evas_canvas3d_shade_mode_set/get property to evas_canvas3d_shader_mode_set/get
Rename internal fields and functions
Reviewers: cedric, Hermet, raster
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3882
Summary:
Some keywords cause parsing error when they are used as part name.
For example,
group { "some_group";
parts {
box { "box";
}
}
}
The part name "box" should be processed by wildcard handler,
but this is pushed into stack. (collections.group.parts.part.box ...)
This patch pushes token into stack only when it doesn't have quotes.
@fix
Reviewers: cedric, raster, jpeg
Reviewed By: jpeg
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3841
Summary:
Support hexadecimal color code in EDC.
Four types of color code are acceptable.
All values below mean 'Red'. (255 0 0 255)
color: "#F00";
color: "#F00F";
color: "#FF0000";
color: "#FF0000FF";
Color code tables are usually provided with hexadecimal numbers.
Supporting hexadecimal color code will allow developers to skip
manual conversion hex to decimal.
Test Plan: Test case will provided with seperated commit.
Reviewers: cedric, jpeg, raster
Reviewed By: raster
Subscribers: raster
Differential Revision: https://phab.enlightenment.org/D3831
This reverts commit e6a27e13b5.
While preloading itself is fixed, we forgot a little detail there is limit to
the amount of files we can open on any system. This is high enough on Linux that
we never see the issue, but on MacOS X, we can't even build elementary theme.
Reverting this for now and until we have a proper fix for this.
Summary:
script_override variable is initialized as EINA_FALSE
when group is created, but assign EINA_TRUE can mislead
some developers to think script_override default value
is EINA_TRUE.
Reviewers: Jaehyun_Cho
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3803
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
If a group inherits from the other, group script block is copied
only when there are program script blocks in parent group.
This patch makes edje_cc always copies group script block,
but allows to override group script block in child group.
The content of reverted D3799 is included. That reveals this inconsistency.
Reviewers: cedric
Subscribers: Jaehyun_Cho, woohyun, jpeg
Differential Revision: https://phab.enlightenment.org/D3802
This reverts commit 37408aef95.
This commit is reverted temporarily to prevent build fail.
This commit reveals the hidden bug when elementary theme is built.
This commit will be applied after the hidden bug is resolved.
Summary: Code doesn't need to be copied every time when program is copied.
Reviewers: cedric
Reviewed By: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3799
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
This internal function was made for checking non-existence of
Edje Part when handling insert_before/after attributes.
However, checking is implemented in different way and this function
is not used anywhere.
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3790
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary: meaningless suffix is attached to a word in error message.
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3794
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
When edje_cc inherits group, group's script wasn't copied.
So base group and inherited groups use same pointer.
When edje_cc makes lookups for script, loopkups is overwritten.
Test Plan: elementary_test -> shown error log
Reviewers: Hermet, woohyun, cedric, raster
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3796
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
This patch fixes a potential resource leak where we would previously
create a new eina_array and then possibly return from this function
(when checking validity of 's' parameter) without freeing the newly
created array.
Coverity CID1350291
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
gcc now is complaining about out ancient cpp code possibly using
newlines as undefined. this should keep this warning quiet - there
isnt a real performance issue here.
bin/edje/epp/cpplib.c: In function ‘cpp_get_token’:
bin/edje/epp/cpplib.c:4602:15: warning: ‘newlines’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
else if (newlines > 0)
@fix
this define means that any 1.18 feature can now be detected by testing for
the presence of this define, even before the release has gone out
for future (non-bugfix) releases, further defines should be created in addition
to this one in order to provide detection for features in each version
Summary:
Adding of new properties for light in edje-3d. Recalculation of main properties in Canvas3D parts to provide animation (only those which I used in widgets).
Checking of frame existing when setting material.
Reviewers: cedric, raster, Hermet
Subscribers: jpeg, artem.popov
Differential Revision: https://phab.enlightenment.org/D3694
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Detecting missing part for insert_before/after is broken.
This patch makes the feature work and clarifies error message,
and removes redundant internal function.
Reviewers: cedric, jpeg
Subscribers: raster, jpeg
Maniphest Tasks: T2513
Differential Revision: https://phab.enlightenment.org/D3576
Summary:
The "color_tree" block contains a list of one or more "node" blocks.
A "node" block consists of its own color class name and the list of child
color classes. At runtime, parent color class will be referred instead,
if child color class is set to part but its color values are not defined.
Reviewers: raster, Jaehyun_Cho, jpeg, cedric
Reviewed By: cedric
Subscribers: cedric, kimcinoo
Differential Revision: https://phab.enlightenment.org/D3606
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Group.Parts.Part.Description.Domain @edcsubription is in wrong place,
(actually that is not necessary one.)
so it makes Group.Parts.Part.Description.Text block seem weird.
Reviewers: jpeg, cedric
Differential Revision: https://phab.enlightenment.org/D3597
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This reverts commit 2ca99b8b68.
This breaks elm compile:
EDJ default.edj
edje_cc: Critical. In group "genlist_arrow": Unable to find part "sel_bevel" for insert_after in part "arrow_img_l".
Summary:
Detecting missing part for insert_before/after is broken.
This patch makes the feature work and clarifies error message,
and removes redundant internal function.
Reviewers: cedric, jpeg
Subscribers: jpeg
Maniphest Tasks: T2513
Differential Revision: https://phab.enlightenment.org/D3576
When compiling src/bin/edje, we end up with compiler warnings about
'pc' variable being set but not used. This patch just comments out
(for now) those variables (as I am unsure if they are going to be used
later or not).
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
edje_cc does not check whether insert_before/after part exists.
edje_cc will notify a compilation error to developer when insert_before
or insert_after part does not exist.
T2513
Reviewers: Hermet, NikaWhite
Subscribers: cedric, jpeg
Maniphest Tasks: T2513
Differential Revision: https://phab.enlightenment.org/D3517
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
I have a strange feeling that I always commit the same code to edje-3d, I hope it will finish very soon.
However here are some important new keywords, descriptors for them, methods for models,
structure for providing animation in edje programs and some more changes.
Reviewers: raster, Hermet, cedric
Reviewed By: cedric
Subscribers: jpeg, artem.popov
Projects: #efl
Differential Revision: https://phab.enlightenment.org/D3437
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
when changing the type of a part which already has descriptions, it's
necessary to avoid copying any of the previous type-specific desc data
this should be the last of them...
@fix
in the case where a part is inherited, changing the type will lead to
broken part/program lookups for the part during resolving in write-out;
memcpy alone is not enough to fix this.
@fix
==24030== Invalid read of size 1
==24030== at 0x4A0AC77: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030== by 0x598A9DC: _eet_dictionary_lookup (eet_dictionary.c:69)
==24030== by 0x598AA93: eet_dictionary_string_add (eet_dictionary.c:103)
==24030== by 0x598107B: eet_data_put_string (eet_data.c:857)
==24030== by 0x598213F: eet_data_put_type (eet_data.c:1433)
==24030== by 0x59895AB: eet_data_put_unknown (eet_data.c:4798)
==24030== by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030== by 0x59894A4: eet_data_put_array (eet_data.c:4760)
==24030== by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030== by 0x5989617: eet_data_put_unknown (eet_data.c:4807)
==24030== by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030== by 0x5983E06: eet_data_write_cipher (eet_data.c:2396)
==24030== by 0x5983E92: eet_data_write (eet_data.c:2412)
==24030== by 0x406BC2: data_thread_head (edje_cc_out.c:674)
==24030== by 0x406D51: data_write_header (edje_cc_out.c:717)
==24030== by 0x40B52E: data_write (edje_cc_out.c:2439)
==24030== by 0x40563D: main (edje_cc.c:399)
==24030== Address 0xf45cb7b is 0 bytes after a block of size 347 alloc'd
==24030== at 0x4A089C7: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030== by 0x414BAC: mem_alloc (edje_cc_mem.c:15)
==24030== by 0x41B66A: st_filters_filter_file (edje_cc_handlers.c:4718)
==24030== by 0x410EDA: new_statement (edje_cc_parse.c:229)
==24030== by 0x41227C: parse (edje_cc_parse.c:719)
==24030== by 0x412E5C: compile (edje_cc_parse.c:1044)
==24030== by 0x405624: main (edje_cc.c:394)
==24030==
==24030== Invalid read of size 1
==24030== at 0x4A0AC77: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030== by 0x598AAFB: eet_dictionary_string_add (eet_dictionary.c:109)
==24030== by 0x598107B: eet_data_put_string (eet_data.c:857)
==24030== by 0x598213F: eet_data_put_type (eet_data.c:1433)
==24030== by 0x59895AB: eet_data_put_unknown (eet_data.c:4798)
==24030== by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030== by 0x59894A4: eet_data_put_array (eet_data.c:4760)
==24030== by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030== by 0x5989617: eet_data_put_unknown (eet_data.c:4807)
==24030== by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030== by 0x5983E06: eet_data_write_cipher (eet_data.c:2396)
==24030== by 0x5983E92: eet_data_write (eet_data.c:2412)
==24030== by 0x406BC2: data_thread_head (edje_cc_out.c:674)
==24030== by 0x406D51: data_write_header (edje_cc_out.c:717)
==24030== by 0x40B52E: data_write (edje_cc_out.c:2439)
==24030== by 0x40563D: main (edje_cc.c:399)
==24030== Address 0xf45cb7b is 0 bytes after a block of size 347 alloc'd
==24030== at 0x4A089C7: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030== by 0x414BAC: mem_alloc (edje_cc_mem.c:15)
==24030== by 0x41B66A: st_filters_filter_file (edje_cc_handlers.c:4718)
==24030== by 0x410EDA: new_statement (edje_cc_parse.c:229)
==24030== by 0x41227C: parse (edje_cc_parse.c:719)
==24030== by 0x412E5C: compile (edje_cc_parse.c:1044)
==24030== by 0x405624: main (edje_cc.c:394)
@fix
since it's now possible to inherit parts, it's possible that inheriting from
a different part type can lead to memory errors in the case where one part
has a larger desc struct than the other
@fix
Replace current EDC parsing code in edje_cc on Windows with the code
using ecore_file_file_get() and ecore_file_dir_get().
Signed-off-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Edje_Part can change its min or max size in code level with
size_class.
Differential Revision: https://phab.enlightenment.org/D3329
PS: Manual commit, arc refused to work...
@feature
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
On Windows, including file path in EDC has not been parsed correctly
because '\' has not been used for path separator.
This commit fixes edje_cc complie to use '\' as path separator on
Windows.
thanks conr2d for pointing this out - we uses the float parse func and
not in parse. we should use int parse as the min and max sizes are
just ints and not floats. :)
@fix
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
This checks that the ETC format is the same, and then proceeds
to simply stuff in the TGV file inside the EDJ as an "edje/image/n"
This will save a huge amount of time since now you just need
to encode an image once to TGV (ETC1 or ETC2) and you can reuse it
directly without re-encoding.
To use this, convert images with ecore_evas_convert and then
add them to EDC with the ".tgv" extension and the proper LOSSY format.
The quality argument will then be ignored.
@feature
Summary:
When an edje program attempted to play a sound that was not registered
(e.g. in a sounds{} block), edje_cc would segfault instead of throwing
an error.
@fix
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D3171
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Due to a misplaced semicolon, EINA_LIST_FREE was doing nothing and only
the last part was freed if there was one, and probably a crash if there
wasn't.
This shows again that having statements without {} is dangerous. We need
to force {} and add a lint rule, or at the very least, add a rule to put
the ; in a new line (like clang warns about by default anyway).
@fix
Strangely only the other states were checked for errors. Errors
include:
- no name for state, or "description with missing state"
- invalid clip_to
Also improve the error message a bit
This makes SNAPSHOT a part type on it own, combining the
common and filter subtypes.
This means it is now possible to set an evas filter on
a SNAPSHOT object, just like for TEXT, IMAGE and PROXY.
@feature
Not 100% sure of this fix but it "works". This is just compile-time
safety checking code after all, so it won't impact any existing
application.
This fixes commit d4444bf7a0. Tested with empc.
Thanks @zmike for the report and test case.
@fix
thanks to 김낙경 <nakkyong.kim@samsung.com> for pointing this out.
indeed fclose() closes the fd adopted by fdopen(). it doesn't dup it.
so we double-closed. it seems this never caused an issue until now.
this should fix it.
Summary:
Add additional check for description.text.source
and description.text.text_source attributes in TEXT part.
For cases when as source uses non TEXT/TEXTBLOCK part
serialization process should be stopped. This will cause
segmentation fault on runtime. (see edje_text.c line 251)
Reviewers: Hermet, raster, cedric, jpeg
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D3026
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
On Windows, PATH_MAX is 260 and PATH_MAX is used as string buffer
size in edje_cc compile. This causes edje_cc compile error when the edc
file contains "script" keyword and the length of file paths is
relatively long.
To resolve this problem, change the string buffer size in edje_cc
compile.
@fix
Summary:
Fix Coverity issue which reports a dereference before null check.
The enc_info can not has NULL point
because _edje_multisense_encode api calls exit() in case of failure
Reviewers: Hermet, Jaehyun, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2794
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This is now like the other embedded scripts, where a verbatim
string is parsed. The syntax is now:
filters {
filter {
name: "filter0";
file: "filter.lua";
}
filter {
name: "filter1";
script {
blend {}
}
}
filter.file: "file.lua"; // name is "file.lua"
}
Thanks @raster for the quick review.
Yeah that was totally overkill and pure laziness on my side.
Despite having the EO API for the filters still in beta,
I want to the EDC API and EDJ binary formats to stay compatible,
so let's get it right before the release :)
Summary: Fix Coverity CID1302700 which reports a dereference before
null check. Basically, it is safe to call free() with a possible NULL
value so we can remove the 'if' check here.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: Fix Coverity CID1308232 which reports that we may be passing
NULL to strcmp here as the function _parse_param_get May return NULL.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>