Commit Graph

178 Commits

Author SHA1 Message Date
Carsten Haitzler eb8b643bf2 ecore-x - add call to create a permanent window that is not deleted on exit 2013-12-26 19:01:23 +09:00
Daniel Juyung Seo 76d8532b54 efl: Unified eina critical manro to CRI.
Being annoyed by different types of eina critical macros - CRI, CRIT,
 CRITICAL -, I concluded to unify them to one. Discussed on IRC and
 finally, CRI was chosen to meet the consistency with other macros -
 ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
2013-12-26 12:27:13 +09:00
Daniel Juyung Seo 17fe60d0db ecore gesture: removed unused variable. 2013-12-18 23:18:15 +09:00
discomfitor 0f46b8d7ec fix ecore-x shadow warning 2013-12-12 09:31:08 -05:00
Sebastian Dransfeld 50569a69c9 ecore_x: ensure positive malloc size
size_ret is used later as an argument for malloc, so it should be
positive. In addition this should ensure that
ecore_x_window_porp_property_get returns a positive value and is true if
we malloc data.

Hopefully also fixes CID 1135636
2013-12-10 09:10:54 +01:00
Sebastian Dransfeld 4a24b84185 ecore_x: remove double free
We first free'd the data in the else, then at the end.

Now we free old_data just before return, and at the end.

Fixes CID 1135637
2013-12-10 08:30:23 +01:00
Carsten Haitzler 82841fefe3 fix seb "fix" commit that causes lots of segvs.
this fixes 04e0a6d95e which introduced
copy & paste segv's by properly terminating the right buffer.
2013-12-09 18:39:07 +09:00
Daniel Zaoui 1ae7a4f5e2 Ecore: add DnD abort from source
This can be used to cancel a DnD drag operation in the middle.
2013-12-09 09:11:27 +02:00
Sebastian Dransfeld 8b72bd6e6d ecore_x: Fix bug in ecore_x_region_invert
As bounds is a pointer, bounds + num will always be postive, so this is
an eternal loop. In addition, XFixesInvertRegion only accepts one
region, so num must be 1.

Fixes CID 1039469
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld c8b8738612 ecore_x: Remove NULL check
to get here, old_data != NULL.

Fixes CID 1039648 and 1039649
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld 1905fd4858 ecore_x: Use free, not XFree
Data returned from ecore_x_window_prop_property_get are malloced, so use
free, not XFree. Which also is consistent, as free was used on other
occasions.
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld f4c71fba21 ecore_x: supported isn't an optional argument
if supported is NULL, this function isn't of any use.

Fixes CID 1039430
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld 31d0a2d71c ecore_x: Only use att if call succeeds.
XGetWindowAttributes isn't guaranteed to succeed.

Fixes CID 1039692
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld 6b1438af05 ecore_x: Only do memset if len < 20
If len is 20, n is 0, and nothing to memset.

Fixes CID 1039311
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld aca33ef3d9 ecore_x: always free data and return value
if we are the selected parser, we are responsible for free'ing data and
returning a selection value.
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld f22f861f61 ecore_x: Check if we have data
data could be NULL and size == 0, so check for this.

Fixes CID 1039264
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 04e0a6d95e ecore_x: '\0' terminate converted text
This makes ecore_x text converter behave like elm text converter.

Fixes CID 1039310
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 50feb1f8da ecore_x: Use eina_inlist
ecore_x_selection implemented it's own single linked list. Use
eina_inlist instead.
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld d09ceaf4c1 ecore_x: Only send XdndEnter when we have types
If ecore_x_window_prop_property_get fails, we have no types to drop so
don't send XdndEnter.

Fixes CID 1039693
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 31fde249d4 ecore_x: Also check for !prop here
We check if prop is NULL after first property check, do it here too.

Fixes CID 1039429
2013-12-07 21:11:33 +01:00
Daniel Juyung Seo e2467724da ecore ecore_x_e: check 0 and -1 for ecore_x_window_prop_card32_get() return value which mean fail.
- ecore_x_window_prop_card32_get() returns:
  -1 if the property was not successfully fetched.
  0 if the property exists but has no elements.
