davidmam wrote:That patch is not really fixing the problem but just working around the calls that trigger the problem?
Definitely worth a try.
..d
You are right, but the good news is that it does work. Interestingly enough, the "--keep" switch I mentioned above seemed to make my 20d behave, but then I got a new 7d this week and it didn't seem to work on that one. It kept failing on the 2nd picture just like before on my 20d without the "--keep". After this "patch" the 7d works great.
I will mention that I discovered something else though, if you are specifying the filename with the --filename= switch, you have to use "--force-overwrite" even if the filename isn't being overwritten. Otherwise it will just hang. Using this:
gphoto2 --capture-image-and-download --filename=/var/www/images/$1 --force-overwrite
--OR--
gphoto2 --capture-image-and-download --filename=/var/www/images/$1 --force-overwrite --keep
works great for me with the 7d. Oh, and the patch file doesn't seem to work but since it is only one line I just changed that line specified in the patch and rebuilt it.
EDIT: One more issue I wanted to mention is that gphoto2 still fails sometimes with:
*** Error ***
Canon EOS Capture failed to release: Perhaps no more memory on card?
ERROR: Could not capture image.
ERROR: Could not capture.
*** Error (-3: 'Out of memory') ***
But obviously that is not the case, so I don't know what is up with that. Taking another picture works, so maybe I am just doing it too fast?