Remove useless checks for NULL before freeing
authorMatt Turner <mattst88@gmail.com>
Tue, 4 Sep 2012 03:24:35 +0000 (20:24 -0700)
committerMatt Turner <mattst88@gmail.com>
Thu, 6 Sep 2012 05:28:50 +0000 (22:28 -0700)
commit5067506ea6ada5eeae33b1acf1c916e00121c12a
treea6b4ff2e3cf5fb6058101aee3b6f1dcd3f382c15
parenta9e8054fffc6e3e6a5f108a96c331858c28a5862
Remove useless checks for NULL before freeing

This patch has been generated by the following Coccinelle semantic
patch:

// Remove useless checks for NULL before freeing
//
// free (NULL) is a no-op, so there is no need to avoid it

@@
expression E;
@@
+ free (E);
+ E = NULL;
- if (unlikely (E != NULL)) {
-   free(E);
(
-   E = NULL;
|
-   E = 0;
)
   ...
- }

@@
expression E;
type T;
@@
+ free ((T) E);
+ E = NULL;
- if (unlikely (E != NULL)) {
-   free((T) E);
(
-   E = NULL;
|
-   E = 0;
)
   ...
- }

@@
expression E;
@@
+ free (E);
- if (unlikely (E != NULL)) {
-   free (E);
- }

@@
expression E;
type T;
@@
+ free ((T) E);
- if (unlikely (E != NULL)) {
-   free ((T) E);
- }

Reviewed-by: Brian Paul <brianp@vmware.com>
46 files changed:
src/egl/drivers/dri2/egl_dri2.c
src/egl/drivers/dri2/platform_x11.c
src/egl/drivers/glx/egl_glx.c
src/gallium/drivers/r600/r600_shader.c
src/gallium/state_trackers/egl/x11/glxinit.c
src/gallium/state_trackers/egl/x11/x11_screen.c
src/gallium/state_trackers/glx/xlib/xm_api.c
src/gallium/state_trackers/glx/xlib/xm_st.c
src/gallium/state_trackers/vega/shaders_cache.c
src/gallium/state_trackers/xvmc/subpicture.c
src/gallium/targets/graw-xlib/graw_xlib.c
src/glx/dri2_glx.c
src/glx/dri_glx.c
src/glx/drisw_glx.c
src/glx/glxext.c
src/glx/indirect_glx.c
src/glx/indirect_vertex_array.c
src/mesa/drivers/dri/common/xmlconfig.c
src/mesa/drivers/dri/intel/intel_buffer_objects.c
src/mesa/drivers/dri/intel/intel_tex.c
src/mesa/drivers/dri/radeon/radeon_common_context.c
src/mesa/drivers/dri/radeon/radeon_texture.c
src/mesa/drivers/x11/fakeglx.c
src/mesa/main/atifragshader.c
src/mesa/main/bufferobj.c
src/mesa/main/context.c
src/mesa/main/imports.c
src/mesa/main/shaderapi.c
src/mesa/main/shaderobj.c
src/mesa/main/texcompress_cpal.c
src/mesa/main/texcompress_fxt1.c
src/mesa/program/arbprogparse.c
src/mesa/program/nvfragparse.c
src/mesa/program/nvvertparse.c
src/mesa/program/prog_instruction.c
src/mesa/program/prog_parameter.c
src/mesa/program/program.c
src/mesa/state_tracker/st_cb_texture.c
src/mesa/swrast/s_context.c
src/mesa/swrast/s_drawpix.c
src/mesa/swrast/s_renderbuffer.c
src/mesa/swrast/s_texture.c
src/mesa/tnl/t_vb_texgen.c
src/mesa/vbo/vbo_primitive_restart.c
src/mesa/vbo/vbo_rebase.c
src/mesa/vbo/vbo_save_api.c