Going to the ⓘ screen no longer crashes on iOS 8 or later. It also makes better use of the larger screens on the iPhone 6 and iPhone 6 Plus.
(If you are wondering what they are, here is the page about SepiaScape. SeasonScape no longer exists as a separate app; all its text and pictures are now part of SepiaScape.)
How did the crash happen, anyway?
SepiaScape, like many apps, uses UITableView for several parts of its user interface. As is also common, these tables have their row height set to the default. In iOS versions up to 7, this height is 44 pixels. However, in iOS 8, the default height is a constant called UITableViewAutomaticDimension – which has the numeric value of -1. In fact, if the height of 44 pixels is typed into the user interface editor at design time, this becomes -1 at runtime.
For most apps, this was a good change: cells which used to be fixed size now adjust to fit their content.
In SepiaScape, the table displayed on the ⓘ screen contains some stretched cells:
The height of the stretched cells was calculated using the table’s existing rowHeight property, multiplied by 4/3 and rounded down. This worked fine when rowHeight was 44. However, in iOS 8 rowHeight returned UITableViewAutomaticDimension (-1), this calculation turned it into -2, and this value was sent to the table as an appropriate row height.
UITableView didn’t think that -2 was an appropriate row height, and threw an NSInternalInconsistencyException, reason “Invalid row height provided by table delegate. Value must be greater than zero or UITableViewAutomaticDimension.”
SepiaScape wasn’t the only app affected; see for example the StackOverflow question Wrong value from UITableView:rowHeight at iOS8.
To activate location tracking on iOS 8, SepiaScape also needed to call CLLocationManager requestWhenInUseAuthorization, which it now does. The absence of this call was hardly an issue when the switch for location tracking was on the ⓘ screen and therefore inaccessible.
What difference do the iPhone 6 screens make?
They make quite a bit of difference.