Invalid return 1; in PJ_isea.c:isea_hex
https://github.com/OSGeo/proj.4/blob/6a921265db9ff12a263ff1a88118a69a65b7a2df/src/PJ_isea.c#L919
From discussion with Nathan Wagner nw hydaspes if.org:
I'm looking into it. ... the code after the return is the right code, but maybe there's a bug or something that I missed. My tests don't exercise that code path.
Just removing that code in #418 is not the correct fix.
I'm speculating here, but the comments in the unreachable code talk about aperture 3 and 4:
/* Aperture 3 odd resolutions */
if (g->aperture == 3 && g->resolution % 2 != 0) {
...
}
/* aperture 3 even resolutions and aperture 4 */
However the code below the comment "aperture 3 even resolutions and aperture 4" doesn't test the aperture, it just assumes that the aperture will meet those conditions if it reaches this line of code.
All of these clues lead me to think that the early return was originally meant to occur if the aperture is neither 3 nor 4, for example:
if (g->aperture < 3 || g->aperture > 4)
return;
I'm happy to raise a PR if this solution seems appropriate.