Sample buggy code (that I just made up):
(user_token is user supplied token, token is the correct token)
for(i = 0; i < strlen(user_token); i++) {
if(user_token[i] != token[i]) return false;
}
return true;
If code is blank this will falsely return true. This is also subject to truncation attacks.I'm trying to think of a bug where blank fails, but truncated versions do not.
The latest Podcasts App from iTunes is a skeuomorphic mess. It has a superfluous animation of a reel-to-reel player of course. But it utterly fails at its most basic task: playing a goddamn podcast. But don't take my word for it, it has a 1.5 star rating on iTunes: https://itunes.apple.com/us/app/podcasts/id525463029
Not to mention crashes... Apple used to make jokes about the Windows blue screen of death. Well, that's my new day-to-day experience with iOS apps. I'm constantly restarting crashed apps over and over.
Honestly, this is good news if Forstall really is the driving force behind the deteriorating user experience of many apps.
Trade away the lyric and podcast show info displays for kitsch wood veneer? And a reel-to-reel tape recorder simulator? Move seek controls to weird locations? Replace the easy-to-spot seek knob with a radio needle? Why? So many small steps backward, even if no single one was a deal breaker... negative trajectory is negative trajectory.
If this means they walk some of that silliness back, it's the best Apple news in ages. It started to look like designers who didn't actually use the apps were taking over.