From 1eff1a345edee2cf89b23ee02d1551b8d7b7031b Mon Sep 17 00:00:00 2001 From: Norbert Federa Date: Mon, 11 May 2015 09:07:39 +0200 Subject: [PATCH] free can handle NULL perfectly fine --- channels/audin/client/alsa/audin_alsa.c | 3 +- channels/audin/client/audin_main.c | 8 +--- channels/audin/client/opensles/audin_opensl_es.c | 3 +- channels/audin/server/audin.c | 4 +- channels/cliprdr/server/cliprdr_main.c | 3 +- channels/disp/client/disp_main.c | 10 +---- channels/drdynvc/server/drdynvc_main.c | 6 +-- channels/echo/client/echo_main.c | 5 +-- channels/encomsp/server/encomsp_main.c | 6 +-- channels/rail/rail_common.c | 3 +- channels/rdpdr/client/rdpdr_main.c | 3 +- channels/rdpdr/server/rdpdr_main.c | 6 +-- channels/rdpei/client/rdpei_main.c | 5 +-- channels/rdpgfx/client/rdpgfx_codec.c | 6 +-- channels/rdpsnd/client/rdpsnd_main.c | 8 +--- channels/rdpsnd/client/winmm/rdpsnd_winmm.c | 3 +- channels/rdpsnd/server/rdpsnd_main.c | 10 ++--- channels/remdesk/server/remdesk_main.c | 6 +-- channels/serial/client/serial_main.c | 13 ++---- channels/smartcard/client/smartcard_operations.c | 36 +++++----------- channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c | 9 ++-- channels/tsmf/client/tsmf_main.c | 4 +- channels/tsmf/client/tsmf_media.c | 7 +--- channels/urbdrc/client/urbdrc_main.c | 4 +- client/Android/FreeRDPCore/jni/android_event.c | 19 +++------ client/Android/FreeRDPCore/jni/android_freerdp.c | 12 ++---- client/Mac/Keyboard.m | 7 ++-- client/Mac/MRDPView.m | 14 +++---- client/Windows/wf_cliprdr.c | 48 +++++++--------------- client/X11/xf_window.c | 3 +- client/common/compatibility.c | 4 +- client/common/file.c | 10 ++--- libfreerdp/cache/brush.c | 30 +++----------- libfreerdp/cache/glyph.c | 12 ++---- libfreerdp/cache/nine_grid.c | 13 +----- libfreerdp/cache/palette.c | 13 ++---- libfreerdp/codec/color.c | 4 +- libfreerdp/codec/dsp.c | 8 +--- libfreerdp/codec/ncrush.c | 5 +-- libfreerdp/codec/nsc.c | 3 +- libfreerdp/codec/progressive.c | 15 +++---- libfreerdp/codec/zgfx.c | 5 +-- libfreerdp/common/assistance.c | 37 +++++++---------- libfreerdp/core/certificate.c | 16 +++----- libfreerdp/core/connection.c | 12 ++---- libfreerdp/core/freerdp.c | 5 +-- libfreerdp/core/gateway/http.c | 32 ++++----------- libfreerdp/core/gateway/tsg.c | 4 +- libfreerdp/core/license.c | 16 ++++---- libfreerdp/core/listener.c | 3 +- libfreerdp/core/message.c | 14 ++----- libfreerdp/core/metrics.c | 3 -- libfreerdp/core/nego.c | 11 +++-- libfreerdp/core/nla.c | 3 +- libfreerdp/core/redirection.c | 34 ++++----------- libfreerdp/core/update.c | 3 +- libfreerdp/crypto/crypto.c | 6 +-- libfreerdp/crypto/tls.c | 3 +- rdtk/librdtk/rdtk_button.c | 3 -- rdtk/librdtk/rdtk_font.c | 9 +--- rdtk/librdtk/rdtk_label.c | 3 -- rdtk/librdtk/rdtk_text_field.c | 3 -- server/Windows/wf_interface.c | 5 +-- server/shadow/shadow_client.c | 9 ++-- winpr/libwinpr/asn1/asn1.c | 3 +- winpr/libwinpr/comm/comm.c | 15 +++---- winpr/libwinpr/crypto/cert.c | 5 +-- winpr/libwinpr/environment/environment.c | 13 ++---- winpr/libwinpr/file/file.c | 19 +++------ winpr/libwinpr/heap/heap.c | 2 +- winpr/libwinpr/nt/nt.c | 3 +- winpr/libwinpr/pipe/pipe.c | 19 +++------ winpr/libwinpr/sspi/CredSSP/credssp.c | 3 -- winpr/libwinpr/sspi/NTLM/ntlm.c | 6 +-- winpr/libwinpr/sspi/NTLM/ntlm_av_pairs.c | 3 +- winpr/libwinpr/sspi/Negotiate/negotiate.c | 3 -- winpr/libwinpr/sspi/Schannel/schannel.c | 6 +-- winpr/libwinpr/sspi/sspi_winpr.c | 31 ++++++-------- winpr/libwinpr/sspicli/sspicli.c | 10 ++--- .../synch/test/TestSynchWaitableTimerAPC.c | 3 +- winpr/libwinpr/thread/argv.c | 7 +--- winpr/libwinpr/thread/process.c | 5 +-- winpr/libwinpr/thread/thread.c | 3 +- winpr/libwinpr/utils/collections/BitStream.c | 9 +--- winpr/libwinpr/utils/collections/PubSub.c | 4 +- winpr/libwinpr/utils/collections/Reference.c | 3 +- winpr/libwinpr/utils/debug.c | 9 ++-- winpr/libwinpr/utils/lodepng/lodepng.c | 4 +- winpr/libwinpr/utils/stream.c | 5 +-- winpr/libwinpr/utils/test/TestImage.c | 10 ++--- winpr/libwinpr/utils/wlog/BinaryAppender.c | 12 ++---- winpr/libwinpr/utils/wlog/CallbackAppender.c | 5 +-- winpr/libwinpr/utils/wlog/FileAppender.c | 12 ++---- winpr/libwinpr/utils/wlog/Layout.c | 7 +--- winpr/libwinpr/utils/wlog/wlog.c | 3 +- winpr/libwinpr/wnd/wnd.c | 3 +- winpr/tools/makecert/makecert.c | 3 +- 97 files changed, 255 insertions(+), 623 deletions(-) diff --git a/channels/audin/client/alsa/audin_alsa.c b/channels/audin/client/alsa/audin_alsa.c index d197476..fa0c57b 100644 --- a/channels/audin/client/alsa/audin_alsa.c +++ b/channels/audin/client/alsa/audin_alsa.c @@ -366,8 +366,7 @@ static void audin_alsa_close(IAudinDevice* device) alsa->thread = NULL; } - if (alsa->buffer) - free(alsa->buffer); + free(alsa->buffer); alsa->buffer = NULL; alsa->receive = NULL; diff --git a/channels/audin/client/audin_main.c b/channels/audin/client/audin_main.c index 1ef7d14..e86233d 100644 --- a/channels/audin/client/audin_main.c +++ b/channels/audin/client/audin_main.c @@ -475,17 +475,13 @@ static BOOL audin_load_device_plugin(IWTSPlugin* pPlugin, const char* name, ADDI void audin_set_subsystem(AUDIN_PLUGIN* audin, char* subsystem) { - if (audin->subsystem) - free(audin->subsystem); - + free(audin->subsystem); audin->subsystem = _strdup(subsystem); } void audin_set_device_name(AUDIN_PLUGIN* audin, char* device_name) { - if (audin->device_name) - free(audin->device_name); - + free(audin->device_name); audin->device_name = _strdup(device_name); } diff --git a/channels/audin/client/opensles/audin_opensl_es.c b/channels/audin/client/opensles/audin_opensl_es.c index 8c28943..6d9869b 100644 --- a/channels/audin/client/opensles/audin_opensl_es.c +++ b/channels/audin/client/opensles/audin_opensl_es.c @@ -154,8 +154,7 @@ static void audin_opensles_free(IAudinDevice* device) freerdp_dsp_context_free(opensles->dsp_context); - if (opensles->device_name) - free(opensles->device_name); + free(opensles->device_name); free(opensles); } diff --git a/channels/audin/server/audin.c b/channels/audin/server/audin.c index b5a11ad..e5909cd 100644 --- a/channels/audin/server/audin.c +++ b/channels/audin/server/audin.c @@ -492,8 +492,6 @@ void audin_server_context_free(audin_server_context* context) if (audin->dsp_context) freerdp_dsp_context_free(audin->dsp_context); - if (audin->context.client_formats) - free(audin->context.client_formats); - + free(audin->context.client_formats); free(audin); } diff --git a/channels/cliprdr/server/cliprdr_main.c b/channels/cliprdr/server/cliprdr_main.c index dd8db38..89eea11 100644 --- a/channels/cliprdr/server/cliprdr_main.c +++ b/channels/cliprdr/server/cliprdr_main.c @@ -629,8 +629,7 @@ static int cliprdr_server_receive_format_list(CliprdrServerContext* context, wSt for (index = 0; index < formatList.numFormats; index++) { - if (formatList.formats[index].formatName) - free(formatList.formats[index].formatName); + free(formatList.formats[index].formatName); } free(formatList.formats); diff --git a/channels/disp/client/disp_main.c b/channels/disp/client/disp_main.c index 4822de7..05e9c3f 100644 --- a/channels/disp/client/disp_main.c +++ b/channels/disp/client/disp_main.c @@ -212,10 +212,7 @@ static int disp_on_close(IWTSVirtualChannelCallback* pChannelCallback) { DISP_CHANNEL_CALLBACK* callback = (DISP_CHANNEL_CALLBACK*) pChannelCallback; - if (callback) - { - free(callback); - } + free(callback); return 0; } @@ -270,10 +267,7 @@ static int disp_plugin_terminated(IWTSPlugin* pPlugin) { DISP_PLUGIN* disp = (DISP_PLUGIN*) pPlugin; - if (disp) - { - free(disp); - } + free(disp); return 0; } diff --git a/channels/drdynvc/server/drdynvc_main.c b/channels/drdynvc/server/drdynvc_main.c index b4175d1..077d981 100644 --- a/channels/drdynvc/server/drdynvc_main.c +++ b/channels/drdynvc/server/drdynvc_main.c @@ -132,11 +132,7 @@ void drdynvc_server_context_free(DrdynvcServerContext* context) { if (context) { - if (context->priv) - { - free(context->priv); - } - + free(context->priv); free(context); } } diff --git a/channels/echo/client/echo_main.c b/channels/echo/client/echo_main.c index ec7b56a..40307f0 100644 --- a/channels/echo/client/echo_main.c +++ b/channels/echo/client/echo_main.c @@ -126,10 +126,7 @@ static int echo_plugin_terminated(IWTSPlugin* pPlugin) { ECHO_PLUGIN* echo = (ECHO_PLUGIN*) pPlugin; - if (echo) - { - free(echo); - } + free(echo); return 0; } diff --git a/channels/encomsp/server/encomsp_main.c b/channels/encomsp/server/encomsp_main.c index b3689f5..b15bff4 100644 --- a/channels/encomsp/server/encomsp_main.c +++ b/channels/encomsp/server/encomsp_main.c @@ -263,11 +263,7 @@ void encomsp_server_context_free(EncomspServerContext* context) { if (context) { - if (context->priv) - { - free(context->priv); - } - + free(context->priv); free(context); } } diff --git a/channels/rail/rail_common.c b/channels/rail/rail_common.c index 6614376..94bd754 100644 --- a/channels/rail/rail_common.c +++ b/channels/rail/rail_common.c @@ -54,8 +54,7 @@ void rail_string_to_unicode_string(char* string, RAIL_UNICODE_STRING* unicode_st WCHAR* buffer = NULL; int length = 0; - if (unicode_string->string != NULL) - free(unicode_string->string); + free(unicode_string->string); unicode_string->string = NULL; unicode_string->length = 0; diff --git a/channels/rdpdr/client/rdpdr_main.c b/channels/rdpdr/client/rdpdr_main.c index 67b58ba..af2c870 100644 --- a/channels/rdpdr/client/rdpdr_main.c +++ b/channels/rdpdr/client/rdpdr_main.c @@ -669,8 +669,7 @@ static void rdpdr_send_device_list_announce_request(rdpdrPlugin* rdpdr, BOOL use } } - if (pKeys) - free(pKeys); + free(pKeys); pos = (int) Stream_GetPosition(s); Stream_SetPosition(s, count_pos); diff --git a/channels/rdpdr/server/rdpdr_main.c b/channels/rdpdr/server/rdpdr_main.c index 6f20ab8..ac4cd9b 100644 --- a/channels/rdpdr/server/rdpdr_main.c +++ b/channels/rdpdr/server/rdpdr_main.c @@ -621,11 +621,7 @@ void rdpdr_server_context_free(RdpdrServerContext* context) { if (context) { - if (context->priv) - { - free(context->priv); - } - + free(context->priv); free(context); } } diff --git a/channels/rdpei/client/rdpei_main.c b/channels/rdpei/client/rdpei_main.c index 57a710e..3d984c5 100644 --- a/channels/rdpei/client/rdpei_main.c +++ b/channels/rdpei/client/rdpei_main.c @@ -533,11 +533,8 @@ static int rdpei_plugin_terminated(IWTSPlugin* pPlugin) DeleteCriticalSection(&rdpei->lock); - if (rdpei->listener_callback) - free(rdpei->listener_callback); - + free(rdpei->listener_callback); free(rdpei->context); - free(rdpei); return 0; diff --git a/channels/rdpgfx/client/rdpgfx_codec.c b/channels/rdpgfx/client/rdpgfx_codec.c index 2b146b3..1c11700 100644 --- a/channels/rdpgfx/client/rdpgfx_codec.c +++ b/channels/rdpgfx/client/rdpgfx_codec.c @@ -123,10 +123,8 @@ int rdpgfx_decode_h264(RDPGFX_PLUGIN* gfx, RDPGFX_SURFACE_COMMAND* cmd) if (status < 0) { - if (h264.meta.regionRects) - free(h264.meta.regionRects); - if (h264.meta.quantQualityVals) - free(h264.meta.quantQualityVals); + free(h264.meta.regionRects); + free(h264.meta.quantQualityVals); return -1; } diff --git a/channels/rdpsnd/client/rdpsnd_main.c b/channels/rdpsnd/client/rdpsnd_main.c index dc05c3c..f2f8fa4 100644 --- a/channels/rdpsnd/client/rdpsnd_main.c +++ b/channels/rdpsnd/client/rdpsnd_main.c @@ -617,17 +617,13 @@ static BOOL rdpsnd_load_device_plugin(rdpsndPlugin* rdpsnd, const char* name, AD void rdpsnd_set_subsystem(rdpsndPlugin* rdpsnd, char* subsystem) { - if (rdpsnd->subsystem) - free(rdpsnd->subsystem); - + free(rdpsnd->subsystem); rdpsnd->subsystem = _strdup(subsystem); } void rdpsnd_set_device_name(rdpsndPlugin* rdpsnd, char* device_name) { - if (rdpsnd->device_name) - free(rdpsnd->device_name); - + free(rdpsnd->device_name); rdpsnd->device_name = _strdup(device_name); } diff --git a/channels/rdpsnd/client/winmm/rdpsnd_winmm.c b/channels/rdpsnd/client/winmm/rdpsnd_winmm.c index e8d2994..70e4029 100644 --- a/channels/rdpsnd/client/winmm/rdpsnd_winmm.c +++ b/channels/rdpsnd/client/winmm/rdpsnd_winmm.c @@ -130,8 +130,7 @@ static void CALLBACK rdpsnd_winmm_callback_function(HWAVEOUT hwo, UINT uMsg, DWO winmm->device.WaveConfirm(&(winmm->device), wave); - if (lpWaveHdr->lpData) - free(lpWaveHdr->lpData); + free(lpWaveHdr->lpData); free(wave); } diff --git a/channels/rdpsnd/server/rdpsnd_main.c b/channels/rdpsnd/server/rdpsnd_main.c index 71aa974..50d9d7f 100644 --- a/channels/rdpsnd/server/rdpsnd_main.c +++ b/channels/rdpsnd/server/rdpsnd_main.c @@ -602,17 +602,15 @@ void rdpsnd_server_context_free(RdpsndServerContext* context) if (context->priv->ChannelHandle) WTSVirtualChannelClose(context->priv->ChannelHandle); - if (context->priv->out_buffer) - free(context->priv->out_buffer); + free(context->priv->out_buffer); if (context->priv->dsp_context) freerdp_dsp_context_free(context->priv->dsp_context); - if (context->priv->input_stream) - Stream_Free(context->priv->input_stream, TRUE); + if (context->priv->input_stream) + Stream_Free(context->priv->input_stream, TRUE); - if (context->client_formats) - free(context->client_formats); + free(context->client_formats); free(context); } diff --git a/channels/remdesk/server/remdesk_main.c b/channels/remdesk/server/remdesk_main.c index 8e37e22..fa4bde6 100644 --- a/channels/remdesk/server/remdesk_main.c +++ b/channels/remdesk/server/remdesk_main.c @@ -540,11 +540,7 @@ void remdesk_server_context_free(RemdeskServerContext* context) { if (context) { - if (context->priv) - { - free(context->priv); - } - + free(context->priv); free(context); } } diff --git a/channels/serial/client/serial_main.c b/channels/serial/client/serial_main.c index a6cb1f6..d4c4f70 100644 --- a/channels/serial/client/serial_main.c +++ b/channels/serial/client/serial_main.c @@ -277,8 +277,7 @@ static void serial_process_irp_read(SERIAL_DEVICE* serial, IRP* irp) Stream_Write(irp->output, buffer, nbRead); /* ReadData */ } - if (buffer) - free(buffer); + free(buffer); } static void serial_process_irp_write(SERIAL_DEVICE* serial, IRP* irp) @@ -389,11 +388,8 @@ static void serial_process_irp_device_control(SERIAL_DEVICE* serial, IRP* irp) /* Stream_Write_UINT8(irp->output, 0); /\* Padding (1 byte) *\/ */ /* } */ - if (InputBuffer != NULL) - free(InputBuffer); - - if (OutputBuffer != NULL) - free(OutputBuffer); + free(InputBuffer); + free(OutputBuffer); } static void serial_process_irp(SERIAL_DEVICE* serial, IRP* irp) @@ -620,8 +616,7 @@ static void create_irp_thread(SERIAL_DEVICE *serial, IRP *irp) irp->IoStatus = STATUS_NO_MEMORY; irp->Complete(irp); - if (data) - free(data); + free(data); } diff --git a/channels/smartcard/client/smartcard_operations.c b/channels/smartcard/client/smartcard_operations.c index 1886933..4fdf4ed 100644 --- a/channels/smartcard/client/smartcard_operations.c +++ b/channels/smartcard/client/smartcard_operations.c @@ -443,9 +443,7 @@ static UINT32 smartcard_GetStatusChangeA_Call(SMARTCARD_DEVICE* smartcard, SMART for (index = 0; index < call->cReaders; index++) { rgReaderState = &call->rgReaderStates[index]; - - if (rgReaderState->szReader) - free((void*) rgReaderState->szReader); + free(rgReaderState->szReader); } free(call->rgReaderStates); @@ -508,9 +506,7 @@ static UINT32 smartcard_GetStatusChangeW_Call(SMARTCARD_DEVICE* smartcard, SMART for (index = 0; index < call->cReaders; index++) { rgReaderState = &call->rgReaderStates[index]; - - if (rgReaderState->szReader) - free((void*) rgReaderState->szReader); + free(rgReaderState->szReader); } free(call->rgReaderStates); @@ -585,8 +581,7 @@ static UINT32 smartcard_ConnectA_Call(SMARTCARD_DEVICE* smartcard, SMARTCARD_OPE if (status) return status; - if (call->szReader) - free(call->szReader); + free(call->szReader); return ret.ReturnCode; } @@ -634,8 +629,7 @@ static UINT32 smartcard_ConnectW_Call(SMARTCARD_DEVICE* smartcard, SMARTCARD_OPE if (status) return status; - if (call->szReader) - free(call->szReader); + free(call->szReader); return ret.ReturnCode; } @@ -923,17 +917,10 @@ static UINT32 smartcard_Transmit_Call(SMARTCARD_DEVICE* smartcard, SMARTCARD_OPE if (status != SCARD_S_SUCCESS) return status; - if (call->pbSendBuffer) - free(call->pbSendBuffer); - - if (ret.pbRecvBuffer) - free(ret.pbRecvBuffer); - - if (call->pioSendPci) - free(call->pioSendPci); - - if (call->pioRecvPci) - free(call->pioRecvPci); + free(call->pbSendBuffer); + free(ret.pbRecvBuffer); + free(call->pioSendPci); + free(call->pioRecvPci); return ret.ReturnCode; } @@ -974,11 +961,8 @@ static UINT32 smartcard_Control_Call(SMARTCARD_DEVICE* smartcard, SMARTCARD_OPER if (status != SCARD_S_SUCCESS) return status; - if (call->pvInBuffer) - free(call->pvInBuffer); - - if (ret.pvOutBuffer) - free(ret.pvOutBuffer); + free(call->pvInBuffer); + free(ret.pvOutBuffer); return ret.ReturnCode; } diff --git a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c index 333bad6..2537068 100644 --- a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c +++ b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c @@ -499,14 +499,15 @@ static void tsmf_ffmpeg_free(ITSMFDecoder* decoder) TSMFFFmpegDecoder* mdecoder = (TSMFFFmpegDecoder*) decoder; if (mdecoder->frame) av_free(mdecoder->frame); - if (mdecoder->decoded_data) - free(mdecoder->decoded_data); + + free(mdecoder->decoded_data); + if (mdecoder->codec_context) { if (mdecoder->prepared) avcodec_close(mdecoder->codec_context); - if (mdecoder->codec_context->extradata) - free(mdecoder->codec_context->extradata); + + free(mdecoder->codec_context->extradata); av_free(mdecoder->codec_context); } free(decoder); diff --git a/channels/tsmf/client/tsmf_main.c b/channels/tsmf/client/tsmf_main.c index ed0d32a..62b2991 100644 --- a/channels/tsmf/client/tsmf_main.c +++ b/channels/tsmf/client/tsmf_main.c @@ -354,9 +354,7 @@ static int tsmf_plugin_terminated(IWTSPlugin* pPlugin) DEBUG_TSMF(""); - if (tsmf->listener_callback) - free(tsmf->listener_callback); - + free(tsmf->listener_callback); free(tsmf); return 0; diff --git a/channels/tsmf/client/tsmf_media.c b/channels/tsmf/client/tsmf_media.c index d460c01..fd59d00 100644 --- a/channels/tsmf/client/tsmf_media.c +++ b/channels/tsmf/client/tsmf_media.c @@ -215,9 +215,7 @@ static void tsmf_sample_free(void *arg) if (!sample) return; - if (sample->data) - free(sample->data); - + free(sample->data); free(sample); } @@ -916,8 +914,7 @@ void _tsmf_presentation_free(TSMF_PRESENTATION* presentation) ArrayList_Clear(presentation->stream_list); ArrayList_Free(presentation->stream_list); - if (presentation->rects) - free(presentation->rects); + free(presentation->rects); ZeroMemory(presentation, sizeof(TSMF_PRESENTATION)); free(presentation); diff --git a/channels/urbdrc/client/urbdrc_main.c b/channels/urbdrc/client/urbdrc_main.c index 6db6edd..a3e1fce 100644 --- a/channels/urbdrc/client/urbdrc_main.c +++ b/channels/urbdrc/client/urbdrc_main.c @@ -1026,9 +1026,7 @@ static int urbdrc_load_udevman_addin(IWTSPlugin* pPlugin, const char* name, ADDI void urbdrc_set_subsystem(URBDRC_PLUGIN* urbdrc, char* subsystem) { - if (urbdrc->subsystem) - free(urbdrc->subsystem); - + free(urbdrc->subsystem); urbdrc->subsystem = _strdup(subsystem); } diff --git a/client/Android/FreeRDPCore/jni/android_event.c b/client/Android/FreeRDPCore/jni/android_event.c index c3021d4..2a74123 100644 --- a/client/Android/FreeRDPCore/jni/android_event.c +++ b/client/Android/FreeRDPCore/jni/android_event.c @@ -238,8 +238,7 @@ ANDROID_EVENT_KEY* android_event_key_new(int flags, UINT16 scancode) void android_event_key_free(ANDROID_EVENT_KEY* event) { - if (event != NULL) - free(event); + free(event); } ANDROID_EVENT_KEY* android_event_unicodekey_new(UINT16 key) @@ -257,8 +256,7 @@ ANDROID_EVENT_KEY* android_event_unicodekey_new(UINT16 key) void android_event_unicodekey_free(ANDROID_EVENT_KEY* event) { - if (event != NULL) - free(event); + free(event); } ANDROID_EVENT_CURSOR* android_event_cursor_new(UINT16 flags, UINT16 x, UINT16 y) @@ -278,8 +276,7 @@ ANDROID_EVENT_CURSOR* android_event_cursor_new(UINT16 flags, UINT16 x, UINT16 y) void android_event_cursor_free(ANDROID_EVENT_CURSOR* event) { - if (event != NULL) - free(event); + free(event); } ANDROID_EVENT* android_event_disconnect_new() @@ -295,8 +292,7 @@ ANDROID_EVENT* android_event_disconnect_new() void android_event_disconnect_free(ANDROID_EVENT* event) { - if (event != NULL) - free(event); + free(event); } ANDROID_EVENT_CLIPBOARD* android_event_clipboard_new(void* data, int data_length) @@ -319,12 +315,9 @@ ANDROID_EVENT_CLIPBOARD* android_event_clipboard_new(void* data, int data_length void android_event_clipboard_free(ANDROID_EVENT_CLIPBOARD* event) { - if (event != NULL) + if (event) { - if (event->data) - { - free(event->data); - } + free(event->data); free(event); } } diff --git a/client/Android/FreeRDPCore/jni/android_freerdp.c b/client/Android/FreeRDPCore/jni/android_freerdp.c index 82685257..3e0631b 100644 --- a/client/Android/FreeRDPCore/jni/android_freerdp.c +++ b/client/Android/FreeRDPCore/jni/android_freerdp.c @@ -276,19 +276,13 @@ BOOL android_authenticate(freerdp* instance, char** username, char** password, c if (res == JNI_TRUE) { // read back string values - if (*username != NULL) - free(*username); - + free(*username); *username = get_string_from_string_builder(env, jstr1); - if (*domain != NULL) - free(*domain); - + free(*domain); *domain = get_string_from_string_builder(env, jstr2); - if (*password == NULL) - free(*password); - + free(*password); *password = get_string_from_string_builder(env, jstr3); } diff --git a/client/Mac/Keyboard.m b/client/Mac/Keyboard.m index 63cbfd4..d0b5b6c 100644 --- a/client/Mac/Keyboard.m +++ b/client/Mac/Keyboard.m @@ -230,10 +230,9 @@ enum APPLE_KEYBOARD_TYPE mac_detect_keyboard_type() break; } } - - if (tIOHIDDeviceRefs) - free(tIOHIDDeviceRefs); - + + free(tIOHIDDeviceRefs); + if (deviceCFSetRef) { CFRelease(deviceCFSetRef); diff --git a/client/Mac/MRDPView.m b/client/Mac/MRDPView.m index ce18f3c..337cd02 100644 --- a/client/Mac/MRDPView.m +++ b/client/Mac/MRDPView.m @@ -693,18 +693,14 @@ DWORD fixKeyCode(DWORD keyCode, unichar keyChar, enum APPLE_KEYBOARD_TYPE type) int i; for (i = 0; i < argc; i++) - { - if (argv[i]) - free(argv[i]); - } - + free(argv[i]); + if (!is_connected) return; - + gdi_free(context->instance); - - if (pixel_data) - free(pixel_data); + + free(pixel_data); } - (void) drawRect:(NSRect)rect diff --git a/client/Windows/wf_cliprdr.c b/client/Windows/wf_cliprdr.c index e524706..303d16e 100644 --- a/client/Windows/wf_cliprdr.c +++ b/client/Windows/wf_cliprdr.c @@ -305,9 +305,7 @@ void CliprdrStream_Delete(CliprdrStream* instance) { if (instance) { - if (instance->iStream.lpVtbl) - free(instance->iStream.lpVtbl); - + free(instance->iStream.lpVtbl); free(instance); } } @@ -596,14 +594,9 @@ void CliprdrDataObject_Delete(CliprdrDataObject* instance) { if (instance) { - if (instance->iDataObject.lpVtbl) - free(instance->iDataObject.lpVtbl); - - if (instance->m_pFormatEtc) - free(instance->m_pFormatEtc); - - if (instance->m_pStgMedium) - free(instance->m_pStgMedium); + free(instance->iDataObject.lpVtbl); + free(instance->m_pFormatEtc); + free(instance->m_pStgMedium); if (instance->m_pStream) { @@ -837,8 +830,7 @@ void CliprdrEnumFORMATETC_Delete(CliprdrEnumFORMATETC* instance) if (instance) { - if (instance->iEnumFORMATETC.lpVtbl) - free(instance->iEnumFORMATETC.lpVtbl); + free(instance->iEnumFORMATETC.lpVtbl); if (instance->m_pFormatEtc) { @@ -932,11 +924,8 @@ static void clear_format_map(wfClipboard* clipboard) map->remote_format_id = 0; map->local_format_id = 0; - if (map->name) - { - free(map->name); - map->name = NULL; - } + free(map->name); + map->name = NULL; } } @@ -1255,11 +1244,8 @@ static void clear_file_array(wfClipboard* clipboard) { for (i = 0; i < clipboard->nFiles; i++) { - if (clipboard->file_names[i]) - { - free(clipboard->file_names[i]); - clipboard->file_names[i] = NULL; - } + free(clipboard->file_names[i]); + clipboard->file_names[i] = NULL; } } @@ -1268,11 +1254,8 @@ static void clear_file_array(wfClipboard* clipboard) { for (i = 0; i < clipboard->nFiles; i++) { - if (clipboard->fileDescriptor[i]) - { - free(clipboard->fileDescriptor[i]); - clipboard->fileDescriptor[i] = NULL; - } + free(clipboard->fileDescriptor[i]); + clipboard->fileDescriptor[i] = NULL; } } @@ -2069,12 +2052,9 @@ void wf_cliprdr_uninit(wfContext* wfc, CliprdrClientContext* cliprdr) clear_file_array(clipboard); clear_format_map(clipboard); - if (clipboard->file_names) - free(clipboard->file_names); - if (clipboard->fileDescriptor) - free(clipboard->fileDescriptor); - if (clipboard->format_mappings) - free(clipboard->format_mappings); + free(clipboard->file_names); + free(clipboard->fileDescriptor); + free(clipboard->format_mappings); free(clipboard); } diff --git a/client/X11/xf_window.c b/client/X11/xf_window.c index 8d253e0..4c9e19d 100644 --- a/client/X11/xf_window.c +++ b/client/X11/xf_window.c @@ -667,8 +667,7 @@ int xf_AppWindowInit(xfContext* xfc, xfAppWindow* appWindow) XSetClassHint(xfc->display, appWindow->handle, class_hints); XFree(class_hints); - if (class) - free(class); + free(class); } /* Set the input mode hint for the WM */ diff --git a/client/common/compatibility.c b/client/common/compatibility.c index 80b860a..da2f483 100644 --- a/client/common/compatibility.c +++ b/client/common/compatibility.c @@ -395,9 +395,7 @@ int freerdp_detect_old_command_line_syntax(int argc, char** argv, int* count) detect_status = 1; } - if (settings->ServerHostname) - free(settings->ServerHostname); - + free(settings->ServerHostname); free(settings); return detect_status; diff --git a/client/common/file.c b/client/common/file.c index 5376c8b..7ac4802 100644 --- a/client/common/file.c +++ b/client/common/file.c @@ -718,8 +718,7 @@ BOOL freerdp_client_write_rdp_file(const rdpFile* file, const char* name, BOOL u status = fclose(fp); } - if (buffer) - free(buffer); + free(buffer); return (status == 0) ? TRUE : FALSE; } @@ -777,11 +776,8 @@ BOOL freerdp_client_populate_settings_from_rdp_file(rdpFile* file, rdpSettings* if (domain) freerdp_set_param_string(settings, FreeRDP_Domain, domain); - if (user) - free(user); - - if (domain) - free(domain); + free(user); + free(domain); } if (~((size_t) file->FullAddress)) diff --git a/libfreerdp/cache/brush.c b/libfreerdp/cache/brush.c index 57aa9e5..ffd802a 100644 --- a/libfreerdp/cache/brush.c +++ b/libfreerdp/cache/brush.c @@ -148,17 +148,11 @@ void brush_cache_put(rdpBrushCache* brushCache, UINT32 index, void* entry, UINT3 if (index >= brushCache->maxMonoEntries) { WLog_ERR(TAG, "invalid brush (%d bpp) index: 0x%04X", bpp, index); - - if (entry) - free(entry); - + free(entry); return; } - prevEntry = brushCache->monoEntries[index].entry; - - if (prevEntry != NULL) - free(prevEntry); + free(brushCache->monoEntries[index].entry); brushCache->monoEntries[index].bpp = bpp; brushCache->monoEntries[index].entry = entry; @@ -168,17 +162,11 @@ void brush_cache_put(rdpBrushCache* brushCache, UINT32 index, void* entry, UINT3 if (index >= brushCache->maxEntries) { WLog_ERR(TAG, "invalid brush (%d bpp) index: 0x%04X", bpp, index); - - if (entry) - free(entry); - + free(entry); return; } - prevEntry = brushCache->entries[index].entry; - - if (prevEntry != NULL) - free(prevEntry); + free(brushCache->entries[index].entry); brushCache->entries[index].bpp = bpp; brushCache->entries[index].entry = entry; @@ -233,10 +221,7 @@ void brush_cache_free(rdpBrushCache* brushCache) if (brushCache->entries) { for (i = 0; i < (int) brushCache->maxEntries; i++) - { - if (brushCache->entries[i].entry != NULL) - free(brushCache->entries[i].entry); - } + free(brushCache->entries[i].entry); free(brushCache->entries); } @@ -244,10 +229,7 @@ void brush_cache_free(rdpBrushCache* brushCache) if (brushCache->monoEntries) { for (i = 0; i < (int) brushCache->maxMonoEntries; i++) - { - if (brushCache->monoEntries[i].entry != NULL) - free(brushCache->monoEntries[i].entry); - } + free(brushCache->monoEntries[i].entry); free(brushCache->monoEntries); } diff --git a/libfreerdp/cache/glyph.c b/libfreerdp/cache/glyph.c index c8cf152..6b6445e 100644 --- a/libfreerdp/cache/glyph.c +++ b/libfreerdp/cache/glyph.c @@ -460,9 +460,7 @@ void glyph_cache_put(rdpGlyphCache* glyphCache, UINT32 id, UINT32 index, rdpGlyp if (prevGlyph) { Glyph_Free(glyphCache->context, prevGlyph); - - if (prevGlyph->aj) - free(prevGlyph->aj); + free(prevGlyph->aj); free(prevGlyph); } @@ -507,8 +505,7 @@ void glyph_cache_fragment_put(rdpGlyphCache* glyphCache, UINT32 index, UINT32 si glyphCache->fragCache.entries[index].fragment = fragment; glyphCache->fragCache.entries[index].size = size; - if (prevFragment) - free(prevFragment); + free(prevFragment); } void glyph_cache_register_callbacks(rdpUpdate* update) @@ -568,11 +565,8 @@ void glyph_cache_free(rdpGlyphCache* glyphCache) if (glyph) { Glyph_Free(glyphCache->context, glyph); - - if (glyph->aj) - free(glyph->aj); + free(glyph->aj); free(glyph); - glyphCache->glyphCache[i].entries[j] = NULL; } } diff --git a/libfreerdp/cache/nine_grid.c b/libfreerdp/cache/nine_grid.c index 315d7bf..5789a66 100644 --- a/libfreerdp/cache/nine_grid.c +++ b/libfreerdp/cache/nine_grid.c @@ -81,19 +81,13 @@ void* nine_grid_cache_get(rdpNineGridCache* nine_grid, UINT32 index) void nine_grid_cache_put(rdpNineGridCache* nine_grid, UINT32 index, void* entry) { - void* prevEntry; - if (index >= nine_grid->maxEntries) { WLog_ERR(TAG, "invalid NineGrid index: 0x%04X", index); return; } - prevEntry = nine_grid->entries[index].entry; - - if (prevEntry != NULL) - free(prevEntry); - + free(nine_grid->entries[index].entry); nine_grid->entries[index].entry = entry; } @@ -130,10 +124,7 @@ void nine_grid_cache_free(rdpNineGridCache* nine_grid) if (nine_grid->entries != NULL) { for (i = 0; i < (int) nine_grid->maxEntries; i++) - { - if (nine_grid->entries[i].entry != NULL) - free(nine_grid->entries[i].entry); - } + free(nine_grid->entries[i].entry); free(nine_grid->entries); } diff --git a/libfreerdp/cache/palette.c b/libfreerdp/cache/palette.c index 0bfe280..43a2ce2 100644 --- a/libfreerdp/cache/palette.c +++ b/libfreerdp/cache/palette.c @@ -70,15 +70,11 @@ void palette_cache_put(rdpPaletteCache* paletteCache, UINT32 index, void* entry) if (index >= paletteCache->maxEntries) { WLog_ERR(TAG, "invalid color table index: 0x%04X", index); - - if (entry) - free(entry); - + free(entry); return; } - if (paletteCache->entries[index].entry) - free(paletteCache->entries[index].entry); + free(paletteCache->entries[index].entry); paletteCache->entries[index].entry = entry; } @@ -111,10 +107,7 @@ void palette_cache_free(rdpPaletteCache* paletteCache) UINT32 i; for (i = 0; i< paletteCache->maxEntries; i++) - { - if (paletteCache->entries[i].entry) - free(paletteCache->entries[i].entry); - } + free(paletteCache->entries[i].entry); free(paletteCache->entries); free(paletteCache); diff --git a/libfreerdp/codec/color.c b/libfreerdp/codec/color.c index aa43b49..fe3374b 100644 --- a/libfreerdp/codec/color.c +++ b/libfreerdp/codec/color.c @@ -1620,9 +1620,7 @@ void freerdp_clrconv_free(HCLRCONV clrconv) { if (clrconv) { - if (clrconv->palette) - free(clrconv->palette); - + free(clrconv->palette); free(clrconv); } } diff --git a/libfreerdp/codec/dsp.c b/libfreerdp/codec/dsp.c index 31256ff..be5e98f 100644 --- a/libfreerdp/codec/dsp.c +++ b/libfreerdp/codec/dsp.c @@ -694,12 +694,8 @@ void freerdp_dsp_context_free(FREERDP_DSP_CONTEXT* context) { if (context) { - if (context->resampled_buffer) - free(context->resampled_buffer); - - if (context->adpcm_buffer) - free(context->adpcm_buffer); - + free(context->resampled_buffer); + free(context->adpcm_buffer); free(context); } } diff --git a/libfreerdp/codec/ncrush.c b/libfreerdp/codec/ncrush.c index 34ea352..637e970 100644 --- a/libfreerdp/codec/ncrush.c +++ b/libfreerdp/codec/ncrush.c @@ -2708,8 +2708,5 @@ NCRUSH_CONTEXT* ncrush_context_new(BOOL Compressor) void ncrush_context_free(NCRUSH_CONTEXT* ncrush) { - if (ncrush) - { - free(ncrush); - } + free(ncrush); } diff --git a/libfreerdp/codec/nsc.c b/libfreerdp/codec/nsc.c index ed8b4ca..f505d4a 100644 --- a/libfreerdp/codec/nsc.c +++ b/libfreerdp/codec/nsc.c @@ -310,8 +310,7 @@ void nsc_context_free(NSC_CONTEXT* context) } } - if (context->BitmapData) - free(context->BitmapData); + free(context->BitmapData); BufferPool_Free(context->priv->PlanePool); diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 68f3aae..770789a 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -1856,16 +1856,11 @@ PROGRESSIVE_CONTEXT* progressive_context_new(BOOL Compressor) return progressive; cleanup: - if (progressive->rects) - free(progressive->rects); - if (progressive->tiles) - free(progressive->tiles); - if (progressive->quantVals) - free(progressive->quantVals); - if (progressive->quantProgVals) - free(progressive->quantProgVals); - if (progressive) - free(progressive); + free(progressive->rects); + free(progressive->tiles); + free(progressive->quantVals); + free(progressive->quantProgVals); + free(progressive); return NULL; } diff --git a/libfreerdp/codec/zgfx.c b/libfreerdp/codec/zgfx.c index 5129296..2d66e8f 100644 --- a/libfreerdp/codec/zgfx.c +++ b/libfreerdp/codec/zgfx.c @@ -409,9 +409,6 @@ ZGFX_CONTEXT* zgfx_context_new(BOOL Compressor) void zgfx_context_free(ZGFX_CONTEXT* zgfx) { - if (zgfx) - { - free(zgfx); - } + free(zgfx); } diff --git a/libfreerdp/common/assistance.c b/libfreerdp/common/assistance.c index b53272a..18ea60b 100644 --- a/libfreerdp/common/assistance.c +++ b/libfreerdp/common/assistance.c @@ -181,8 +181,9 @@ int freerdp_assistance_parse_address_list(rdpAssistanceFile* file, char* list) break; } - if (tokens) - free(tokens); + + free(tokens); + return 1; } @@ -523,10 +524,8 @@ BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* pas { free(PasswordW); free(PassStubW); - if (pbIn) - free (pbIn); - if (pbOut) - free (pbOut); + free(pbIn); + free(pbOut); return NULL; } @@ -534,8 +533,8 @@ BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* pas { free(PasswordW); free(PassStubW); - free (pbIn); - free (pbOut); + free(pbIn); + free(pbOut); return NULL; } @@ -627,8 +626,7 @@ int freerdp_assistance_decrypt2(rdpAssistanceFile* file, const char* password) if (status < 0) { - if (PasswordW) - free (PasswordW); + free(PasswordW); return -1; } @@ -640,8 +638,7 @@ int freerdp_assistance_decrypt2(rdpAssistanceFile* file, const char* password) if (status != 1) { - if (PasswordW) - free (PasswordW); + free(PasswordW); return -1; } @@ -652,8 +649,7 @@ int freerdp_assistance_decrypt2(rdpAssistanceFile* file, const char* password) if (status != 1) { - if (PasswordW) - free (PasswordW); + free(PasswordW); return -1; } @@ -664,8 +660,7 @@ int freerdp_assistance_decrypt2(rdpAssistanceFile* file, const char* password) if (!pbOut) { - if (PasswordW) - free (PasswordW); + free(PasswordW); return -1; } @@ -673,9 +668,8 @@ int freerdp_assistance_decrypt2(rdpAssistanceFile* file, const char* password) if (status != 1) { - if (PasswordW) - free (PasswordW); - free (pbOut); + free(PasswordW); + free(pbOut); return -1; } @@ -684,9 +678,8 @@ int freerdp_assistance_decrypt2(rdpAssistanceFile* file, const char* password) if (status != 1) { WLog_ERR(TAG, "EVP_DecryptFinal_ex failure"); - if (PasswordW) - free (PasswordW); - free (pbOut); + free(PasswordW); + free(pbOut); return -1; } diff --git a/libfreerdp/core/certificate.c b/libfreerdp/core/certificate.c index a854635..40091ad 100644 --- a/libfreerdp/core/certificate.c +++ b/libfreerdp/core/certificate.c @@ -345,8 +345,7 @@ void certificate_free_x509_certificate_chain(rdpX509CertChain* x509_cert_chain) for (i = 0; i < (int)x509_cert_chain->count; i++) { - if (x509_cert_chain->array[i].data) - free(x509_cert_chain->array[i].data); + free(x509_cert_chain->array[i].data); } free(x509_cert_chain->array); @@ -591,8 +590,7 @@ BOOL certificate_read_server_x509_certificate_chain(rdpCertificate* certificate, DEBUG_LICENSE("modulus length:%d", (int) cert_info.ModulusLength); - if (cert_info.Modulus) - free(cert_info.Modulus); + free(cert_info.Modulus); if (!ret) { @@ -756,8 +754,7 @@ out_free_rsa: out_free: if (fp) fclose(fp); - if (buffer) - free(buffer); + free(buffer); free(key); return NULL; } @@ -767,9 +764,7 @@ void key_free(rdpRsaKey* key) if (!key) return; - if (key->Modulus) - free(key->Modulus); - + free(key->Modulus); free(key->PrivateExponent); free(key); } @@ -840,8 +835,7 @@ void certificate_free(rdpCertificate* certificate) certificate_free_x509_certificate_chain(certificate->x509_cert_chain); - if (certificate->cert_info.Modulus) - free(certificate->cert_info.Modulus); + free(certificate->cert_info.Modulus); free(certificate); } diff --git a/libfreerdp/core/connection.c b/libfreerdp/core/connection.c index 9832959..2efda30 100644 --- a/libfreerdp/core/connection.c +++ b/libfreerdp/core/connection.c @@ -415,8 +415,7 @@ static BOOL rdp_client_establish_keys(rdpRdp* rdp) /* encrypt client random */ - if (settings->ClientRandom) - free(settings->ClientRandom); + free(settings->ClientRandom); settings->ClientRandomLength = CLIENT_RANDOM_LENGTH; settings->ClientRandom = malloc(settings->ClientRandomLength); @@ -509,8 +508,7 @@ static BOOL rdp_client_establish_keys(rdpRdp* rdp) } ret = TRUE; end: - if (crypt_client_random) - free(crypt_client_random); + free(crypt_client_random); return ret; } @@ -628,11 +626,9 @@ BOOL rdp_server_establish_keys(rdpRdp* rdp, wStream* s) } ret = TRUE; end: - if (crypt_client_random) - free(crypt_client_random); + free(crypt_client_random); end2: - if (client_random) - free(client_random); + free(client_random); return ret; } diff --git a/libfreerdp/core/freerdp.c b/libfreerdp/core/freerdp.c index 44015c4..a220b9b 100644 --- a/libfreerdp/core/freerdp.c +++ b/libfreerdp/core/freerdp.c @@ -697,10 +697,7 @@ freerdp* freerdp_new() */ void freerdp_free(freerdp* instance) { - if (instance) - { - free(instance); - } + free(instance); } FREERDP_API ULONG freerdp_get_transport_sent(rdpContext* context, BOOL resetCount) { diff --git a/libfreerdp/core/gateway/http.c b/libfreerdp/core/gateway/http.c index 4d25156..8a3e3aa 100644 --- a/libfreerdp/core/gateway/http.c +++ b/libfreerdp/core/gateway/http.c @@ -75,9 +75,6 @@ static BOOL strings_equals_nocase(void* obj1, void* obj2) static void string_free(void* obj1) { - if (!obj1) - return; - free(obj1); } @@ -412,13 +409,10 @@ wStream* http_request_write(HttpContext* context, HttpRequest* request) Stream_Rewind(s, 1); /* don't include null terminator in length */ Stream_Length(s) = Stream_GetPosition(s); return s; -out_free: - for (i = 0; i < 9; i++) - { - if (lines[i]) - free(lines[i]); - } +out_free: + for (i = 0; i < count; i++) + free(lines[i]); free(lines); return NULL; @@ -434,21 +428,13 @@ void http_request_free(HttpRequest* request) if (!request) return; - if (request->AuthParam) - free(request->AuthParam); - - if (request->AuthScheme) - free(request->AuthScheme); - - if (request->Authorization) - free(request->Authorization); - + free(request->AuthParam); + free(request->AuthScheme); + free(request->Authorization); free(request->Content); free(request->Method); free(request->URI); - free(request->TransferEncoding); - free(request); } @@ -827,11 +813,9 @@ void http_response_free(HttpResponse* response) if (!response) return; - for (i = 0; i < response->count; i++) - { - if (response->lines && response->lines[i]) + if (response->lines) + for (i = 0; i < response->count; i++) free(response->lines[i]); - } free(response->lines); free(response->ReasonPhrase); diff --git a/libfreerdp/core/gateway/tsg.c b/libfreerdp/core/gateway/tsg.c index 9a40eb8..6cc5948 100644 --- a/libfreerdp/core/gateway/tsg.c +++ b/libfreerdp/core/gateway/tsg.c @@ -972,9 +972,7 @@ out: { if (packet->tsgPacket.packetMsgResponse) { - if (packet->tsgPacket.packetMsgResponse->messagePacket.reauthMessage) - free(packet->tsgPacket.packetMsgResponse->messagePacket.reauthMessage); - + free(packet->tsgPacket.packetMsgResponse->messagePacket.reauthMessage); free(packet->tsgPacket.packetMsgResponse); } diff --git a/libfreerdp/core/license.c b/libfreerdp/core/license.c index e1fe0cc..05be43f 100644 --- a/libfreerdp/core/license.c +++ b/libfreerdp/core/license.c @@ -542,13 +542,12 @@ LICENSE_PRODUCT_INFO* license_new_product_info() void license_free_product_info(LICENSE_PRODUCT_INFO* productInfo) { - if (productInfo->pbCompanyName != NULL) + if (productInfo) + { free(productInfo->pbCompanyName); - - if (productInfo->pbProductId != NULL) free(productInfo->pbProductId); - - free(productInfo); + free(productInfo); + } } /** @@ -656,10 +655,11 @@ LICENSE_BLOB* license_new_binary_blob(UINT16 type) void license_free_binary_blob(LICENSE_BLOB* blob) { - if (blob->data != NULL) + if (blob) + { free(blob->data); - - free(blob); + free(blob); + } } /** diff --git a/libfreerdp/core/listener.c b/libfreerdp/core/listener.c index 41cb64d..8322106 100644 --- a/libfreerdp/core/listener.c +++ b/libfreerdp/core/listener.c @@ -359,8 +359,7 @@ static BOOL freerdp_listener_check_fds(freerdp_listener* instance) #endif WLog_DBG(TAG, "accept"); - if (client) - free(client); + free(client); return FALSE; } diff --git a/libfreerdp/core/message.c b/libfreerdp/core/message.c index e0bab40..90f2937 100644 --- a/libfreerdp/core/message.c +++ b/libfreerdp/core/message.c @@ -1336,8 +1336,7 @@ static int update_message_free_update_class(wMessage* msg, int type) break; case Update_SetBounds: - if (msg->wParam) - free(msg->wParam); + free(msg->wParam); break; case Update_Synchronize: @@ -1379,8 +1378,7 @@ static int update_message_free_update_class(wMessage* msg, int type) break; case Update_SuppressOutput: - if (msg->lParam) - free(msg->lParam); + free(msg->lParam); break; case Update_SurfaceCommand: @@ -1579,8 +1577,7 @@ static int update_message_free_primary_update_class(wMessage* msg, int type) case PrimaryUpdate_FastGlyph: { FAST_GLYPH_ORDER* wParam = (FAST_GLYPH_ORDER*) msg->wParam; - if (wParam->glyphData.aj) - free(wParam->glyphData.aj); + free(wParam->glyphData.aj); free(wParam); } break; @@ -2871,8 +2868,5 @@ rdpInputProxy* input_message_proxy_new(rdpInput* input) void input_message_proxy_free(rdpInputProxy* proxy) { - if (proxy) - { - free(proxy); - } + free(proxy); } diff --git a/libfreerdp/core/metrics.c b/libfreerdp/core/metrics.c index 708776f..bfcfd44 100644 --- a/libfreerdp/core/metrics.c +++ b/libfreerdp/core/metrics.c @@ -52,8 +52,5 @@ rdpMetrics* metrics_new(rdpContext* context) void metrics_free(rdpMetrics* metrics) { - if (!metrics) - return; - free(metrics); } diff --git a/libfreerdp/core/nego.c b/libfreerdp/core/nego.c index 26ea56b..60cded3 100644 --- a/libfreerdp/core/nego.c +++ b/libfreerdp/core/nego.c @@ -1139,9 +1139,12 @@ rdpNego* nego_new(rdpTransport* transport) void nego_free(rdpNego* nego) { - free(nego->RoutingToken); - free(nego->cookie); - free(nego); + if (nego) + { + free(nego->RoutingToken); + free(nego->cookie); + free(nego); + } } /** @@ -1268,7 +1271,7 @@ BOOL nego_set_cookie(rdpNego* nego, char* cookie) if (nego->cookie) { free(nego->cookie); - nego->cookie = 0; + nego->cookie = NULL; } if (!cookie) diff --git a/libfreerdp/core/nla.c b/libfreerdp/core/nla.c index 652f074..74473bc 100644 --- a/libfreerdp/core/nla.c +++ b/libfreerdp/core/nla.c @@ -163,8 +163,7 @@ int nla_client_init(rdpNla* nla) { if (strlen(settings->PasswordHash) == 32) { - if (identity->Password) - free(identity->Password); + free(identity->Password); identity->PasswordLength = ConvertToUnicode(CP_UTF8, 0, settings->PasswordHash, -1, &identity->Password, 0) - 1; diff --git a/libfreerdp/core/redirection.c b/libfreerdp/core/redirection.c index 2bcb192..2fdcff5 100644 --- a/libfreerdp/core/redirection.c +++ b/libfreerdp/core/redirection.c @@ -377,29 +377,14 @@ void redirection_free(rdpRedirection* redirection) { if (redirection) { - if (redirection->TsvUrl) - free(redirection->TsvUrl); - - if (redirection->Username) - free(redirection->Username); - - if (redirection->Domain) - free(redirection->Domain); - - if (redirection->TargetFQDN) - free(redirection->TargetFQDN); - - if (redirection->TargetNetBiosName) - free(redirection->TargetNetBiosName); - - if (redirection->TargetNetAddress) - free(redirection->TargetNetAddress); - - if (redirection->LoadBalanceInfo) - free(redirection->LoadBalanceInfo); - - if (redirection->Password) - free(redirection->Password); + free(redirection->TsvUrl); + free(redirection->Username); + free(redirection->Domain); + free(redirection->TargetFQDN); + free(redirection->TargetNetBiosName); + free(redirection->TargetNetAddress); + free(redirection->LoadBalanceInfo); + free(redirection->Password); if (redirection->TargetNetAddresses) { @@ -407,8 +392,7 @@ void redirection_free(rdpRedirection* redirection) for (i = 0; i < (int) redirection->TargetNetAddressesCount; i++) { - if (redirection->TargetNetAddresses[i]) - free(redirection->TargetNetAddresses[i]); + free(redirection->TargetNetAddresses[i]); } free(redirection->TargetNetAddresses); diff --git a/libfreerdp/core/update.c b/libfreerdp/core/update.c index d25f942..2d044d4 100644 --- a/libfreerdp/core/update.c +++ b/libfreerdp/core/update.c @@ -1990,8 +1990,7 @@ void update_free(rdpUpdate* update) free(update->primary->polyline.points); free(update->primary->polygon_sc.points); - if (update->primary->fast_glyph.glyphData.aj) - free(update->primary->fast_glyph.glyphData.aj); + free(update->primary->fast_glyph.glyphData.aj); free(update->primary); free(update->secondary); diff --git a/libfreerdp/crypto/crypto.c b/libfreerdp/crypto/crypto.c index 8ebb39a..3c54c2c 100644 --- a/libfreerdp/crypto/crypto.c +++ b/libfreerdp/crypto/crypto.c @@ -84,8 +84,7 @@ void crypto_rc4(CryptoRc4 rc4, UINT32 length, const BYTE* in_data, BYTE* out_dat void crypto_rc4_free(CryptoRc4 rc4) { - if (rc4) - free(rc4); + free(rc4); } CryptoDes3 crypto_des3_encrypt_init(const BYTE* key, const BYTE* ivec) @@ -438,8 +437,7 @@ FREERDP_API void crypto_cert_subject_alt_name_free(int count, int *lengths, { int i; - if (lengths) - free(lengths); + free(lengths); if (alt_name) { diff --git a/libfreerdp/crypto/tls.c b/libfreerdp/crypto/tls.c index a9bfedf..c5025ca 100644 --- a/libfreerdp/crypto/tls.c +++ b/libfreerdp/crypto/tls.c @@ -1206,8 +1206,7 @@ int tls_verify_certificate(rdpTls* tls, CryptoCert cert, char* hostname, int por } #ifndef _WIN32 - if (common_name) - free(common_name); + free(common_name); #endif if (alt_names) diff --git a/rdtk/librdtk/rdtk_button.c b/rdtk/librdtk/rdtk_button.c index ead1498..8899378 100644 --- a/rdtk/librdtk/rdtk_button.c +++ b/rdtk/librdtk/rdtk_button.c @@ -87,9 +87,6 @@ rdtkButton* rdtk_button_new(rdtkEngine* engine, rdtkNinePatch* ninePatch) void rdtk_button_free(rdtkButton* button) { - if (!button) - return; - free(button); } diff --git a/rdtk/librdtk/rdtk_font.c b/rdtk/librdtk/rdtk_font.c index 18cf75a..3f8014e 100644 --- a/rdtk/librdtk/rdtk_font.c +++ b/rdtk/librdtk/rdtk_font.c @@ -644,10 +644,8 @@ rdtkFont* rdtk_font_new(rdtkEngine* engine, const char* path, const char* file) return font; cleanup: - if (fontImageFile) - free (fontImageFile); - if (fontDescriptorFile) - free (fontDescriptorFile); + free(fontImageFile); + free(fontDescriptorFile); if (font) { if (font->image) @@ -710,9 +708,6 @@ rdtkFont* rdtk_embedded_font_new(rdtkEngine* engine, BYTE* imageData, int imageS void rdtk_font_free(rdtkFont* font) { - if (!font) - return; - free(font); } diff --git a/rdtk/librdtk/rdtk_label.c b/rdtk/librdtk/rdtk_label.c index a05cdcb..feb7c6b 100644 --- a/rdtk/librdtk/rdtk_label.c +++ b/rdtk/librdtk/rdtk_label.c @@ -72,9 +72,6 @@ rdtkLabel* rdtk_label_new(rdtkEngine* engine) void rdtk_label_free(rdtkLabel* label) { - if (!label) - return; - free(label); } diff --git a/rdtk/librdtk/rdtk_text_field.c b/rdtk/librdtk/rdtk_text_field.c index e5865ec..baa5fb1 100644 --- a/rdtk/librdtk/rdtk_text_field.c +++ b/rdtk/librdtk/rdtk_text_field.c @@ -87,9 +87,6 @@ rdtkTextField* rdtk_text_field_new(rdtkEngine* engine, rdtkNinePatch* ninePatch) void rdtk_text_field_free(rdtkTextField* textField) { - if (!textField) - return; - free(textField); } diff --git a/server/Windows/wf_interface.c b/server/Windows/wf_interface.c index 2a18c4a..b8ce818 100644 --- a/server/Windows/wf_interface.c +++ b/server/Windows/wf_interface.c @@ -202,10 +202,7 @@ wfServer* wfreerdp_server_new() void wfreerdp_server_free(wfServer* server) { - if (server) - { - free(server); - } + free(server); WSACleanup(); } diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index b0f825d..4399a72 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -252,14 +252,11 @@ void shadow_client_refresh_rect(rdpShadowClient* client, BYTE count, RECTANGLE_1 SHADOW_MSG_IN_REFRESH_OUTPUT* wParam; wMessagePipe* MsgPipe = client->subsystem->MsgPipe; - wParam = (SHADOW_MSG_IN_REFRESH_OUTPUT*) calloc(1, sizeof(SHADOW_MSG_IN_REFRESH_OUTPUT)); + if (!areas) + return; - if (!wParam || !areas) - { - if (wParam) - free (wParam); + if (!(wParam = (SHADOW_MSG_IN_REFRESH_OUTPUT*) calloc(1, sizeof(SHADOW_MSG_IN_REFRESH_OUTPUT)))) return; - } wParam->numRects = (UINT32) count; diff --git a/winpr/libwinpr/asn1/asn1.c b/winpr/libwinpr/asn1/asn1.c index 2c212a0..966934a 100644 --- a/winpr/libwinpr/asn1/asn1.c +++ b/winpr/libwinpr/asn1/asn1.c @@ -60,8 +60,7 @@ ASN1module_t ASN1_CreateModule(ASN1uint32_t nVersion, ASN1encodingrule_e eRule, void ASN1_CloseModule(ASN1module_t pModule) { - if (!pModule) - free(pModule); + free(pModule); } ASN1error_e ASN1_CreateEncoder(ASN1module_t pModule, ASN1encoding_t* ppEncoderInfo, diff --git a/winpr/libwinpr/comm/comm.c b/winpr/libwinpr/comm/comm.c index 5058be1..3376ee8 100644 --- a/winpr/libwinpr/comm/comm.c +++ b/winpr/libwinpr/comm/comm.c @@ -497,10 +497,8 @@ BOOL GetCommState(HANDLE hFile, LPDCB lpDCB) free(lpLocalDcb); return TRUE; - - error_handle: - if (lpLocalDcb) - free(lpLocalDcb); +error_handle: + free(lpLocalDcb); return FALSE; } @@ -1112,12 +1110,9 @@ BOOL DefineCommDevice(/* DWORD dwFlags,*/ LPCTSTR lpDeviceName, LPCTSTR lpTarget return TRUE; - error_handle: - if (storedDeviceName != NULL) - free(storedDeviceName); - - if (storedTargetPath != NULL) - free(storedTargetPath); +error_handle: + free(storedDeviceName); + free(storedTargetPath); LeaveCriticalSection(&_CommDevicesLock); return FALSE; diff --git a/winpr/libwinpr/crypto/cert.c b/winpr/libwinpr/crypto/cert.c index 1736636..b2df52b 100644 --- a/winpr/libwinpr/crypto/cert.c +++ b/winpr/libwinpr/crypto/cert.c @@ -194,10 +194,7 @@ BOOL CertCloseStore(HCERTSTORE hCertStore, DWORD dwFlags) certstore = (WINPR_CERTSTORE*) hCertStore; - if (certstore) - { - free(certstore); - } + free(certstore); return TRUE; } diff --git a/winpr/libwinpr/environment/environment.c b/winpr/libwinpr/environment/environment.c index 1720e57..d871726 100644 --- a/winpr/libwinpr/environment/environment.c +++ b/winpr/libwinpr/environment/environment.c @@ -295,8 +295,7 @@ DWORD ExpandEnvironmentStringsW(LPCWSTR lpSrc, LPWSTR lpDst, DWORD nSize) BOOL FreeEnvironmentStringsA(LPCH lpszEnvironmentBlock) { - if (lpszEnvironmentBlock) - free(lpszEnvironmentBlock); + free(lpszEnvironmentBlock); return TRUE; } @@ -424,8 +423,7 @@ LPCH MergeEnvironmentStrings(PCSTR original, PCSTR merge) if (!tmp) { - if (lpszEnvironmentBlock) - free(lpszEnvironmentBlock); + free(lpszEnvironmentBlock); free (mergeStrings); return NULL; } @@ -468,8 +466,7 @@ LPCH MergeEnvironmentStrings(PCSTR original, PCSTR merge) if (!tmp) { - if (lpszEnvironmentBlock) - free(lpszEnvironmentBlock); + free(lpszEnvironmentBlock); free (mergeStrings); return NULL; } @@ -584,9 +581,7 @@ BOOL SetEnvironmentVariableEBA(LPSTR* envBlock, LPCSTR lpName, LPCSTR lpValue) newEB = MergeEnvironmentStrings((LPCSTR) *envBlock, envstr); free(envstr); - - if (*envBlock) - free(*envBlock); + free(*envBlock); *envBlock = newEB; diff --git a/winpr/libwinpr/file/file.c b/winpr/libwinpr/file/file.c index 77d1bf4..05fb444 100644 --- a/winpr/libwinpr/file/file.c +++ b/winpr/libwinpr/file/file.c @@ -239,15 +239,9 @@ BOOL FileCloseHandle(HANDLE handle) { if (pNamedPipe->pfnUnrefNamedPipe) pNamedPipe->pfnUnrefNamedPipe(pNamedPipe); - if (pNamedPipe->lpFileName) - free((void*)pNamedPipe->lpFileName); - - if (pNamedPipe->lpFilePath) - free((void*)pNamedPipe->lpFilePath); - - if (pNamedPipe->name) - free((void*)pNamedPipe->name); - + free(pNamedPipe->lpFileName); + free(pNamedPipe->lpFilePath); + free(pNamedPipe->name); free(pNamedPipe); return TRUE; @@ -771,11 +765,8 @@ BOOL FindClose(HANDLE hFindFile) if (pFileSearch) { - if (pFileSearch->lpPath) - free(pFileSearch->lpPath); - - if (pFileSearch->lpPattern) - free(pFileSearch->lpPattern); + free(pFileSearch->lpPath); + free(pFileSearch->lpPattern); if (pFileSearch->pDir) closedir(pFileSearch->pDir); diff --git a/winpr/libwinpr/heap/heap.c b/winpr/libwinpr/heap/heap.c index a53b2ef..aaf3813 100644 --- a/winpr/libwinpr/heap/heap.c +++ b/winpr/libwinpr/heap/heap.c @@ -59,7 +59,7 @@ LPVOID HeapReAlloc(HANDLE hHeap, DWORD dwFlags, LPVOID lpMem, SIZE_T dwBytes) BOOL HeapFree(HANDLE hHeap, DWORD dwFlags, LPVOID lpMem) { free(lpMem); - return 1; + return TRUE; } #endif diff --git a/winpr/libwinpr/nt/nt.c b/winpr/libwinpr/nt/nt.c index 29b8be4..a3976f2 100644 --- a/winpr/libwinpr/nt/nt.c +++ b/winpr/libwinpr/nt/nt.c @@ -186,8 +186,7 @@ VOID _RtlFreeUnicodeString(PUNICODE_STRING UnicodeString) { if (UnicodeString) { - if (UnicodeString->Buffer) - free(UnicodeString->Buffer); + free(UnicodeString->Buffer); UnicodeString->Length = 0; UnicodeString->MaximumLength = 0; diff --git a/winpr/libwinpr/pipe/pipe.c b/winpr/libwinpr/pipe/pipe.c index 98ab3aa..702eb5f 100644 --- a/winpr/libwinpr/pipe/pipe.c +++ b/winpr/libwinpr/pipe/pipe.c @@ -217,14 +217,9 @@ BOOL NamedPipeCloseHandle(HANDLE handle) { if (pNamedPipe->pfnUnrefNamedPipe) pNamedPipe->pfnUnrefNamedPipe(pNamedPipe); - if (pNamedPipe->name) - free(pNamedPipe->name); - - if (pNamedPipe->lpFileName) - free((void*)pNamedPipe->lpFileName); - - if (pNamedPipe->lpFilePath) - free((void*)pNamedPipe->lpFilePath); + free(pNamedPipe->name); + free(pNamedPipe->lpFileName); + free(pNamedPipe->lpFilePath); if (pNamedPipe->serverfd != -1) close(pNamedPipe->serverfd); @@ -451,12 +446,8 @@ BOOL CreatePipe(PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY_ATTRIBUTES lpP if (!pReadPipe || !pWritePipe) { - if (pReadPipe) - free(pReadPipe); - - if (pWritePipe) - free(pWritePipe); - + free(pReadPipe); + free(pWritePipe); return FALSE; } diff --git a/winpr/libwinpr/sspi/CredSSP/credssp.c b/winpr/libwinpr/sspi/CredSSP/credssp.c index 962ad08..f6d5e25 100644 --- a/winpr/libwinpr/sspi/CredSSP/credssp.c +++ b/winpr/libwinpr/sspi/CredSSP/credssp.c @@ -78,9 +78,6 @@ CREDSSP_CONTEXT* credssp_ContextNew() void credssp_ContextFree(CREDSSP_CONTEXT* context) { - if (!context) - return; - free(context); } diff --git a/winpr/libwinpr/sspi/NTLM/ntlm.c b/winpr/libwinpr/sspi/NTLM/ntlm.c index 2fd30d4..cdd9fdc 100644 --- a/winpr/libwinpr/sspi/NTLM/ntlm.c +++ b/winpr/libwinpr/sspi/NTLM/ntlm.c @@ -141,8 +141,7 @@ int ntlm_SetContextTargetName(NTLM_CONTEXT* context, char* TargetName) if (status <= 0) { - if (TargetName) - free(TargetName); + free(TargetName); return -1; } @@ -603,8 +602,7 @@ SECURITY_STATUS SEC_ENTRY ntlm_InitializeSecurityContextA(PCredHandle phCredenti status = ntlm_InitializeSecurityContextW(phCredential, phContext, pszTargetNameW, fContextReq, Reserved1, TargetDataRep, pInput, Reserved2, phNewContext, pOutput, pfContextAttr, ptsExpiry); - if (pszTargetNameW) - free(pszTargetNameW); + free(pszTargetNameW); return status; } diff --git a/winpr/libwinpr/sspi/NTLM/ntlm_av_pairs.c b/winpr/libwinpr/sspi/NTLM/ntlm_av_pairs.c index 003e50e..08212f1 100644 --- a/winpr/libwinpr/sspi/NTLM/ntlm_av_pairs.c +++ b/winpr/libwinpr/sspi/NTLM/ntlm_av_pairs.c @@ -198,8 +198,7 @@ void ntlm_free_unicode_string(PUNICODE_STRING string) { if (string->Length > 0) { - if (string->Buffer) - free(string->Buffer); + free(string->Buffer); string->Buffer = NULL; string->Length = 0; diff --git a/winpr/libwinpr/sspi/Negotiate/negotiate.c b/winpr/libwinpr/sspi/Negotiate/negotiate.c index f939010..6c8404e 100644 --- a/winpr/libwinpr/sspi/Negotiate/negotiate.c +++ b/winpr/libwinpr/sspi/Negotiate/negotiate.c @@ -55,9 +55,6 @@ NEGOTIATE_CONTEXT* negotiate_ContextNew() void negotiate_ContextFree(NEGOTIATE_CONTEXT* context) { - if (!context) - return; - free(context); } diff --git a/winpr/libwinpr/sspi/Schannel/schannel.c b/winpr/libwinpr/sspi/Schannel/schannel.c index 3410cc4..352a057 100644 --- a/winpr/libwinpr/sspi/Schannel/schannel.c +++ b/winpr/libwinpr/sspi/Schannel/schannel.c @@ -72,9 +72,6 @@ SCHANNEL_CREDENTIALS* schannel_CredentialsNew() void schannel_CredentialsFree(SCHANNEL_CREDENTIALS* credentials) { - if (!credentials) - return; - free(credentials); } @@ -251,8 +248,7 @@ SECURITY_STATUS SEC_ENTRY schannel_InitializeSecurityContextA(PCredHandle phCred status = schannel_InitializeSecurityContextW(phCredential, phContext, pszTargetNameW, fContextReq, Reserved1, TargetDataRep, pInput, Reserved2, phNewContext, pOutput, pfContextAttr, ptsExpiry); - if (pszTargetNameW != NULL) - free(pszTargetNameW); + free(pszTargetNameW); return status; } diff --git a/winpr/libwinpr/sspi/sspi_winpr.c b/winpr/libwinpr/sspi/sspi_winpr.c index e085aed..70af026 100644 --- a/winpr/libwinpr/sspi/sspi_winpr.c +++ b/winpr/libwinpr/sspi/sspi_winpr.c @@ -253,6 +253,9 @@ void* sspi_SecBufferAlloc(PSecBuffer SecBuffer, ULONG size) void sspi_SecBufferFree(PSecBuffer SecBuffer) { + if (!SecBuffer) + return; + free(SecBuffer->pvBuffer); SecBuffer->pvBuffer = NULL; SecBuffer->cbBuffer = 0; @@ -312,9 +315,6 @@ void sspi_SecureHandleSetUpperPointer(SecHandle* handle, void* pointer) void sspi_SecureHandleFree(SecHandle* handle) { - if (!handle) - return; - free(handle); } @@ -324,8 +324,7 @@ int sspi_SetAuthIdentity(SEC_WINNT_AUTH_IDENTITY* identity, const char* user, co identity->Flags = SEC_WINNT_AUTH_IDENTITY_UNICODE; - if (identity->User) - free(identity->User); + free(identity->User); identity->User = (UINT16*) NULL; identity->UserLength = 0; @@ -340,8 +339,7 @@ int sspi_SetAuthIdentity(SEC_WINNT_AUTH_IDENTITY* identity, const char* user, co identity->UserLength = (ULONG) (status - 1); } - if (identity->Domain) - free(identity->Domain); + free(identity->Domain); identity->Domain = (UINT16*) NULL; identity->DomainLength = 0; @@ -356,8 +354,7 @@ int sspi_SetAuthIdentity(SEC_WINNT_AUTH_IDENTITY* identity, const char* user, co identity->DomainLength = (ULONG) (status - 1); } - if (identity->Password) - free(identity->Password); + free(identity->Password); identity->Password = NULL; identity->PasswordLength = 0; @@ -653,11 +650,8 @@ void FreeContextBuffer_EnumerateSecurityPackages(void* contextBuffer) for (index = 0; index < (int) cPackages; index++) { - if (pPackageInfo[index].Name) - free(pPackageInfo[index].Name); - - if (pPackageInfo[index].Comment) - free(pPackageInfo[index].Comment); + free(pPackageInfo[index].Name); + free(pPackageInfo[index].Comment); } free(pPackageInfo); @@ -751,12 +745,11 @@ void FreeContextBuffer_QuerySecurityPackageInfo(void* contextBuffer) { SecPkgInfo* pPackageInfo = (SecPkgInfo*) contextBuffer; - if (pPackageInfo->Name) - free(pPackageInfo->Name); - - if (pPackageInfo->Comment) - free(pPackageInfo->Comment); + if (!pPackageInfo) + return; + free(pPackageInfo->Name); + free(pPackageInfo->Comment); free(pPackageInfo); } diff --git a/winpr/libwinpr/sspicli/sspicli.c b/winpr/libwinpr/sspicli/sspicli.c index b5d1909..1ea1c55 100644 --- a/winpr/libwinpr/sspicli/sspicli.c +++ b/winpr/libwinpr/sspicli/sspicli.c @@ -100,15 +100,11 @@ static int LogonUserGetFd(HANDLE handle) BOOL LogonUserCloseHandle(HANDLE handle) { WINPR_ACCESS_TOKEN *token = (WINPR_ACCESS_TOKEN *) handle; - if (!LogonUserIsHandled(handle)) + if (!handle || !LogonUserIsHandled(handle)) return FALSE; - if (token->Username) - free(token->Username); - - if (token->Domain) - free(token->Domain); - + free(token->Username); + free(token->Domain); free(token); return TRUE; diff --git a/winpr/libwinpr/synch/test/TestSynchWaitableTimerAPC.c b/winpr/libwinpr/synch/test/TestSynchWaitableTimerAPC.c index a7120d1..ca6b2ce 100644 --- a/winpr/libwinpr/synch/test/TestSynchWaitableTimerAPC.c +++ b/winpr/libwinpr/synch/test/TestSynchWaitableTimerAPC.c @@ -80,8 +80,7 @@ cleanup: CloseHandle(hTimer); if (g_Event) CloseHandle(g_Event); - if (apcData) - free(apcData); + free(apcData); return status; } diff --git a/winpr/libwinpr/thread/argv.c b/winpr/libwinpr/thread/argv.c index 5d0323e..2bd7dc4 100644 --- a/winpr/libwinpr/thread/argv.c +++ b/winpr/libwinpr/thread/argv.c @@ -300,11 +300,8 @@ LPSTR* CommandLineToArgvA(LPCSTR lpCmdLine, int* pNumArgs) currentIndex = (p - lpCmdLine); } - if (lpEscapedCmdLine) - free(lpEscapedCmdLine); - - if (lpEscapedChars) - free(lpEscapedChars); + free(lpEscapedCmdLine); + free(lpEscapedChars); *pNumArgs = numArgs; return pArgs; diff --git a/winpr/libwinpr/thread/process.c b/winpr/libwinpr/thread/process.c index dac0e16..fb1729f 100644 --- a/winpr/libwinpr/thread/process.c +++ b/winpr/libwinpr/thread/process.c @@ -324,10 +324,7 @@ BOOL _CreateProcessExA(HANDLE hToken, DWORD dwLogonFlags, ret = TRUE; finish: - if (filename) - { - free(filename); - } + free(filename); if (pArgs) { diff --git a/winpr/libwinpr/thread/thread.c b/winpr/libwinpr/thread/thread.c index c5ac299..c465695 100644 --- a/winpr/libwinpr/thread/thread.c +++ b/winpr/libwinpr/thread/thread.c @@ -700,8 +700,7 @@ VOID DumpThreadHandles(void) } } - if (keys) - free(keys); + free(keys); ListDictionary_Unlock(thread_list); } diff --git a/winpr/libwinpr/utils/collections/BitStream.c b/winpr/libwinpr/utils/collections/BitStream.c index 02e336a..26e739c 100644 --- a/winpr/libwinpr/utils/collections/BitStream.c +++ b/winpr/libwinpr/utils/collections/BitStream.c @@ -343,17 +343,10 @@ wBitStream* BitStream_New() wBitStream* bs = NULL; bs = (wBitStream*) calloc(1, sizeof(wBitStream)); - if (bs) - { - } - return bs; } void BitStream_Free(wBitStream* bs) { - if (bs) - { - free(bs); - } + free(bs); } diff --git a/winpr/libwinpr/utils/collections/PubSub.c b/winpr/libwinpr/utils/collections/PubSub.c index e2f2b93..54a5a28 100644 --- a/winpr/libwinpr/utils/collections/PubSub.c +++ b/winpr/libwinpr/utils/collections/PubSub.c @@ -237,9 +237,7 @@ void PubSub_Free(wPubSub* pubSub) if (pubSub->synchronized) DeleteCriticalSection(&pubSub->lock); - if (pubSub->events) - free(pubSub->events); - + free(pubSub->events); free(pubSub); } } diff --git a/winpr/libwinpr/utils/collections/Reference.c b/winpr/libwinpr/utils/collections/Reference.c index 3732e00..10a5542 100644 --- a/winpr/libwinpr/utils/collections/Reference.c +++ b/winpr/libwinpr/utils/collections/Reference.c @@ -75,8 +75,7 @@ wReference* ReferenceTable_GetFreeEntry(wReferenceTable* referenceTable) if (!referenceTable->size) { - if (referenceTable->array) - free(referenceTable->array); + free(referenceTable->array); referenceTable->array = NULL; return NULL; } diff --git a/winpr/libwinpr/utils/debug.c b/winpr/libwinpr/utils/debug.c index 447c18f..9b038ab 100644 --- a/winpr/libwinpr/utils/debug.c +++ b/winpr/libwinpr/utils/debug.c @@ -199,22 +199,19 @@ void winpr_backtrace_free(void *buffer) #if defined(HAVE_EXECINFO_H) t_execinfo *data = (t_execinfo *)buffer; - if (data->buffer) - free(data->buffer); + free(data->buffer); free(data); #elif defined(ANDROID) t_corkscrew_data *data = (t_corkscrew_data *)buffer; - if (data->buffer) - free(data->buffer); + free(data->buffer); free(data); #elif defined(_WIN32) || defined(_WIN64) { t_win_stack *data = (t_win_stack*)buffer; - if (data->stack) - free(data->stack); + free(data->stack); free(data); } #else diff --git a/winpr/libwinpr/utils/lodepng/lodepng.c b/winpr/libwinpr/utils/lodepng/lodepng.c index 3f6a730..ed4bb14 100644 --- a/winpr/libwinpr/utils/lodepng/lodepng.c +++ b/winpr/libwinpr/utils/lodepng/lodepng.c @@ -2609,7 +2609,7 @@ static int lodepng_color_mode_equal(const LodePNGColorMode* a, const LodePNGColo void lodepng_palette_clear(LodePNGColorMode* info) { - if(info->palette) free(info->palette); + free(info->palette); info->palette = 0; info->palettesize = 0; } @@ -4121,7 +4121,7 @@ static unsigned postProcessScanlines(unsigned char* out, unsigned char* in, static unsigned readChunk_PLTE(LodePNGColorMode* color, const unsigned char* data, size_t chunkLength) { unsigned pos = 0, i; - if(color->palette) free(color->palette); + free(color->palette); color->palettesize = chunkLength / 3; color->palette = (unsigned char*)malloc(4 * color->palettesize); if(!color->palette && color->palettesize) diff --git a/winpr/libwinpr/utils/stream.c b/winpr/libwinpr/utils/stream.c index df2f526..b0d864b 100644 --- a/winpr/libwinpr/utils/stream.c +++ b/winpr/libwinpr/utils/stream.c @@ -102,10 +102,7 @@ void Stream_Free(wStream* s, BOOL bFreeBuffer) if (s) { if (bFreeBuffer) - { - if (s->buffer) - free(s->buffer); - } + free(s->buffer); free(s); } diff --git a/winpr/libwinpr/utils/test/TestImage.c b/winpr/libwinpr/utils/test/TestImage.c index 8bd66b5..fab2c08 100644 --- a/winpr/libwinpr/utils/test/TestImage.c +++ b/winpr/libwinpr/utils/test/TestImage.c @@ -66,10 +66,8 @@ static int compare(const char *src, const char *dst) cmp = memcmp(a, b, asize); cleanup: - if (a) - free(a); - if (b) - free(b); + free(a); + free(b); return cmp; } @@ -201,8 +199,8 @@ cleanup: winpr_image_free(image3, TRUE); if (image4) winpr_image_free(image4, TRUE); - if (buffer) - free(buffer); + + free(buffer); return ret; } diff --git a/winpr/libwinpr/utils/wlog/BinaryAppender.c b/winpr/libwinpr/utils/wlog/BinaryAppender.c index e37a3db..15fc290 100644 --- a/winpr/libwinpr/utils/wlog/BinaryAppender.c +++ b/winpr/libwinpr/utils/wlog/BinaryAppender.c @@ -218,15 +218,9 @@ void WLog_BinaryAppender_Free(wLog* log, wLogBinaryAppender* appender) { if (appender) { - if (appender->FileName) - free(appender->FileName); - - if (appender->FilePath) - free(appender->FilePath); - - if (appender->FullFileName) - free(appender->FullFileName); - + free(appender->FileName); + free(appender->FilePath); + free(appender->FullFileName); free(appender); } } diff --git a/winpr/libwinpr/utils/wlog/CallbackAppender.c b/winpr/libwinpr/utils/wlog/CallbackAppender.c index 82ff5a3e..b6d3d70 100644 --- a/winpr/libwinpr/utils/wlog/CallbackAppender.c +++ b/winpr/libwinpr/utils/wlog/CallbackAppender.c @@ -156,8 +156,5 @@ wLogCallbackAppender* WLog_CallbackAppender_New(wLog* log) void WLog_CallbackAppender_Free(wLog* log, wLogCallbackAppender* appender) { - if (appender) - { - free(appender); - } + free(appender); } diff --git a/winpr/libwinpr/utils/wlog/FileAppender.c b/winpr/libwinpr/utils/wlog/FileAppender.c index bdd41a5..8c756a7 100644 --- a/winpr/libwinpr/utils/wlog/FileAppender.c +++ b/winpr/libwinpr/utils/wlog/FileAppender.c @@ -220,15 +220,9 @@ void WLog_FileAppender_Free(wLog* log, wLogFileAppender* appender) { if (appender) { - if (appender->FileName) - free(appender->FileName); - - if (appender->FilePath) - free(appender->FilePath); - - if (appender->FullFileName) - free(appender->FullFileName); - + free(appender->FileName); + free(appender->FilePath); + free(appender->FullFileName); free(appender); } } diff --git a/winpr/libwinpr/utils/wlog/Layout.c b/winpr/libwinpr/utils/wlog/Layout.c index 3d7e3bc..8183c16 100644 --- a/winpr/libwinpr/utils/wlog/Layout.c +++ b/winpr/libwinpr/utils/wlog/Layout.c @@ -340,11 +340,8 @@ wLogLayout* WLog_GetLogLayout(wLog* log) void WLog_Layout_SetPrefixFormat(wLog* log, wLogLayout* layout, const char* format) { - if (layout->FormatString) - { - free(layout->FormatString); - layout->FormatString = NULL; - } + free(layout->FormatString); + layout->FormatString = NULL; if (format) layout->FormatString = _strdup(format); diff --git a/winpr/libwinpr/utils/wlog/wlog.c b/winpr/libwinpr/utils/wlog/wlog.c index cce90d6..7cf7fde 100644 --- a/winpr/libwinpr/utils/wlog/wlog.c +++ b/winpr/libwinpr/utils/wlog/wlog.c @@ -85,8 +85,7 @@ static void log_recursion(const char* file, const char* fkt, int line) #endif - if (msg) - free(msg); + free(msg); winpr_backtrace_free(bt); } diff --git a/winpr/libwinpr/wnd/wnd.c b/winpr/libwinpr/wnd/wnd.c index 06e5dfa..f45a88a 100644 --- a/winpr/libwinpr/wnd/wnd.c +++ b/winpr/libwinpr/wnd/wnd.c @@ -153,8 +153,7 @@ BOOL WINAPI DestroyWindow(HWND hWnd) free(pWnd->lpClassName); - if (pWnd->lpWindowName) - free(pWnd->lpWindowName); + free(pWnd->lpWindowName); free(pWnd); diff --git a/winpr/tools/makecert/makecert.c b/winpr/tools/makecert/makecert.c index 1070841..17f56dc 100644 --- a/winpr/tools/makecert/makecert.c +++ b/winpr/tools/makecert/makecert.c @@ -732,8 +732,7 @@ int makecert_context_output_certificate_file(MAKECERT_CONTEXT* context, char* pa if (status < 0) { - if (x509_str) - free(x509_str); + free(x509_str); free(filename); free(fullpath); fclose (fp); -- 2.7.4