lets not segv shall we?
authorCarsten Haitzler <raster@rasterman.com>
Sun, 19 Feb 2012 07:36:01 +0000 (07:36 +0000)
committerCarsten Haitzler <raster@rasterman.com>
Sun, 19 Feb 2012 07:36:01 +0000 (07:36 +0000)
SVN revision: 68119

src/bin/e_randr_12.c
src/bin/e_randr_12_crtc.c
src/bin/e_randr_private.h

index f6a50c3..e17acd5 100644 (file)
@@ -23,8 +23,8 @@ static Eina_Bool _try_enable_output(E_Randr_Output_Info *output_info, Eina_Bool
 
 static Ecore_Poller *poller = NULL;
 static Eina_List *_event_handlers = NULL;
-const static char *_CONNECTION_STATES_STRINGS[] = {"CONNECTED", "DISCONNECTED", "UNKNOWN"};
-const static char *_POLICIES_STRINGS[] = {"ABOVE", "RIGHT", "BELOW", "LEFT", "CLONE", "NONE"};
+static const char *_CONNECTION_STATES_STRINGS[] = {"CONNECTED", "DISCONNECTED", "UNKNOWN"};
+static const char *_POLICIES_STRINGS[] = {"ABOVE", "RIGHT", "BELOW", "LEFT", "CLONE", "NONE"};
 
 //"New" helper functions
 /**
@@ -88,7 +88,8 @@ _structs_init(void)
    while (--noutputs >= 0)
      {
         output_info = _output_info_new(outputs[noutputs]);
-        e_randr_screen_info.rrvd_info.randr_info_12->outputs = eina_list_append(e_randr_screen_info.rrvd_info.randr_info_12->outputs, output_info);
+        if (output_info)
+          e_randr_screen_info.rrvd_info.randr_info_12->outputs = eina_list_append(e_randr_screen_info.rrvd_info.randr_info_12->outputs, output_info);
      }
    free(outputs);
 
index 17cec05..8360271 100644 (file)
@@ -193,7 +193,7 @@ _crtc_outputs_mode_max_set(E_Randr_Crtc_Info *crtc_info)
  * which means that e.g. when a crtc should be placed at a position < 0, all
  * other crtcs are accordingly moved instead, so the result is the same.
  */
-   const Eina_Bool
+Eina_Bool
 _crtc_move_policy(E_Randr_Crtc_Info *new_crtc)
 {
    const E_Randr_Crtc_Info *crtc_rel;
index 3c63d22..60cb299 100644 (file)
@@ -61,7 +61,7 @@ E_Randr_Crtc_Info *      _crtc_info_new(Ecore_X_Randr_Crtc crtc);
 void                     _crtc_info_free(E_Randr_Crtc_Info *crtc_info);
 void                     _crtc_refs_set(E_Randr_Crtc_Info *crtc_info);
 void                     _crtc_outputs_refs_set(E_Randr_Crtc_Info *crtc_info);
-const Eina_Bool          _crtc_move_policy(E_Randr_Crtc_Info *new_crtc);
+Eina_Bool                _crtc_move_policy(E_Randr_Crtc_Info *new_crtc);
 const E_Randr_Crtc_Info *_crtc_according_to_policy_get(E_Randr_Crtc_Info *but, Ecore_X_Randr_Output_Policy policy);
 
 #endif