while ((opt = getopt(argc, argv, "f:F:l:p:W:H:h")) != -1) {
switch (opt) {
case 'f':
+ if (filename[0] != '\0')
+ fprintf(stderr, "Warning: image file already specified\n");
strncpy(filename, optarg, FILENAME_MAX);
break;
case 'F':
}
size = st.st_size;
- image = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, image_fd, 0);
+ image = mmap(NULL, st.st_size, PROT_READ, MAP_PRIVATE, image_fd, 0);
if (image == NULL) {
perror("mmap");
exit_code = EXIT_FAILURE;
goto cleanup;
}
+ 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");
+
ret = am7xxx_send_image(dev, format, width, height, image, size);
if (ret < 0) {
perror("am7xxx_send_image");