diff options
author | Marcus Meissner <marcus@jet.franken.de> | 2014-01-06 13:09:45 +0000 |
---|---|---|
committer | Marcus Meissner <marcus@jet.franken.de> | 2014-01-06 13:09:45 +0000 |
commit | 8287d3639aac78758383d13816a3f488f271fe70 (patch) | |
tree | cb4bd574596dcff8de1254bffd5e59d538357786 | |
parent | fd5b3fea52e8f27f28db5fd998b63ca165127c92 (diff) | |
download | libgphoto2-8287d3639aac78758383d13816a3f488f271fe70.tar.gz |
cleanups of freeing raw (Coverity)
git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@14657 67ed7778-7388-44ab-90cf-0a291f65f57c
-rw-r--r-- | camlibs/minolta/dimagev/delete.c | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/camlibs/minolta/dimagev/delete.c b/camlibs/minolta/dimagev/delete.c index e9b5c2b98..43b7b130b 100644 --- a/camlibs/minolta/dimagev/delete.c +++ b/camlibs/minolta/dimagev/delete.c @@ -29,7 +29,8 @@ int dimagev_delete_picture(dimagev_t *dimagev, int file_number) { dimagev_packet *p, *raw; - unsigned char char_buffer=0, command_buffer[3]; + unsigned char command_buffer[3]; + char char_buffer = 0; if ( dimagev == NULL ) { GP_DEBUG( "dimagev_delete_picture::unable to use NULL dimagev_t"); @@ -108,35 +109,30 @@ int dimagev_delete_picture(dimagev_t *dimagev, int file_number) { free(raw); return GP_ERROR_NO_MEMORY; } + free(raw); char_buffer=DIMAGEV_EOT; if ( gp_port_write(dimagev->dev, &char_buffer, 1) < GP_OK ) { GP_DEBUG( "dimagev_delete_picture::unable to send ACK"); - free(raw); return GP_ERROR_IO; } if ( gp_port_read(dimagev->dev, &char_buffer, 1) < GP_OK ) { GP_DEBUG( "dimagev_delete_picture::no response from camera"); - free(raw); return GP_ERROR_IO; } switch ( char_buffer ) { case DIMAGEV_ACK: - free(raw); break; case DIMAGEV_NAK: GP_DEBUG( "dimagev_delete_picture::camera did not acknowledge transmission"); - free(raw); return GP_ERROR_IO; case DIMAGEV_CAN: GP_DEBUG( "dimagev_delete_picture::camera cancels transmission"); - free(raw); return GP_ERROR_IO; default: GP_DEBUG( "dimagev_delete_picture::camera responded with unknown value %x", char_buffer); - free(raw); return GP_ERROR_IO; } @@ -145,7 +141,8 @@ int dimagev_delete_picture(dimagev_t *dimagev, int file_number) { int dimagev_delete_all(dimagev_t *dimagev) { dimagev_packet *p, *raw; - unsigned char char_buffer, command_buffer[3]; + unsigned char command_buffer[3]; + char char_buffer; if ( dimagev == NULL ) { GP_DEBUG( "dimagev_delete_all::unable to use NULL dimagev_t"); @@ -222,17 +219,16 @@ int dimagev_delete_all(dimagev_t *dimagev) { free(raw); return GP_ERROR; } + free(raw); char_buffer=DIMAGEV_EOT; if ( gp_port_write(dimagev->dev, &char_buffer, 1) < GP_OK ) { GP_DEBUG( "dimagev_delete_all::unable to send ACK"); - free(raw); return GP_ERROR_IO; } if ( gp_port_read(dimagev->dev, &char_buffer, 1) < GP_OK ) { GP_DEBUG( "dimagev_delete_all::no response from camera"); - free(raw); return GP_ERROR_IO; } @@ -241,15 +237,12 @@ int dimagev_delete_all(dimagev_t *dimagev) { break; case DIMAGEV_NAK: GP_DEBUG( "dimagev_delete_all::camera did not acknowledge transmission"); - free(raw); return GP_ERROR_IO; case DIMAGEV_CAN: GP_DEBUG( "dimagev_delete_all::camera cancels transmission"); - free(raw); return GP_ERROR_IO; default: GP_DEBUG( "dimagev_delete_all::camera responded with unknown value %x", char_buffer); - free(raw); return GP_ERROR_IO; } |