2013-12-02 12:46:18 +09:00
Daniel Juyung Seo a5c98947ae ecore ecore_x_e: initialize local variable to avoid having wrong value.
Thanks to devilhorns!
2013-11-27 21:43:06 +09:00
Sebastian Dransfeld 3dc5eb16cc ecore_x: accept -1 as valid mm size for no change
If we pass in w_mm = h_mm = -1 we want no change if w == cw and h == ch,
as we calculate w_mm and h_mm based on these later.
2013-11-07 09:18:16 +01:00
Sebastian Dransfeld 144d124445 ecore_x: store atoms internally
No need to request them every time.
2013-11-07 09:18:16 +01:00
Sebastian Dransfeld a7382dacfa ecore_x: get correct property
Since the function is ecore_x_randr_output_connector_type_get, I guess
we want RR_PROPERTY_CONNECTOR_TYPE, not RR_PROPERTY_CONNECTOR_NUMBER.
2013-11-07 09:18:16 +01:00
Chris Michael 3cc4efaf50 Fix doxy typo/grammar
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-26 12:16:10 +01:00
discomfitor 42fb964592 ecore-x xlib errors now only print when sync is enabled
I give up. people continually complain about these and submit them as crashes, so now they're only visible if you set ECORE_X_SYNC. the next step is an #ifdef ISCOMFITOR.
2013-08-25 17:15:19 +01:00
Mike Blumenkrantz 5e8e8aec7d print error when ecore-x shm check fails 2013-08-07 08:36:46 +01:00
Chris Michael aa75297381 Add #ifdef ECORE_XRANDR around the edid functions.
NB: Cannot really happen for 1.8 (as --disable-ecore-x-randr has no
effect), but really these should have been ifdef'd from the start.

NB: IMO, Don't think a ChangeLog is really needed for this....

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-01 15:18:01 +01:00
Chris Michael 55094c9eb0 Set Crtc info->outputs and info->possible to NULL initially.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-26 07:06:58 +01:00
Chris Michael 3e9edcd539 Fix typo
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-25 13:32:06 +01:00
Chris Michael 551610fa41 Guard against allocating 0 outputs and 0 possible outputs.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-25 13:09:34 +01:00
Chris Michael 8aef3fa98a Guard against trying to allocate 0 outputs.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-25 13:08:18 +01:00
Chris Michael f287fd33a7 Trap for number of crtcs < 1 so we do not try to allocate space for
zero crtcs.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-25 12:32:49 +01:00
Carsten Haitzler e945f0d196 ecore-x: fix randr query when noutputs is 0. 2013-07-24 19:22:31 +09:00
Mike Blumenkrantz ea7bc3f670 revert e7862929e4
the ECORE_X_SYNC environment variable exists to make ecore-x debugging synchronous.
printing X errors as they occur is useful for application developers; errors should not
be silenced just because they are inconvenient or plentiful.
2013-07-19 09:02:33 +01:00
Carsten Haitzler e7862929e4 ecore-x: make error prints DBG not ERR so we don't get spammed
because an error with no idea where it came from since its async is
pretty much usless noise. if you want this to be useful you literally
need to do an xsync every x call and be able to get backtraces... the
xsync then would be inside ecore-x. and of course this would be so
nastily slow that you need to make it an option at build...
2013-07-19 09:23:11 +09:00
Mike Blumenkrantz 464dd4f206 disable ecore-x trace debugging...whoops 2013-07-18 06:24:50 +01:00
Mike Blumenkrantz 60111ce8ca add ECORE_X_SYNC env variable for xlib backend 2013-07-18 06:17:40 +01:00
Mike Blumenkrantz d77d9134f8 delete e pixmap atom based on atom pixmap atom, not pixmap 2013-07-18 05:21:07 +01:00
Mike Blumenkrantz ad7933670f ecore_x_pixmap_free no longer fails when passed 0 2013-07-18 05:21:07 +01:00
Mike Blumenkrantz 3e45bbecf6 print ecore-x xlib errors when they occur 2013-07-17 08:43:38 +01:00
Carsten Haitzler c6309b44b2 fix clang sizeof complaint 2013-07-16 19:58:01 +09:00
Carsten Haitzler d07a30fa25 fix clang sizeof complaint 2013-07-16 19:57:13 +09:00
Carsten Haitzler 604fac4166 ecore-x: vsync_animator_tick_source_set fail if drmWaitVBlank fails 2013-07-16 19:39:10 +09:00
Mike Blumenkrantz c3916df200 clamp size to ximage size for ecore_x_image_get to prevent BadMatch errors 2013-07-15 09:37:54 +01:00
Mike Blumenkrantz b67be2ee25 add error messages to ximage function failures 2013-07-15 05:19:23 +01:00
Chris Michael 207ad636fe Avoid potential divide by zero error.
NB: Fixes Coverity CID1039437and CID1039438

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 14:55:14 +01:00
Chris Michael 7bf6ba1f67 Add missing free(data) reported by jeyzu. Thanks ;)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 14:22:20 +01:00
Chris Michael f880ef9045 Remove erroneous copy/paste of data free
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 14:04:29 +01:00
Chris Michael 45a2296218 Fix memleak reported by Coverity and replace an XFree call
NB: Fixes Coverity CID1039276

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:41:00 +01:00
Chris Michael 0701304205 Fix memleak reported by Coverity and replace some XFree calls with
just free.

