Hi,
Before we release, I propose we make avrdude return a non-zero error
condition if any fuse bits are being requested to change, but the -u
option is not specified. We already print out a warning, but since my
process is automated and I rely on the avrdude return code to know
whether all the requested operations succeeded, I did not see the
text. I'm guessing I will not be the only one that runs into this.
I'm thinking of something like the attached patch. It will return
non-zero if all of the following are true:
1) -u is not specified
2) fuses are specified to be programed
3) fuses are actually changed (different from when avrdude was started)
4) safe-mode restores the fuses back to their default values
Thus, the idea is to return non-zero when an action is requested but
is not performed.
Any thoughts on this?