picoproj: silence a -Wshorten-64-to-32 warning from clang
[libam7xxx.git] / examples / picoproj.c
index 045f386..b5ce593 100644 (file)
@@ -68,13 +68,13 @@ int main(int argc, char *argv[])
        am7xxx_device *dev;
        int log_level = AM7XXX_LOG_INFO;
        int device_index = 0;
        am7xxx_device *dev;
        int log_level = AM7XXX_LOG_INFO;
        int device_index = 0;
-       am7xxx_power_mode power_mode = AM7XXX_POWER_LOW;
-       am7xxx_zoom_mode zoom = AM7XXX_ZOOM_ORIGINAL;
+       int power_mode = AM7XXX_POWER_LOW;
+       int zoom = AM7XXX_ZOOM_ORIGINAL;
        int format = AM7XXX_IMAGE_FORMAT_JPEG;
        int width = 800;
        int height = 480;
        unsigned char *image;
        int format = AM7XXX_IMAGE_FORMAT_JPEG;
        int width = 800;
        int height = 480;
        unsigned char *image;
-       unsigned int size;
+       off_t size;
        am7xxx_device_info device_info;
 
        while ((opt = getopt(argc, argv, "d:f:F:l:p:z:W:H:h")) != -1) {
        am7xxx_device_info device_info;
 
        while ((opt = getopt(argc, argv, "d:f:F:l:p:z:W:H:h")) != -1) {
@@ -160,7 +160,6 @@ int main(int argc, char *argv[])
                case 'h':
                        usage(argv[0]);
                        exit(EXIT_SUCCESS);
                case 'h':
                        usage(argv[0]);
                        exit(EXIT_SUCCESS);
-                       break;
                default: /* '?' */
                        usage(argv[0]);
                        exit(EXIT_FAILURE);
                default: /* '?' */
                        usage(argv[0]);
                        exit(EXIT_FAILURE);
@@ -168,7 +167,8 @@ int main(int argc, char *argv[])
        }
 
        if (filename[0] == '\0') {
        }
 
        if (filename[0] == '\0') {
-               fprintf(stderr, "An image file MUST be specified.\n");
+               fprintf(stderr, "An image file MUST be specified with the -f option.\n\n");
+               usage(argv[0]);
                exit_code = EXIT_FAILURE;
                goto out;
        }
                exit_code = EXIT_FAILURE;
                goto out;
        }
@@ -221,7 +221,6 @@ int main(int argc, char *argv[])
                goto cleanup;
        }
 
                goto cleanup;
        }
 
-
        ret = am7xxx_close_device(dev);
        if (ret < 0) {
                perror("am7xxx_close_device");
        ret = am7xxx_close_device(dev);
        if (ret < 0) {
                perror("am7xxx_close_device");
@@ -265,12 +264,13 @@ int main(int argc, char *argv[])
                goto cleanup;
        }
 
                goto cleanup;
        }
 
-
        if ((unsigned int)width > device_info.native_width ||
            (unsigned int)height > device_info.native_height)
        if ((unsigned int)width > device_info.native_width ||
            (unsigned int)height > device_info.native_height)
-               fprintf(stderr, "WARNING: image not fitting the native resolution, it may be displayed wrongly!\n");
+               fprintf(stderr,
+                       "WARNING: image is %dx%d, not fitting the native resolution, it may be displayed wrongly!\n",
+                       width, height);
 
 
-       ret = am7xxx_send_image(dev, format, width, height, image, size);
+       ret = am7xxx_send_image(dev, format, width, height, image, (unsigned int)size);
        if (ret < 0) {
                perror("am7xxx_send_image");
                exit_code = EXIT_FAILURE;
        if (ret < 0) {
                perror("am7xxx_send_image");
                exit_code = EXIT_FAILURE;