stay_open: doesn't keep up with updated args file?

Started by alexs77, December 12, 2010, 02:44:50 PM

Previous topic - Next topic

alexs77

Hello once again...  ;)

Have a look at this, please:

[...]
{ready}
======== Img:0000112 /Users/Shared/Pictures/Photos/Cédric/Zu Hause — Winterthur/[2007-06-11--11.31.21] (cimg2849) Cédric, liegt, Decke, Zu Hause, Winterthur,.jpg
Error: File not found - Img:0000112 /Users/Shared/Pictures/Photos/Cédric/Zu Hause — Winterthur/[2007-06-11--11.31.21] (cimg2849) Cédric, liegt, Decke, Zu Hause, Winterthur,.jpg
======== /Users/Shared/Pictures/Photos/Cédric/Zu Hause — Winterthur/[2007-06-11--11.31.21] (cimg2849) Cédric, liegt, Decke, Zu Hause, Winterthur,.jpg
    1 image files updated
    1 files weren't updated due to errors
{ready}
[...]


Corresponds to the following args file input:

[...]
-overwrite_original_in_place
-P
-v0
-codedcharacterset=UTF8
-UserComment=Cédric, liegt, Decke, Zu Hause, Winterthur
-Comment=Cédric, liegt, Decke, Zu Hause, Winterthur
-iptc:keywords-=Cédric
-iptc:keywords+=Cédric
-Keywords-=Cédric
-Keywords+=Cédric
-iptc:keywords-=liegt
-iptc:keywords+=liegt
-Keywords-=liegt
-Keywords+=liegt
-iptc:keywords-=Decke
-iptc:keywords+=Decke
-Keywords-=Decke
-Keywords+=Decke
-iptc:keywords-=Zu Hause
-iptc:keywords+=Zu Hause
-Keywords-=Zu Hause
-Keywords+=Zu Hause
-iptc:keywords-=Winterthur
-iptc:keywords+=Winterthur
-Keywords-=Winterthur
-Keywords+=Winterthur
-echo
Img:0000112 /Users/Shared/Pictures/Photos/Cédric/Zu Hause — Winterthur/[2007-06-11--11.31.21] (cimg2849) Cédric, liegt, Decke, Zu Hause, Winterthur,.jpg
/Users/Shared/Pictures/Photos/Cédric/Zu Hause — Winterthur/[2007-06-11--11.31.21] (cimg2849) Cédric, liegt, Decke, Zu Hause, Winterthur,.jpg
-execute
[...]


I'll attach both the complete args and logs file. I had started exiftool like this:

"exiftool" -stay_open True -@ "$argfile" > "$logfile" 2>&1 &

I don't understand this error. exiftool 8.41 on OSX.

What it makes so incomprehensible is, that the files before and after *cimg2849* where processed just fine. If you check out lines 3475-3504, 3505-3534 and 3535-3564 of the args file, you'll find no difference at all (besides the filenames of course...)

Additionally, I found that exiftool misses to process quite a lot of images, as it seems. But that's a storey for yet another post... First things first, as they say, eh? :)

Cheers,
Alexander

Phil Harvey

#1
I see the problem.  If exiftool reads -echo from the arg file, and then hits the EOF before the next argument is available it will ignore the -echo option.  I thought I had accounted for this possibility in the code, but I see now that the current algorigthm is not infallible.

This problem could occur for any option requiring an additional argument.

I will fix this in the next release.

Thanks for the report.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Phil Harvey

Hi Alexander,

I have added a patch which I think should solve this problem, and have uploaded a pre-release version of 8.43 for you to test if you are able:  Image-ExifTool-8.43p.tar.gz

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

alexs77

Hi.

I installed 8.43p and wasn't able to cause the error with this version — using v8.41, I'm able to cause the error all the time (but always with a different file, which is understandable).

Thanks once again... :)