From 5bbd164d9bb26d4aa94341f2b493cd647854ea42 Mon Sep 17 00:00:00 2001 From: Lutz Mueller Date: Tue, 28 Aug 2001 05:41:27 +0000 Subject: [PATCH] =?UTF-8?q?2001-08-29=20=20Lutz=20M=EF=BF=BDller=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Another patch from Ilya Konstantinov : * libgphoto2/camera.c (gp_camera_new): Correctly initialize the speed to 0 git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@2106 67ed7778-7388-44ab-90cf-0a291f65f57c --- ChangeLog | 7 +++++++ libgphoto2/camera.c | 24 ++++++++++++++++++------ 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index c8f9fe061..14e67d251 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2001-08-29 Lutz Müller + + Another patch from Ilya Konstantinov : + + * libgphoto2/camera.c (gp_camera_new): Correctly initialize the speed + to 0 + 2001-08-28 Lutz Müller * camlibs/canon/psa50.c: diff --git a/libgphoto2/camera.c b/libgphoto2/camera.c index 18db57c73..473a766fd 100644 --- a/libgphoto2/camera.c +++ b/libgphoto2/camera.c @@ -61,20 +61,32 @@ gp_camera_new (Camera **camera) return (GP_ERROR_NO_MEMORY); /* Initialize the members */ - (*camera)->port = (CameraPortInfo*)malloc(sizeof(CameraPortInfo)); - if (!(*camera)->port) + (*camera)->port = malloc (sizeof(CameraPortInfo)); + if (!(*camera)->port) { + free (*camera); return (GP_ERROR_NO_MEMORY); + } (*camera)->port->type = GP_PORT_NONE; strcpy ((*camera)->port->path, ""); - (*camera)->abilities = (CameraAbilities*)malloc(sizeof(CameraAbilities)); - (*camera)->functions = (CameraFunctions*)malloc(sizeof(CameraFunctions)); + (*camera)->port->speed = 0; + (*camera)->abilities = malloc(sizeof(CameraAbilities)); + if (!(*camera)->abilities) { + free ((*camera)->port); + free (*camera); + return (GP_ERROR_NO_MEMORY); + } + (*camera)->functions = malloc(sizeof(CameraFunctions)); + if (!(*camera)->functions) { + free ((*camera)->port); + free ((*camera)->abilities); + free (*camera); + return (GP_ERROR_NO_MEMORY); + } (*camera)->library_handle = NULL; (*camera)->camlib_data = NULL; (*camera)->frontend_data = NULL; (*camera)->session = glob_session_camera++; (*camera)->ref_count = 1; - if (!(*camera)->abilities || !(*camera)->functions) - return (GP_ERROR_NO_MEMORY); /* Initialize function pointers to NULL.*/ memset((*camera)->functions, 0, sizeof (CameraFunctions));