Go to file
Christopher Michael aa88c5697d Ecore_X (RandR): Fix long outstanding randr bug which caused
ecore_x_randr to not work for pretty much everyone. Short version,
don't memcpy something potentially Larger into something Certainly
smaller. (read on for the details).

NB: This 'should' fix all the randr problems in ecore_x (tho I have
not tested Everything).

NB: Ok, here goes:
    XRRGetScreenResources returns a struct. Inside that struct is a
    list of RROutputs.

    RROutput is defined as (from randrproto.h):
      #define RROutput CARD32

    CARD32 is defined as (from X11/Xmd.h): 
      # ifdef LONG64
        typedef unsigned long CARD64;
        typedef unsigned int CARD32;
      # else
        typedef unsigned long CARD32;
      # endif
    so CARD32 can change based on the system (32/64 bit).

    Ecore_X_Randr_Output is defined as (Ecore_X.h):
       typedef Ecore_X_ID Ecore_X_Randr_Output;
       (for reference: typedef unsigned int Ecore_X_ID)

    Double bonus points if you have already spotted the problem !! ;)



SVN revision: 76306
2012-09-07 13:12:30 +00:00
legacy Ecore_X (RandR): Fix long outstanding randr bug which caused 2012-09-07 13:12:30 +00:00