So it was. The article never mentions the frame pointer and I'm familiar with compilers that load the saved value from the stack in the epilog, rather than adjusting it arithmetically. But they do have an assembly listing showing the two-step arithmetic adjustment for both the stack pointer and frame pointer.
But I'm not sure that matters, because the unwind code they show uses the stack pointer rather than the frame pointer anyway.