Ecore: Fix warning and seg fault
authorcaro <caro@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 11 Nov 2011 19:12:36 +0000 (19:12 +0000)
committercaro <caro@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 11 Nov 2011 19:12:36 +0000 (19:12 +0000)
Fix warning: large integer implicitly truncated to unsigned type.
In ecore_x_window_prop_card32_list_get(): return -1 if malloc fails.

Patch from OpenBSD via Jonathan Armani

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@65075 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/ecore_x/xcb/ecore_xcb_window_prop.c

index 4a2618e..a9c280d 100644 (file)
@@ -109,11 +109,11 @@ ecore_x_window_prop_card32_list_get(Ecore_X_Window win,
              if (!val)
                {
                   free(reply);
-                  return num;
+                  return -1;
                }
              data = xcb_get_property_value(reply);
              for (i = 0; i < num; i++)
-               val[i] = ((unsigned long *)data)[i];
+               val[i] = ((unsigned int *)data)[i];
              *list = val;
           }
      }