Enlightenment CVS committal Author : raster Project : e17 Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore_x Modified Files: ecore_x_icccm.c Log Message: safety checks =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_icccm.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- ecore_x_icccm.c 16 May 2005 12:59:26 -0000 1.26 +++ ecore_x_icccm.c 25 May 2005 05:40:03 -0000 1.27 @@ -86,7 +86,7 @@ Ecore_X_Window_State_Hint ecore_x_icccm_state_get(Ecore_X_Window win) { - unsigned char *prop_ret; + unsigned char *prop_ret = NULL; Atom type_ret; unsigned long bytes_after, num_ret; int format_ret; @@ -446,6 +446,7 @@ XTextProperty xprop; int ret; + xprop.value = NULL; #ifdef X_HAVE_UTF8_STRING list[0] = strdup(t); ret = @@ -460,14 +461,14 @@ if (ret >= Success) { XSetWMName(_ecore_x_disp, win, &xprop); - XFree(xprop.value); + if (xprop.value) XFree(xprop.value); } else { if (XStringListToTextProperty(list, 1, &xprop) >= Success) { XSetWMName(_ecore_x_disp, win, &xprop); - XFree(xprop.value); + if (xprop.value) XFree(xprop.value); } } free(list[0]); @@ -478,6 +479,7 @@ { XTextProperty xprop; + xprop.value = NULL; if (XGetWMName(_ecore_x_disp, win, &xprop) >= Success) { if (xprop.value) @@ -518,8 +520,8 @@ XFreeStringList(list); } } - - XFree(xprop.value); + + if (xprop.value) XFree(xprop.value); return t; } } @@ -603,7 +605,7 @@ leave: if (protos) - XFree(protos); + XFree(protos); } @@ -635,7 +637,7 @@ break; } - XFree(protos); + if (protos) XFree(protos); return ret; } @@ -677,6 +679,8 @@ if (n) *n = NULL; if (c) *c = NULL; + xch.res_name = NULL; + xch.res_class = NULL; if (XGetClassHint(_ecore_x_disp, win, &xch)) { if (n) @@ -804,7 +808,8 @@ { if (oldset[i] == subwin) { - XFree(old_data); + if (old_data) XFree(old_data); + old_data = NULL; free(newset); return; } @@ -813,7 +818,7 @@ } newset[num++] = subwin; - XFree(old_data); + if (old_data) XFree(old_data); data = (unsigned char *)newset; } @@ -851,7 +856,8 @@ { XDeleteProperty(_ecore_x_disp, win, ECORE_X_ATOM_WM_COLORMAP_WINDOWS); - XFree(old_data); + if (old_data) XFree(old_data); + old_data = NULL; return; } else @@ -864,14 +870,15 @@ ecore_x_window_prop_property_set(win, ECORE_X_ATOM_WM_COLORMAP_WINDOWS, XA_WINDOW, 32, data, k); - XFree(old_data); + if (old_data) XFree(old_data); + old_data = NULL; free(newset); return; } } } - XFree(old_data); + if (old_data) XFree(old_data); } /** ------------------------------------------------------- This SF.Net email is sponsored by Yahoo. Introducing Yahoo! Search Developer Network - Create apps using Yahoo! Search APIs Find out how you can build Yahoo! directly into your own Applications - visit http://developer.yahoo.net/?fr=offad-ysdn-ostg-q22005 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs