Commit Graph

20066 Commits

Author SHA1 Message Date
Jean-Philippe Andre 0353eb5b7f evas: Add debug_name to image objects 2017-08-04 10:24:03 +09:00
Jean-Philippe Andre b290cb5de0 eina_slstr: Fix leak in an error case
This function takes ownership of the incoming strbuf
2017-08-04 10:24:03 +09:00
Jean-Philippe Andre 999dbd9764 eo debug name: Use strbuf instead of slstr
This should be a little bit more efficient, even if more "risky"
in terms of leaks. The final API still looks exactly the same.
2017-08-04 10:24:03 +09:00
Jean-Philippe Andre 569ad0bac4 evas/edje/elm: Override debug_name in core classes
This is really only a demonstration of what kind of information
we can print with efl_debug_name_get(). Hopefully this can help
debugging with printf/ERR logs and even help with live debugging
inside gdb.

This shouldn't be used for other purposes than debugging, as the
exact string format is not defined.

@feature
2017-08-04 10:24:03 +09:00
Jean-Philippe Andre c4769ff898 eo: Add debug_name read-only property to ease debugging
This will include the following information, by default:
 - class name
 - whether the class is an override
 - eo id (pointer)
 - refcount
 - name if one was set (Efl.Object property)

This also supports classes, which is why it's an EAPI in eo.c
and not only a method of Efl.Object

This can be overriden by subclasses using the empty method
Efl.Object.debug_name_override.get

If the function is overriden, then the returned string is used
as is and so it is left to the subclass to include all the
necessary information (as above). This can easily be achieved
by calling efl_debug_name_get(efl_super()) and then concatenating
the strings.

Think of this function as something like Java's toString(), but
only for debugging (i.e. a string class should not just return
its string value).

@feature
2017-08-04 10:24:03 +09:00
Jean-Philippe Andre 0834511067 Eo: Allow multiple functions overrides
This allows two things:
 - adding new override functions on an object that already has
   overrides
 - resetting a specific function (or list of functions) to the
   parent class implementation by passing NULL as implementation

Fixes T5580

@feature
2017-08-04 10:24:03 +09:00
Jean-Philippe Andre 83a4c3e3e2 elm_test: Remove calls to visible_set for EO objects 2017-08-04 10:24:03 +09:00
Jean-Philippe Andre fd9cf1d3b6 evas: Make all EO canvas objects visible by default
All legacy objects remain invisible by default. Any call to
visible_set() will prevent the automatic show() to happen.

show() will be done just before render time, which may be a
bit too late in order to propagate the necessary changes.

This may break some things where some objects are created
internally using efl_add() instead of the legacy API, and
the intent was not to show the object.

@feature
2017-08-04 10:24:03 +09:00
Carsten Haitzler 932ae95a4e efl src - mark fallthrough switch statements in 3rd party code
in code we importend that doesnt use eina we have warnings of
fallthroughs. all o them are commented to be fallthrough so add the
attribute there too to have fewer warnings.
2017-08-04 10:19:27 +09:00
Chris Michael 0bd8259da8 ecore-wl2: Rename local function and make it static
As this function is not called from anywhere outside of
ecore_wl2_window.c file, this can be declared static.

NB: This patch also changes the function name to match the library
(ecore_wl2).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-08-03 10:15:41 -04:00
Jean Guyomarc'h 9368eedd35 efl: terrible kludge so avoid termination crash on osx
Currently, elementary programs crash on termination on macOS (seems
Sierra-specific). This is very nasty, looks like deep memory corruption...
Without valgrind (or like) support on Sierra, it is difficult to
pinpoint the origin of the problem.

Due to the imminient release, and after discussion with @stefan, this
kludge will allow the release to happen.

This commit MUST be reverted just after the release, so we don't
blindfold ourselves!

Ref T5245
2017-08-03 10:31:26 +02:00
Carsten Haitzler 256450d294 eina debug - remove other swap and comment on the weirdness of this 2017-08-03 09:08:04 +09:00
Cedric BAIL eed23765f9 eina: failing to load a module is actually an ERR that user should see. 2017-08-02 16:16:33 -07:00
Guilherme Iscaro 48443fda8f Eina_File: Avoid using munmap() on file->global_map.
When a virtualized file is created the file->global_map will not
point to a mmapped region, thus it's not safe to use munmap() during
the file cleanup. Only use munmap() if the file is backed by a FD.

