projects
/
kinect-audio-setup.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
kinect_upload_fw: fix issues shown by valgrind --leak-check=full --show-reachable=yes
[kinect-audio-setup.git]
/
kinect_upload_fw
/
kinect_upload_fw.c
diff --git
a/kinect_upload_fw/kinect_upload_fw.c
b/kinect_upload_fw/kinect_upload_fw.c
index
80d435f
..
5cf1abb
100644
(file)
--- a/
kinect_upload_fw/kinect_upload_fw.c
+++ b/
kinect_upload_fw/kinect_upload_fw.c
@@
-124,6
+124,7
@@
static int get_reply(void) {
int main(int argc, char** argv) {
char default_filename[] = "firmware.bin";
char* filename = default_filename;
int main(int argc, char** argv) {
char default_filename[] = "firmware.bin";
char* filename = default_filename;
+ int res = 0;
if (argc == 2) {
filename = argv[1];
if (argc == 2) {
filename = argv[1];
@@
-141,7
+142,8
@@
int main(int argc, char** argv) {
dev = libusb_open_device_with_vid_pid(NULL, 0x045e, 0x02ad);
if (dev == NULL) {
fprintf(stderr, "Couldn't open device.\n");
dev = libusb_open_device_with_vid_pid(NULL, 0x045e, 0x02ad);
if (dev == NULL) {
fprintf(stderr, "Couldn't open device.\n");
- return 1;
+ res = -ENODEV;
+ goto fail_libusb_open;
}
libusb_set_configuration(dev, 1);
}
libusb_set_configuration(dev, 1);
@@
-160,7
+162,6
@@
int main(int argc, char** argv) {
LOG("About to send: ");
dump_bl_cmd(cmd);
LOG("About to send: ");
dump_bl_cmd(cmd);
- int res;
int transferred;
res = libusb_bulk_transfer(dev, 1, (unsigned char*)&cmd, sizeof(cmd), &transferred, 0);
int transferred;
res = libusb_bulk_transfer(dev, 1, (unsigned char*)&cmd, sizeof(cmd), &transferred, 0);
@@
-225,6
+226,8
@@
int main(int argc, char** argv) {
cleanup:
libusb_close(dev);
cleanup:
libusb_close(dev);
+fail_libusb_open:
libusb_exit(NULL);
libusb_exit(NULL);
- return 0;
+ fclose(fw);
+ return res;
}
}