AttachedPictureFrame *frame = (AttachedPictureFrame *)(*it);
TagLib::ByteVector data = frame->picture();
int fd = open(argv[2], O_CREAT | O_WRONLY);
+ if (fd < 0) {
+ perror("open");
+ return 2;
+ }
ssize_t size = data.size();
ssize_t status = write(fd, data.data(), size);
if (status < 0) {
perror("write");
- return 2;
+ return 3;
}
if (status != size) {
fprintf(stderr, "wrote only %d bytes out of %d\n", status, size);
- return 3;
+ return 4;
}
if (close(fd) < 0) {
perror("close");
+ return 5;
}
}