Fixes: T5234.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-02 16:03:20 -07:00
Guilherme Iscaro c61ac48f1a Efl_Copier: Add efl_wref_del() for pd->job.
In order to perform IO operations the copier will create futures using
efl_future_use(&pd->job, ...), which will set pd->job to NULL once the
future is destroyed. However this may lead to problems, because in some
cases the copier may be deleted at the _efl_io_copier_job() function,
which is the future's callback. Since the copier may be deleted before
the future, the area pointed by pd->job will have disappeared by the time the future
tries to set pd->job to NULL. To avoid this problem the copier must
explicily call efl_wref_del().

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-02 16:03:11 -07:00
Carsten Haitzler 470b48d63c eina debug - new debug infra - comment out and make a note on bad endian
bad endian... code... see the comment in the src about why i think
this is bad as obviously the buffer pointed to is a 64bit type always
that is a pointer to something...
2017-08-02 22:41:54 +09:00
jiin.moon 49bb102d16 evas: Add safety code for smart object
Summary:
If user use the evas_object_smart_callback_add with no smart object,
it should be returned

@fix

Test Plan: self

Reviewers: jpeg, cedric, jypark

Differential Revision: https://phab.enlightenment.org/D5056
2017-08-02 20:28:09 +09:00
Jean-Philippe Andre b10be4e2ed evas filters: Disable extra debug
Forgot to remove that! It's better to disable for the release,
DBG() and XDBG() are disabled anyway.

CID 1308611
2017-08-02 20:15:58 +09:00
Jean-Philippe Andre de99a71c43 evas filters: Shut up coverity
Add some safety checks.

CID 1374271
2017-08-02 20:15:57 +09:00
Jean-Philippe Andre 4299905996 evas: Rename calculate property to calculating
Recently introduced by @cedric
I think the name is not very clear, and is clashing with the
actual method of the same name.
2017-08-02 19:12:13 +09:00
Carsten Haitzler bdadc30691 epp - fix buffer size for possibly bigger int snpritnfs
8 bytes wasn't enough for the full int range. use 12 and we're good.
removes warning for sure

@fix
2017-08-02 18:48:06 +09:00
Carsten Haitzler ed947fad81 efl_wl - fix warning for possible uninitted list access
could potentially be an issue in one theoretical case. less warnings
is better anyway
2017-08-02 18:48:06 +09:00
Carsten Haitzler 800b877ed7 evas model loader - restructure code to silence warning
keep our build quiet warnings-wise and change the code to be so... so
we see real warnings. not a bug... just a warning.
2017-08-02 18:48:06 +09:00
Andy Williams 91293d3b25 elm_code: small optimisation for large files 2017-08-02 10:32:13 +01:00
Carsten Haitzler cae354d299 eina hamster count - use a fixed version, revision etc. so builds repro
this should help with repdocucable builds by having our hamsters
constant for a build of a specific code revision.

@fix
2017-08-02 17:12:28 +09:00
Carsten Haitzler 7718b4c0ea ector - fix coveirty fix - vmin is -vmax not -vmin 2017-08-02 17:01:12 +09:00
Jiyoun Park c3d8a1d9f4 efl_ui_win: add error hanling code for malloc fail 2017-08-02 16:42:04 +09:00
Jean-Philippe Andre 5c8670fb2b ecore_x: Avoid crash on NULL
This happens in E with software compositing, since E's commit
5702f0975e890f07cfb. E should be fixed shortly but segv is not
acceptable. Without segv E is still massively broken so it's
not like the bug would be hidden (large black areas in windows,
after switch vdesks with enough windows).
2017-08-02 13:34:45 +09:00
Cedric BAIL ea5675a6a0 evas: add a way to know if we are already computing smart object calc. 2017-08-01 13:17:10 -07:00
Mike Blumenkrantz f6c465dc59 Revert "evas: Always call show/hide intercept"
This reverts commit 936ea58cb9.

this is an ideal change, but it breaks previously-expected behaviors
for interceptors and thus enlightenment is completely broken
2017-08-01 13:29:46 -04:00
Marcel Hollerbach aca00f8502 ecore_x: init XEvents before passing to x
it turns out that xlib is going to copy the complete struct into
something internal. This might lead to the condition that a uninitalized
value might be part of the struct, and when later the struct is read
again the code might do wrong stuff since that value could be set now to
a randomly other meaningfull value.

This turned out on me in e as i could not write any letters like ßöäü,
since that lead to a not returning call to _XReply internal of xlib.
Dugging that showed that xlib was waiting on a reply of a call that
never got executed, and the XEvent it is waiting on just contians a
randomly correct value.

@fix
2017-08-01 18:16:23 +02:00
Jean-Philippe Andre ae443173ec edje_svg: Fix handling of realloc
This amends 8e311db414 as the logic
was badly broken. A "shadow" variable warning
clearly showed that "tmp" was not used properly.

This fixes the "IBM" logo in svg-test (the only one
using polygon/polyline, it seems).
2017-08-01 20:03:20 +09:00
Jean-Philippe Andre 3b8c60954e Revert "elm gesture layer - use fabs not abs when actually comparing floats"
This reverts commit 2d4d836018.

Don't pretend to fix an issue found by a static analyzer by
introducing another issue that even clang warns about.