NB: Fixes Coverity CID1039275

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:39:48 +01:00
Chris Michael d7600cfbee Fix memleak of window_prop_property_get
NB: Fixes Coverity CID1039274

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:34:28 +01:00
Chris Michael a01ce5e409 Fix memleak of window_prop_property_get
NB: Fixes Coverity CID1039273

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:30:34 +01:00
Chris Michael e33391ef56 Replace XFree with just free.
NB: XFree calls 'free' anyway, so this saves us a function call

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:28:15 +01:00
Chris Michael d7193f2830 Fix memleak reported by Coverity
NB: Fixes Coverity CID1039272

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:27:40 +01:00
Chris Michael 0d12ab48be Fix memleak spotted by Coverity: ecore_x_window_prop_property_get can
allocate space for 'data'. If we return before using it, then free
'data'. If we use it later for XGetAtomName, then we can free if After
we have gotten the atom names and sent the event. (NB: XGetAtomName
will allocate it's own space for the returned name, so this is safe).

NB: Fixes Coverity CID1039271

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:24:21 +01:00
Chris Michael 5969c97f7a Fix memleaks reported by Coverity: ecore_x_window_prop_property_get
allocates space for 'data'. We need to free that if we are going to
return before using it.

NB: Fixes Coverity CID1039270

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:17:58 +01:00
Chris Michael aea9e86eb4 Fix several memleaks reported by Coverity
NB: Fixes Coverity CID1039268

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 12:12:48 +01:00
Chris Michael 4ea1ea5bf4 Fix memleak spotted by Coverity
NB: Fixes Coverity CID1039267

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 11:58:15 +01:00
Chris Michael 02f545ecc6 Fix memleak. If we error out here, then we should free the data
returned from window_prop_property_get (as that does an allocation).

NB: Fixes Coverity CID1039266

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 11:47:13 +01:00
Chris Michael e6088e2361 Fix memleak reported by Coverity: If we are going to error out when
getting window netwm types, then free any atoms returned by
prop_atom_list_get.

NB: Fixes Coverity CID1039265

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 11:44:23 +01:00
Chris Michael 2a1b993162 Fix "Allocation size mismatch" reported by Coverity (short version: we
declared our 'roots' variable as Ecore_X_Window, but were allocating
as 'Window').

buffer_alloc: "malloc(num * 8UL)" allocates memory.
CID 1039601: Allocation size mismatch (SIZECHECK)
5. incorrect_multiplication: Allocating a multiple of 8 bytes to
pointer of type Ecore_X_Window, which needs 4 bytes.

NB: Fixes Coverity CID1039601

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-08 09:00:45 +01:00
Chris Michael d263e31c7f When getting crtc info, fill in missing "rotations" field so that the
value is initialized.

NB: Spank Spank whoever did this ... oh wait, that was me :( Ouch !!

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-06-27 10:46:34 +01:00
Deon Thomas 67df5b4ad1 Ecore DPMS Function to get the current dpms power level 2013-06-26 08:32:42 +09:00
Mike Blumenkrantz fbd09e2562 add support for text/x-moz-url DND operations 2013-05-29 13:46:11 +01:00
Chris Michael 1d58f5ff1d Don't allocate space for a mode name unless the nameLength is greater
than 0.

Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-05-24 18:25:53 +01:00
Mike Blumenkrantz ab079ae1a5 move ecore-x fd handler creation to after ecore-x init has finished so we can ignore more x events during startup 2013-05-22 10:15:37 +01:00
Chris Michael afff55eec5 Fix memleak in ecore_x_randr_crtc_settings_set.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-05-21 14:32:25 +01:00
Chris Michael bc31a55bda Add ecore_x_randr_config_timestamp_get to return config timestamp that
XRandr has currently.

NB: needed for some updates/fixes to randr dialog.

Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-05-11 16:30:38 +01:00
Carsten Haitzler 11e0d67a71 Revert "Ecore DPMS function to get the current power level"
This reverts commit 19c4916f41.

sorry... missing xcb version of func. please re-commit when you have
an xcb version. thanks! :)
2013-05-08 15:59:11 +09:00
Carsten Haitzler eb4339bb0c get rid of trailing nul byte in selections for x11
not noticed until recently.. we add a nul byte to the end of our text
selections that we shouldnt. most toolkits/apps skip it but some..
like emacs... dont.
2013-05-08 13:05:33 +09:00
Deon 'PrinceAMD' Thomas 19c4916f41 Ecore DPMS function to get the current power level 2013-05-07 11:47:28 +01:00
Carsten Haitzler 6d54f4608d fix 64bit ecore-x selection overrun bug. 2013-04-23 00:08:18 +09:00
Tom Hacohen 8698e455f8 Ecore_x: init ret, otherwise it might be used uninitialized. 2013-04-18 13:46:28 +01:00
Jiyoun Park 2d0d852fa9 expand indicator type to support if it want more than two indicator type 2013-04-18 14:45:11 +09:00
Carsten Haitzler 5339ab4501 small change: valgrind shus about uninitiallized data from stack...
it's unused anyway.
2013-04-18 12:49:24 +09:00
Deon 'PrinceAMD' Thomas 7df54da4c4 Ecore Pointer get root x,y position without ecore_x_window. 2013-04-18 12:07:26 +09:00
Igor Murzov 1373f0ba4a Fix incorrect printf format usage 2013-04-16 12:07:36 +04:00
Carsten Haitzler 140c1afefb valgrind complain-- 2013-04-02 12:28:06 +09:00
ChunEon Park 4198433cc0 ecore_x - use the exsiting variable. 2013-03-25 22:45:06 +09:00
Jiyoun Park d70feacf9b Ecore_x: Add atom related with indicator type.
It can support several types of indicator
2013-03-05 14:25:50 +09:00
Jiyoun Park 004d519f06 ecore_x : fix dangling pointer problem related with shmget fail 2013-03-05 14:01:32 +09:00
Henrique Dante de Almeida ca8fc827a3 efl: Fixes to support compiling with CFLAGS=-Werror
This allows compiling with gcc 4.7.2 without errors (using the
default configuration).
2013-02-26 10:55:04 -03:00
Carsten Haitzler 5a9a4fdd1f oops - still had printfs. remove. 2013-02-26 22:06:12 +09:00
Carsten Haitzler 83190eb0c2 Add ecore_x_dnd_self_begin() and ecore_x_dnd_self_drop() to allow dnd
to your own window (drop where u drag from). helpful for elm where dnd
src/dst are object based, so we talk dnd protocol to ourselves.
2013-02-21 16:49:10 +09:00
Carsten Haitzler c5ade50c9f Fix ecore-x edid fetch to ftech 128, not 100 bytes. 2013-02-20 17:16:54 +09:00
Tom Hacohen a2d710b0b6 Ecore_x: Revert "don't filter out non-master pointers in xi2.2 support."
This actually breaks genlist selection.

This reverts commit 5adb2f1ae6.
2013-02-19 15:09:32 +00:00
Carsten Haitzler 5adb2f1ae6 don't filter out non-master pointers in xi2.2 support. 2013-02-18 16:37:20 +09:00
Carsten Haitzler 73e9b8ea3d oops - add back in snprintf.
SVN revision: 83768
2013-02-08 09:00:29 +00:00
Carsten Haitzler c736dd323d fix ecore_x_screen_is_composited...
SVN revision: 83767
2013-02-08 08:56:00 +00:00
Carsten Haitzler afd8a714f4 devilhorns: ummmm lets not segv and run allover the stack shall we? memset the
size of memory we ALLOCATED!



SVN revision: 83757
2013-02-08 03:35:11 +00:00
Christopher Michael 37749b3d3e Add ecore_x_randr_crtc_info_free function.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83739
2013-02-07 12:43:55 +00:00
Christopher Michael 2fe1fa053f Fix crtc_info_get function (memcpy fails here in some cases, so
manually allocate and copy things over).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83737
2013-02-07 12:43:46 +00:00
Christopher Michael 20d1df8a23 Add ecore_x_randr_crtc_info_get function.
NB: This will save us Many X round-trips in the new randr dialog.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83728
2013-02-07 09:32:24 +00:00
Christopher Michael 562b278b52 Be a lot more pedantic and add some more safety checks about xrandr
return values (ie: if xrandr returns 0 crtcs, then we don't need to
allocate anything, etc, etc, etc).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83624
2013-02-05 11:55:51 +00:00
Christopher Michael 0c76117e1e Be a bit more pedantic when getting outputs for a crtc, in that if
xrandr returns 0 outputs, then free resources and return null quickly.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83623
2013-02-05 10:51:57 +00:00
Christopher Michael f317906408 Set number of returned modes early in the process.
Let's be a bit pedantic here, if the number of returned modes is Zero,
then just free resources and get out.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83617
2013-02-05 08:53:18 +00:00
Christopher Michael cdb82dc2df Tell X to create the edid atom if it is missing so we can return valid
edid information.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83556
2013-02-01 12:06:55 +00:00
Christopher Michael e6be42978b Length is optional here when getting edid from output.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83554
2013-02-01 11:50:59 +00:00