The C standards say that the compiler is allowed to optimize away
changes to local variables within a function between a call to
setjmp() and a later call to longjmp(), unless the local variables
are volatile-qualified.
The 'info' local variable in sfm_open_reader() fits this
description but wasn't volatile-qualified. This commit fixes that,
even though my compiler didn't in fact seem to have a problem with
the previous version.