Don't see how any of that is possible. The newly added functions do not 
use any arrays, so 'array subscript is not an integer' isn't even valid. 
But I will try a rebuild w/ xlib version just to be sure.

1919: return DefaultVisual(disp, screen);

dh

On 07/26/11 09:03, Rafael Antognolli wrote:
> Hmm... I think this just broke my ecore_x. Having problems now like:
> *
>    CC     ecore_x_damage.lo
> /home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c: In
> function 'ecore_x_default_visual_get':
> /home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c:1919:
> error: array subscript is not an integer
> /home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c: In
> function 'ecore_x_default_colormap_get':
> /home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c:1934:
> error: array subscript is not an integer
> /home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c: In
> function 'ecore_x_default_depth_get':
> /home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c:1949:
> error: array subscript is not an integer
>
>
> On Tue, Jul 26, 2011 at 8:19 AM, Enlightenment SVN
> <no-re...@enlightenment.org>  wrote:
>> Log:
>> Ecore_X: Add some new api functions for getting default
>>   Depth/Visual/Colormap of a given screen.
>>
>>   NB: Added these so that we can remove xlib specific calls in
>>   ecore_evas and just generic ecore_x calls (so we are engine
>>   independant).
>>
>>
>>
>> Author:       devilhorns
>> Date:         2011-07-26 04:19:55 -0700 (Tue, 26 Jul 2011)
>> New Revision: 61742
>> Trac:         http://trac.enlightenment.org/e/changeset/61742
>>
>> Modified:
>>   trunk/ecore/src/lib/ecore_x/Ecore_X.h 
>> trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb.c 
>> trunk/ecore/src/lib/ecore_x/xlib/ecore_x.c
>>
>> Modified: trunk/ecore/src/lib/ecore_x/Ecore_X.h
>> ===================================================================
>> --- trunk/ecore/src/lib/ecore_x/Ecore_X.h       2011-07-26 11:18:48 UTC (rev 
>> 61741)
>> +++ trunk/ecore/src/lib/ecore_x/Ecore_X.h       2011-07-26 11:19:55 UTC (rev 
>> 61742)
>> @@ -1089,6 +1089,9 @@
>>   EAPI Ecore_X_Screen *        ecore_x_default_screen_get(void);
>>   EAPI void                    ecore_x_screen_size_get(const Ecore_X_Screen 
>> *screen, int *w, int *h);
>>   EAPI int                     ecore_x_screen_count_get(void);
>> +EAPI int                     ecore_x_screen_index_get(const Ecore_X_Screen 
>> *screen);
>> +EAPI Ecore_X_Screen *        ecore_x_screen_get(int index);
>> +
>>   EAPI void                    ecore_x_double_click_time_set(double t);
>>   EAPI double                  ecore_x_double_click_time_get(void);
>>   EAPI void                    ecore_x_flush(void);
>> @@ -1099,6 +1102,10 @@
>>   EAPI Eina_Bool               ecore_x_bell(int percent);
>>   EAPI unsigned int            ecore_x_visual_id_get(Ecore_X_Visual visual);
>>
>> +EAPI Ecore_X_Visual          ecore_x_default_visual_get(Ecore_X_Display 
>> *disp, Ecore_X_Screen *screen);
>> +EAPI Ecore_X_Colormap        ecore_x_default_colormap_get(Ecore_X_Display 
>> *disp, Ecore_X_Screen *screen);
>> +EAPI int                     ecore_x_default_depth_get(Ecore_X_Display 
>> *disp, Ecore_X_Screen *screen);
>> +
>>   EAPI Ecore_X_Time            ecore_x_current_time_get(void);
>>
>>   EAPI void                    ecore_x_error_handler_set(void (*func)(void 
>> *data), const void *data);
>>
>> Modified: trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb.c
>> ===================================================================
>> --- trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb.c 2011-07-26 11:18:48 UTC (rev 
>> 61741)
>> +++ trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb.c 2011-07-26 11:19:55 UTC (rev 
>> 61742)
>> @@ -1058,9 +1058,9 @@
>>   }
>>
>>   /**
>> - * Retrieves the number of screens.
>> + * Retrieves the count of screens.
>>   *
>> - * @return  The count of the number of screens.
>> + * @return  The count of screens.
>>   * @ingroup Ecore_X_Display_Attr_Group
>>   *
>>   * @since 1.1
>> @@ -1073,6 +1073,54 @@
>>     return xcb_setup_roots_length(xcb_get_setup(_ecore_xcb_conn));
>>   }
>>
>> +/**
>> + * Retrieves the index number of the given screen.
>> + *
>> + * @return  The index number of the screen.
>> + * @ingroup Ecore_X_Display_Attr_Group
>> + *
>> + * @since 1.1
>> + */
>> +EAPI int
>> +ecore_x_screen_index_get(const Ecore_X_Screen *screen)
>> +{
>> +   xcb_screen_iterator_t iter;
>> +
>> +   iter =
>> +     xcb_setup_roots_iterator(xcb_get_setup((xcb_connection_t 
>> *)_ecore_xcb_conn));
>> +   for (; iter.rem; xcb_screen_next(&iter))
>> +     {
>> +        if (iter.data == (xcb_screen_t *)screen)
>> +          return iter.index;
>> +     }
>> +
>> +   return 0;
>> +}
>> +
>> +/**
>> + * Retrieves the screen based on index number.
>> + *
>> + * @return  The Ecore_X_Screen at this index.
>> + * @ingroup Ecore_X_Display_Attr_Group
>> + *
>> + * @since 1.1
>> + */
>> +EAPI Ecore_X_Screen *
>> +ecore_x_screen_get(int index)
>> +{
>> +   xcb_screen_iterator_t iter;
>> +
>> +   iter =
>> +     xcb_setup_roots_iterator(xcb_get_setup((xcb_connection_t 
>> *)_ecore_xcb_conn));
>> +   for (; iter.rem; xcb_screen_next(&iter))
>> +     {
>> +        if (iter.index == index)
>> +          return iter.data;
>> +     }
>> +
>> +   return NULL;
>> +}
>> +
>>   EAPI unsigned int
>>   ecore_x_visual_id_get(Ecore_X_Visual visual)
>>   {
>> @@ -1080,6 +1128,72 @@
>>   }
>>
>>   /**
>> + * Retrieve the default Visual.
>> + *
>> + * @param disp  The Display to get the Default Visual from
>> + * @param screen The Screen.
>> + *
>> + * @return The default visual.
>> + * @since 1.1.0
>> + */
>> +EAPI Ecore_X_Visual
>> +ecore_x_default_visual_get(Ecore_X_Display *disp __UNUSED__, Ecore_X_Screen 
>> *screen)
>> +{
>> +   xcb_screen_t *s;
>> +   xcb_depth_iterator_t diter;
>> +   xcb_visualtype_iterator_t viter;
>> +
>> +   s = (xcb_screen_t *)screen;
>> +   diter = xcb_screen_allowed_depths_iterator(s);
>> +   for (; diter.rem; xcb_depth_next(&diter))
>> +     {
>> +        viter = xcb_depth_visuals_iterator(diter.data);
>> +        for (; viter.rem; xcb_visualtype_next(&viter))
>> +          {
>> +             if (viter.data->visual_id == s->root_visual)
>> +               return viter.data;
>> +          }
>> +     }
>> +   return 0;
>> +}
>> +
>> +/**
>> + * Retrieve the default Colormap.
>> + *
>> + * @param disp  The Display to get the Default Colormap from
>> + * @param screen The Screen.
>> + *
>> + * @return The default colormap.
>> + * @since 1.1.0
>> + */
>> +EAPI Ecore_X_Colormap
>> +ecore_x_default_colormap_get(Ecore_X_Display *disp __UNUSED__, 
>> Ecore_X_Screen *screen)
>> +{
>> +   xcb_screen_t *s;
>> +
>> +   s = (xcb_screen_t *)screen;
>> +   return s->default_colormap;
>> +}
>> +
>> +/**
>> + * Retrieve the default depth.
>> + *
>> + * @param disp  The Display to get the Default Depth from
>> + * @param screen The Screen.
>> + *
>> + * @return The default depth.
>> + * @since 1.1.0
>> + */
>> +EAPI int
>> +ecore_x_default_depth_get(Ecore_X_Display *disp __UNUSED__, Ecore_X_Screen 
>> *screen)
>> +{
>> +   xcb_screen_t *s;
>> +
>> +   s = (xcb_screen_t *)screen;
>> +   return s->root_depth;
>> +}
>> +
>> +/**
>>   * Sets the timeout for a double and triple clicks to be flagged.
>>   *
>>   * This sets the time between clicks before the double_click flag is
>>
>> Modified: trunk/ecore/src/lib/ecore_x/xlib/ecore_x.c
>> ===================================================================
>> --- trunk/ecore/src/lib/ecore_x/xlib/ecore_x.c  2011-07-26 11:18:48 UTC (rev 
>> 61741)
>> +++ trunk/ecore/src/lib/ecore_x/xlib/ecore_x.c  2011-07-26 11:19:55 UTC (rev 
>> 61742)
>> @@ -728,6 +728,34 @@
>>   }
>>
>>   /**
>> + * Retrieves the index number of the given screen.
>> + *
>> + * @return  The index number of the screen.
>> + * @ingroup Ecore_X_Display_Attr_Group
>> + *
>> + * @since 1.1
>> + */
>> +EAPI int
>> +ecore_x_screen_index_get(const Ecore_X_Screen *screen)
>> +{
>> +   return XScreenNumberOfScreen((Screen *)screen);
>> +}
>> +
>> +/**
>> + * Retrieves the screen based on index number.
>> + *
>> + * @return  The Ecore_X_Screen at this index.
>> + * @ingroup Ecore_X_Display_Attr_Group
>> + *
>> + * @since 1.1
>> + */
>> +EAPI Ecore_X_Screen *
>> +ecore_x_screen_get(int index)
>> +{
>> +   return XScreenOfDisplay(_ecore_x_disp, index);
>> +}
>> +
>> +/**
>>   * Sets the timeout for a double and triple clicks to be flagged.
>>   *
>>   * This sets the time between clicks before the double_click flag is
>> @@ -1876,6 +1904,51 @@
>>     return XVisualIDFromVisual(visual);
>>   }
>>
>> +/**
>> + * Retrieve the default Visual.
>> + *
>> + * @param disp  The Display to get the Default Visual from
>> + * @param screen The Screen.
>> + *
>> + * @return The default visual.
>> + * @since 1.1.0
>> + */
>> +EAPI Ecore_X_Visual
>> +ecore_x_default_visual_get(Ecore_X_Display *disp, Ecore_X_Screen *screen)
>> +{
>> +   return DefaultVisual(disp, screen);
>> +}
>> +
>> +/**
>> + * Retrieve the default Colormap.
>> + *
>> + * @param disp  The Display to get the Default Colormap from
>> + * @param screen The Screen.
>> + *
>> + * @return The default colormap.
>> + * @since 1.1.0
>> + */
>> +EAPI Ecore_X_Colormap
>> +ecore_x_default_colormap_get(Ecore_X_Display *disp, Ecore_X_Screen *screen)
>> +{
>> +   return DefaultColormap(disp, screen);
>> +}
>> +
>> +/**
>> + * Retrieve the default depth.
>> + *
>> + * @param disp  The Display to get the Default Depth from
>> + * @param screen The Screen.
>> + *
>> + * @return The default depth.
>> + * @since 1.1.0
>> + */
>> +EAPI int
>> +ecore_x_default_depth_get(Ecore_X_Display *disp, Ecore_X_Screen *screen)
>> +{
>> +   return DefaultDepth(disp, screen);
>> +}
>> +
>>   
>> /*****************************************************************************/
>>   
>> /*****************************************************************************/
>>   
>> /*****************************************************************************/

>


------------------------------------------------------------------------------
Magic Quadrant for Content-Aware Data Loss Prevention
Research study explores the data loss prevention market. Includes in-depth
analysis on the changes within the DLP market, and the criteria used to
evaluate the strengths and weaknesses of these DLP solutions.
http://www.accelacomm.com/jaw/sfnl/114/51385063/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to