Fixes:
elm_gesture_layer.c:2533: warning: using floating point absolute value
  function 'fabs' when argument is of integer type [-Wabsolute-value]
        if ((fabs(st->info.mx) > ELM_GESTURE_MINIMUM_MOMENTUM) ||
             ^
2017-08-01 20:03:20 +09:00
Shinwoo Kim 391a777c01 elementary: access overrides Accessible.state_set.get
The elm_access a widget makes primitive object accessible. If a primitive
object is not visible, then the elm_access should NOT have state VISIBLE, and
SHOWING. From now the elm_access is checking visibility of primitive object.
2017-08-01 19:52:38 +09:00
Carsten Haitzler fd52344b03 eldbus - make file local func added in fix static
better to keep the func local unless needed elsewhere too
2017-08-01 11:23:20 +09:00
Jihoon Kim 15250fb8cf ecore_imf: check return value of memory allocation
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2017-08-01 10:27:37 +09:00
Derek Foreman acc76cadd3 ecore_drm2: Stop making dumb fbs and mmapping for gbm fds
We were doing this so E could do screenshots in a hackish way,
E has been fixed so this hack here no longer needs to live.
2017-07-31 11:12:05 -05:00
Derek Foreman df658a6d15 ecore_drm2: Remove dead code in blank time get
When I added the fallback block I left an if statement that could
never evaluate to true.  Remove it.
2017-07-31 10:57:56 -05:00
Derek Foreman d4e69af383 wayland-shm: Set CLOEXEC for dmabuf
Stop leaking the render node fd to child processes.
2017-07-31 10:55:47 -05:00
Shinwoo Kim a238272f00 eldbus: check message serial before using
Summary:
Whatever the dbus_connection_send_with_reply returns, the serial value
should be checked, because if the seral value is invalid a process could be aborted.

There is backtrace as below.

The dbus_connection_send_with_reply could return TRUE
even though it has a problem. Please refer to following comment:

   /* Refuse to send fds on a connection that cannot handle
      them. Unfortunately we cannot return a proper error here, so
      the best we can do is return TRUE but leave *pending_return
      as NULL. */

Test Plan:
There is not a exact reproduce step. If the Tizen login manager is relaunched
repeatedly, then the dbus and other service processes are relaunched.
If a service process tries to use dbus when the dbus has problem as above,
then it could be possilbe to get above backtrace.

Reviewers: raster, zehortigoza

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5053

@fix
2017-07-31 15:53:58 +09:00
Jiyoun Park ca625aa323 efl_ui_win: add EFL_UI_WIN_SOCKET_IMAGE type check
elm_win_socket_listen api only work for EFL_UI_WIN_SOCKET_IMAGE type window.
    So it is better to add type check code.
2017-07-31 15:20:02 +09:00
Carsten Haitzler c5a5302e06 evas - handle devices that on deletion delete other devices on shutdown
this fixes a whole bunch of warnings that just recently turned up...
2017-07-31 15:07:28 +09:00
Carsten Haitzler 968e1dfb37 elocation - fix return of status, address, position to actually ret data
the data was never returned! fix fix fix.

found by PVS studio

@fix
2017-07-31 12:18:00 +09:00
Carsten Haitzler d371ece4a9 ecore x - convert to using unsed instead of dummy state,ents after ret
found by PVS studio
2017-07-31 12:12:40 +09:00
Carsten Haitzler b1e9d46bcc elm code - handle alloc failure for line split
this culd optentially use large offsets before accessing the ptr thus
it may not segv inthe first page but actually work if positionoffsets
are large enouh, so handle this case explicitly.

@fix

found by PVS studio
2017-07-31 12:01:41 +09:00
Carsten Haitzler d639063b50 elm code - handle alloc failure for line split
this culd optentially use large offsets before accessing the ptr thus
it may not segv inthe first page but actually work if positionoffsets
are large enouh, so handle this case explicitly.

@fix

found by PVS studio
2017-07-31 12:00:45 +09:00
Carsten Haitzler 6e82f90807 evas mem - remove redundenty unused evas mem absraction
was never used as was not practical to do so so it effectively does
nothing so remove it to reduce analyser warnings

found by PVS studio
2017-07-31 11:53:59 +09:00
Carsten Haitzler f4ce0d1b95 efreet icon cache creation binary - remove redundent check
found by PVS studio
2017-07-31 11:41:10 +09:00
Carsten Haitzler 0efb70e317 elm theme - remove redundent check
found by PVS studio
2017-07-31 11:38:42 +09:00
Carsten Haitzler 0f826cc4f1 elm config tool - fix redundent check
found by PVS studio
2017-07-31 11:38:15 +09:00
Carsten Haitzler 26e93caec7 evas textblock - remove redundant check
found by PVS studio
2017-07-31 11:34:41 +09:00
Carsten Haitzler 1dc443a1a6 epp - cpp - fix buffer end/null checks given static buffer paths
this is an ncient bug that's never been triggered... but it's there.
fix and compare to null buffer.

found by PVS studio

@fix
2017-07-31 11:31:04 +09:00
Carsten Haitzler 71b1f4d5a5 epp - remove redundent check for char
makes static analyisers happy... not a bug

found by PVS studio
2017-07-31 10:58:27 +09:00
Carsten Haitzler 6ac4ea2080 evas cache2 - remove excess file and key checks - only check file
no need for key as no key is handled and no file is handled too. cleaner
code.

found by PVS studio
2017-07-31 10:58:04 +09:00
Carsten Haitzler 2d4d836018 elm gesture layer - use fabs not abs when actually comparing floats
2 abs uses should have been fabs as they compe a src float with
anot her float.

found by PVS studio

@fix
2017-07-31 10:41:39 +09:00
Carsten Haitzler 573d0cf586 eina debug - set length after freeing/iterating over the keys
found by PVS studio
2017-07-31 10:03:59 +09:00
Carsten Haitzler ae79052376 elm calendar - fix gmtime call to use an actual value
e85c92662b added this bug. before it was
always set to 259200 (first sunday after epoch).

found by PVS studio
2017-07-31 10:00:00 +09:00
Carsten Haitzler 2c1e2db876 ecore_drm2 - fix startup if edid blob is null.. assume all 0's
this causes a crash when no edid is available. survive and dont crash.
this causes e wayland to not work at all on my baytrail laptop.

@fix
2017-07-30 23:27:56 +09:00
Carsten Haitzler 3de08599bf eldbus lower error print levesl from ER to WRN in get all props
this is generally unnecessary noise as the majority of the time i see
this it's because the message was canceled by the caller... thats not
an error though then... it's intended. less debug noise to sift through.
2017-07-30 23:04:35 +09:00
Derek Foreman 1a175cd537 ecore_evas_drm: Only check for gpu time offset if env var set
Since most systems shouldn't need this, and it's possible
that it's causing trouble for some systems, make it off by
default.

Fix T5806
2017-07-29 08:52:16 -05:00
Carsten Haitzler e1605e6405 tests - make ecore con test suite reliable and work
basically ecore_con's test suite was broken. ipv6 checks were broken.
you now need to set an env var to get ipv6 tested. using eocre_con to
detetc it didnt init eina or ecore_con and if you do init these then
the other tests that check return values from these fail... so make it
an env var if you want to test ipv6. now it's reliable and works!
2017-07-29 14:56:57 +09:00
Carsten Haitzler 2b91a48d72 ector software - fix min/max int range for fixedpoint math
min value bitshifts are negative and thus not portable. just tax max
(as its 1 more than min it if we do -max) as the limit as its within
range. this should fix it

@fix

found by PVS studio
2017-07-29 13:49:33 +09:00
Carsten Haitzler 29eebb44fc evas render - remove obj null check in proxy clip as obj not null
obj is never null. so this check is pointless. not a bug though.

found by PVS studio
2017-07-29 12:26:49 +09:00
Carsten Haitzler 3c27869c93 evas object textblock - fix append if cur node is null
then it will appeand totally as it should be. small buglet found. fixed

found by PVS studio

@fix
2017-07-29 12:20:12 +09:00
Carsten Haitzler a0ed0483fc evas gl gnenric engine - dont check w and h ptrs - will never be null
analyser unhappiness.

found by PVS studio
2017-07-29 12:06:20 +09:00
Carsten Haitzler 66f71d2ebc embryo_cc - remove pointless test for null byte and space
space wins. the nul byte test is pointless. not a bug but pointless code

found by PVS studio
2017-07-29 11:36:33 +09:00
Carsten Haitzler 7620d5d957 ecore-x - remove useless extra assignments of value to itself
usless code that does nothing - not a bug though

found by PVS studio
2017-07-29 11:22:54 +09:00
Carsten Haitzler 075e150a03 edje_cc - remove pointless free of null ptr
not a bug but not useful code either freeing what is already null

found by PVS studio
2017-07-29 11:13:26 +09:00
Carsten Haitzler 7abf4715f2 efl ui text - remove useless else + free
string is null so no need to free. not a bug but cleaner and analysers
dont like it.

found by PVS studio
2017-07-29 11:11:21 +09:00
Carsten Haitzler fe781b284c edje entry - remove extra else and free as sdtring is null there
string is null so no need to free. not a bug but cleaner and analysers
dont like it.

found by PVS studio
2017-07-29 11:08:46 +09:00
Carsten Haitzler cfe4f19f54 eina simple xml parser - remove pointless memcmp of 0 bytes
no point - all we are doing is having a final fallback of any tag that
starts with ! that isnt a special one like !DOCTYPE, !-- comment and
![CDATA stuff... analysers dont like these pointless calls.

found by PVS studio
2017-07-29 11:03:01 +09:00
Carsten Haitzler 8b6e72bfad els box - remove rudundant double check
not a bug but checking something twice in a row isn't too useful

found by PVS studio
2017-07-29 10:56:53 +09:00
Carsten Haitzler 20333c7905 elm code - remove unneded extra check from copy and pasta it seems
extra check already done in if above - no need. looks like copy &
paste of the checks from above thus why it's there, but not needed.
not a bug, byt analysers dont like it so remove

found by PVS studio
2017-07-29 10:56:53 +09:00
Carsten Haitzler 2eb46302a2 emotion gst1 module - remove extra unneded if's
not a bug, but don't need these

found by PVS studio
2017-07-29 10:56:53 +09:00
Carsten Haitzler 08a69d2284 eeze_disk - remove redundant if check already done
removes redundant fi check. not a bug but analysers dont like it and
it is redundant

found by PVS studio
2017-07-29 10:56:53 +09:00
Carsten Haitzler ff26991220 efl net - fix ipv6 getsockname to use the proper struct to do it
struct sockaddr_storage *addr;

AS the actual storage ( a ptr to store the whole data). kind of...
wrong. it should be:

      struct sockaddr_storage addr;

see examples of this kind of usage of getsockname:

http://www.masterraghu.com/subjects/np/introduction/unix_network_programming_v1.3/ch04lev1sec10.html

found by PVS studio

@fix
2017-07-29 10:56:47 +09:00
Carsten Haitzler d532f28284 eeze disk - remove uneeded extra check for test var
test for non null already done above, so test must obviously be null
here so no need to check. analysers dont like this but it's not a bug.
make them happy thought

found by PVS studio
2017-07-29 10:37:51 +09:00
Carsten Haitzler 157caee2c0 evas psd loader - remove unneeded extra check in if
one if condition is always true by virtual of previous if statements
and drop-through so can remove. not actually any bug but analysers
don't like it

found by PVS studio
2017-07-29 10:37:51 +09:00
Carsten Haitzler d6785cfeb6 eina debug - if calloc for session struct failed - return NULL
makes analysers happy but really doesnt change anything - moves the
abort/crash/exit somewhere else.

found by PVS studio
2017-07-29 10:37:44 +09:00
Carsten Haitzler 53629e2fd2 edje_cc - make list free simpler to make analysers happy
analysers like PVS studio dont know the eina_list_free returning NULL
design pattern for consistency and so dislike the var being set twice
in a row. this will make them happy without any skin off our backs.
not a bug at all.

found by PVS studio
2017-07-29 09:44:54 +09:00
Carsten Haitzler c0764e153e evas git loader - move findo reset inside else as only that changes it
only the else changes finfo so reset inside there. not really any bug
at all byt style-wise a bit better and analysers don't like it

found by PVS studio
2017-07-29 09:42:44 +09:00
Carsten Haitzler 9c507faf2a elm list - remove harmless extra null set to keep analysers happy
this was totally harmless and not an actual bug but it keeps analysers
happy.

found by PVS studio
2017-07-29 09:42:43 +09:00
Carsten Haitzler e85694f33b elm dayselector - remove double set of content var
this looks like a leftover from legacy to eo porting. it was harmless
but analysis hates it

found by PVS studio
2017-07-29 09:08:40 +09:00
Carsten Haitzler 5a1f8fdf41 elm code - remove double set of textlen
analysis doesnt like it, but not a bug

found by PVS studio
2017-07-29 09:08:40 +09:00
Carsten Haitzler 1670ee2766 edje edit - remove pointless setting attr_mount to 0
static analysers dont like it bug not a bug at all

found by PVS studio
2017-07-29 09:08:40 +09:00
Carsten Haitzler 2930bc0b06 evas pmap loader - remove pointless extra assign of end of string to 0
not an actual bug - just analysis impacting

found by PVS studio
2017-07-29 09:08:40 +09:00
Carsten Haitzler aab56c4123 eldbus parser - remove duplicate tag handler thats already handled
confusing and dead code as it's already handled. not an actual bug but
analysis impacting

found by PVS studio
2017-07-29 09:08:40 +09:00
Carsten Haitzler 302731e1af evas events - remove set of list to null then back to value - confusing
eina_list_free always returns NULL. it's meant as a design pattern to
follow like the append/prepend that ensures a freed list is NULL, but
it can be confusing to analysers so remove the assing. not a bug
actually.

found by PVS studio
2017-07-29 09:08:40 +09:00
Carsten Haitzler b944fc7c9b eina evlog debugging - when freeing debug buf with mmap 0 size after
munmap would not munmap the memory with  a size of 0... so zero the
size after the munmap.

found by PVS studio

@fix
2017-07-29 09:08:40 +09:00
Carsten Haitzler e9ab26ae53 evas obj smart - remove pointless if
s is already checked for null... so no need to check again

found by PVS studio

@fix
2017-07-29 09:08:40 +09:00
Carsten Haitzler e9123a5a58 edje edit - when adding size class set max width and height to -1
since we're not using size class yet.. we hvent had to debug this...
but it is a bug.

fond by PVS studio

@fix
2017-07-29 09:08:40 +09:00
Carsten Haitzler 16abe895c6 efl net ssl constructor - remove double set of same var
all struct vars are set... one 2x. not a bug but pointless code in the
src

found by PVS studio
2017-07-29 09:08:40 +09:00
Carsten Haitzler 64dc6ab056 evas bmp loader - fix warnings about same type handled twice
so a type we handle earlir inan if we re-handle as invalid later. this
wouldnt lead to a crash or bugs as the if's would ned to be evaluated
in order normally, but it's good to get it right.

found by PVS studio
2017-07-29 09:08:40 +09:00
Carsten Haitzler 02a07caca4 etc to rgba conversion - dont read stack garbage into the est imgs
surprising this wasn't caught when testing fallbacks. etc2 is used
hyper-rarely but still... basically it'd skip pixels and read stack
junk (which really would not crash but we'd have junk in image data).
or should.

found by PVS studio

@fix
2017-07-29 09:08:40 +09:00
Carsten Haitzler 51cc2e0ec6 ephysics - fix stacking comparsion correctly if 1 smaller than 1
this fixes a pretty trivial comparison issue..

found by PVS studio

@fix
2017-07-29 09:08:40 +09:00
Carsten Haitzler fec726e7e5 evas legacy event mask - cast to unit64_t before bitshift
this fixes a bit wraparound in the shift as the 1 is an int (32bit)
type that then gets shifted .. then after that cast to 64bit.

found by PVS studio

@fix
2017-07-29 09:08:31 +09:00
Carsten Haitzler 091146fa34 eina inarray accessor - use right type in parameter
this actually wasn't a bug that would cause a crash. cloning an array
access would fail as the magic check would find its an accessor not an
array. indeed a bug... but we never used this anywhere i can find.

this was cast to the correct func ptr callabck in the accessor struct
as the clone method though.. thus everyhting was happy with it
seemingly.

found by PVS studio

@fix
2017-07-29 08:55:27 +09:00
Derek Foreman 33439865de elput: Fix synthetic relative motion events based on abs events
libinput won't actually give us this info, and logs an error instead.
We can't synthesize based on pointer position due to pointer
warping.

So we must track abs reports and use previous abs reports to
synthesize rel events.
2017-07-28 16:48:38 -05:00
Derek Foreman 2b16fc4278 ecore_evas_drm: Calculate gpu blank time offset once at startup
So vmware's graphics driver reports the MONOTONIC drm cap, yet uses
CLOCK_REALTIME instead.  This leaves us with a gigantic offset between the
gpu timestamp and the times ecore_time_get() gets from CLOCK_MONOTONIC.

Since ticking screws directly with loop time this results in some long
distance clock jumping.

This commit fixes drm/gl_drm operation under vmware.
2017-07-28 15:35:03 -05:00
Derek Foreman 0584fc81a2 ecore_drm2: Add a fallback method for vblank waiting
We can't depend on vblank waits being implemented by the driver, but we
can count on page flips functioning, so add a fallback that does a page
flip and waits for it.
2017-07-28 15:35:03 -05:00
Mike Blumenkrantz 6bb56b3f56 ecore-wl2: implement support for aux hints
this is a direct copy of a feature from tizen git with no modifications other
than what was required for compilation and functionality

https://review.tizen.org/git/?p=platform/upstream/efl.git;a=commitdiff_plain;h=01e72b7e3484ece4b589f95315990ba2c366c231
https://review.tizen.org/git/?p=platform/upstream/efl.git;a=commitdiff;h=670d84b579f248ae0e3df48e9953fe8128da9468

fix T5780

@feature
2017-07-28 15:43:48 -04:00
Mike Blumenkrantz 6dc937d26c Revert "evas: Fix use of invalid EO object"
This reverts commit 9b1e785f8e.

this breaks devices with vt switching under drm
2017-07-28 15:40:47 -04:00
Mike Blumenkrantz d529d6def6 elput: fix seat cleanup
ensure seat deletion does not conflict with elput shutdown

@fix
2017-07-28 15:40:47 -04:00
Mike Blumenkrantz ea4ae11023 elput: unref devices in post event cb
@fix
2017-07-28 15:40:47 -04:00
Mike Blumenkrantz b43a2d55e1 elm_table: do not propagate max size
evas table does not set max size, propagating this triggers unnecessary
callbacks

@fix
2017-07-28 15:40:47 -04:00
Mike Blumenkrantz 049d0c1f4c elm_box: use correct aspect ratio for HORIZONTAL layout
ratio should be flipped in this case

@fix
2017-07-28 15:40:47 -04:00
Mike Blumenkrantz 531422a2bb elm_box: use homogeneous layout if only one child exists
this should be a small speedup for a corner case of box use
2017-07-28 15:40:47 -04:00
Mike Blumenkrantz 812be4a43b elm_win: do not implement aspect_get()
this breaks aspect hints.

@fix
2017-07-28 15:40:47 -04:00
Mike Blumenkrantz 4f2b4d870a efl-wl: escape command args from test 2017-07-28 15:40:47 -04:00
Mike Blumenkrantz 84ae9d82d0 efl-wl: hide popup surface before unsetting attrs during destructor
ensure focus remains with the popup parent
2017-07-28 15:40:47 -04:00
Mike Blumenkrantz e24bc7517b efl-wl: simplify refocus on popup hide 2017-07-28 15:40:47 -04:00
Mike Blumenkrantz b32ae04306 efl-wl: use correct window when requesting x11 clipboard selection 2017-07-28 15:40:47 -04:00
Guilherme Iscaro ef03ecd89c Ecore_Con: Fix wrong comparison.
Otherwise it will always evaluate to false.
2017-07-28 15:22:51 -03:00
Guilherme Iscaro 493f75587d Ecore_Conn: Set EOS only if the connection is not closed.#algo.
This check prevents that EOS is set on a closed connection.

Fixes T5180
2017-07-28 15:22:51 -03:00
Guilherme Iscaro 0a51ac2997 Ecore_Con: Fix CLOEXEC documentation.
The socket attributes are inherited by the child.
2017-07-28 15:22:51 -03:00
Derek Foreman 8e500c6835 ecore_drm2: Allow picking a sequence number for blanktime_get
This lets us do a blocking wait for a vsync.  Something we should try to
do as infrequently as possible, but in some cases we need it one time at
startup to catch graphics driver bugs.
2017-07-28 10:41:11 -05:00
Daniel Hirt 2efa25511f Elm entry: fix call to set text via entry_set
Accidentally called the super here, so did not get routed to
'_elm_entry_text_set'.

Fixes T5803.
2017-07-28 12:36:07 +03:00
Amitesh Singh fd65e0f56a elm test: img.zoomable: allow top rect to pass events 2017-07-28 16:07:21 +09:00
Felipe Magno de Almeida 634f7d0dbb eo-cxx: Add overload for Eina_Bool inout handling interoperability
Add convert_inout_impl overload to handle bool/Eina_Bool conversion in inout direction.
2017-07-27 13:20:20 -03:00
Guilherme Iscaro 45a767632d Ecore_Conn: Enable CLOEXEC by default.
This flag should be enabled by default in order to avoid socket leaks.
2017-07-27 16:54:34 +02:00
Guilherme Iscaro 97f6803be1 Ecore_IPC: Preserve Ecore_Con legacy behaviour.
This patch sets some Ecore_Con flags that were missing after
the EO migration. These flags must be set in order
maintain the Ecore_IPC behaviour before Ecore_Con EO was implemented.

Fixes T5722
2017-07-27 16:54:16 +02:00
Amitesh Singh 0787b739cd efl.ui.image.zoomable: Add missing edje.group_size_min/max_get
This supresses the warnings when photocam is used as
an external edje object.
2017-07-27 19:06:27 +09:00
Jean-Philippe Andre 936ea58cb9 evas: Always call show/hide intercept
Ref T5370
2017-07-27 15:53:43 +09:00
Marcel Hollerbach f2b6a67115 elm_widget: change to @inout
according to q66 this is correcter than ptr(..).

Anyhow this still leads to a bug in cxx that crashes compilation in cxx
examples, people are notified!
2017-07-26 18:56:59 +02:00
Marcel Hollerbach 01af4dd13b elm_widget: fix warning 2017-07-26 15:52:54 +02:00
WooHyun Jung 9ef214ec08 ecore_events: inarray should be flushed before return
@fix
2017-07-26 18:57:37 +09:00
Jiyoun Park 6d4ebf9bc6 ecore_evas_wayland: fix bug ecore_evas cannot update the evas when rotation
usecase:
    show -> rotation -> hide -> show
    ecore_evas_wayland didn't check the rotation.
    when ee is landscapemode, it cannot update the right area of evas.
2017-07-26 15:28:02 +09:00
Andy Williams 77db870b61 elm_code: Fix missing middle button selection paste
Resolves task T5520
@fix
2017-07-25 23:54:21 +01:00
Derek Foreman 69c6cbfdf1 elput: Close fds when asked to
Our close callback tells logind we're done with a device, but it should
also actually close the fd it's passed, or we end up leaking piles of
fds on VC switch.

see weston commit 8f5acc2f3a29c3831af4ddd6bed57f703c98dc77
and subsequent regression in commit 72dea06d7952e3ce8dd8057f7106186da4fa2678
and pending fix in https://patchwork.freedesktop.org/patch/168992/
2017-07-25 16:59:11 -05:00
Sungtaek Hong a5fc50c186 edje_cc: fix wrong comment about lazEDC norequired.
Summary: - norequired; stands for required: 0

Reviewers: conr2d, jpeg

Reviewed By: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5036
2017-07-25 14:44:40 +09:00
Jean-Philippe Andre d4b2eb1e7f elm: Move calls to efl_destructor(efl_super()) to the end
When destroying any object, its parent class destructor should
be called after the subclass destructor has been called. Only
some extremely limited work may be done after the super call.

This commit makes sure that all efl_destructor() overrides in
elementary are doing operations in the right order.

Also, remove a return void.
2017-07-25 14:43:12 +09:00
Marcel Hollerbach dd883a7064 elm_widget: only emit events when there is really a changed manager
A manager change to NULL is to be used as "this object is not registered
anymore" call, which will happen quite regular during shutdown.
2017-07-24 23:40:38 +02:00
Marcel Hollerbach 6f0b79fe4b elm_widget: call the events after eval outself with new manager/parent
otherwise we might end up with a node_get error, since the widget where
the event is called on is still registered in the wrong manager
2017-07-24 23:40:38 +02:00
Marcel Hollerbach b49df7128a elm_widget: only set focus.manager if we are really registering
otherwise we might set focus.manager even if we are not registered
2017-07-24 23:40:38 +02:00
Marcel Hollerbach 47ce995637 elm_widget: give feedback if registration was successfull or not
with this we can whipe out the focus.manager field in elm.widget so for
the case that something goes wrong we only get the error message where
actually something went wrong, and not the whole bunch of follow ups
where the code assumes its registered but it isnt.
2017-07-24 23:40:38 +02:00
Derek Foreman 27f88b534a elput: Fix multiple open/close of drm devices
When I added the code to probe drm devices to ensure they're
modeset capable (ref 414d406b3b)
I didn't realize elput didn't allow us to open and close more than
one drm device at startup without blowing up libinput.

This is a somewhat dirty hack to rough that in.

The problem is that open/close the device during startup will
result in an async "gone" callback from logind, which then kicks
off an input shutdown.  We need to try harder to only do that
shutdown when it makes sense.
2017-07-24 16:06:52 -05:00
Mike Blumenkrantz aae4d21b63 ecore-wl2: handle null offer drags more effectively
this is valid and refers to an offer with no types; a leave event
with no enter is a protocol error, however

fix T5770

@fix
2017-07-24 08:30:05 -04:00
Mike Blumenkrantz 451a93d9d2 Revert "ecore wl2 - dnd - handle NULL drags... shouldnt happen but does"
This reverts commit 85e5858466.

please do not randomly add null checks for the purpose of quickly closing tickets.
2017-07-24 08:29:45 -04:00
Carsten Haitzler 85e5858466 ecore wl2 - dnd - handle NULL drags... shouldnt happen but does
this should fix T5770

@fix
2017-07-24 18:53:33 +09:00
Carsten Haitzler fd9e6b305d efl net server udp - report erro on alloc failure
unwind nicely and complain
2017-07-24 17:44:22 +09:00
Carsten Haitzler 143709faba ecore con proxy helper - complain when realloc fails
so you know why things might be failing... complain about out of
memory errors.
2017-07-24 17:35:13 +09:00
Carsten Haitzler fe6dc2000d ecore exe - pisix - handle malloc fails
handle malloc fails better
@fix
2017-07-24 16:59:53 +09:00
Carsten Haitzler 829d0bc3f9 ecore win32 exe handling - check realloc and malloc returns
handle out of memory errors better
@fix
2017-07-24 16:57:22 +09:00
Carsten Haitzler b47cbdcb65 ecore_exe - handle realloc failures by complaining and rolling back
@fix
2017-07-24 14:10:17 +09:00
Carsten Haitzler 132c047c4d embryo_cc - be sensible about realloc returns so analysers are happy
assingto tmp var then assign to real one after a check to analysers
dont complain.
2017-07-24 13:46:30 +09:00
Carsten Haitzler 8786449704 efreetd cache create - fix reallocs to bail on out of memory cleanly 2017-07-24 13:37:57 +09:00
Carsten Haitzler 8e311db414 edje_cc - make svg loader (still beta) handle out of memory nicely
print ERR and abort.
2017-07-24 13:26:28 +09:00
Carsten Haitzler 92fb46fb50 edje convert - make realloc fatal and complain about it
cleaner error handling
2017-07-24 13:09:26 +09:00
Amitesh Singh 4b4564c857 edje_cc out: fix div by 0 correctly 2017-07-24 09:50:05 +09:00
Andy Williams 292e9e9ecf elm_code: Fix crash with long lines
Also fixes issue where widget would sometimes blank when scrolling
@fix
2017-07-23 21:30:35 +01:00