Latest iOS 11 bug crashes devices sent Indian-language character [u]

2»

Comments

  • Reply 21 of 35
    dewmedewme Posts: 5,375member
    I totally understand the complexities of software development - but I do have to admit that allowing this category of bug to escape the development process and leak into the field is very embarrassing for Apple. Unfortunately it's neither unique nor isolated to Apple. Everyone makes mistakes, which is why one of the first principles of defensive coding is to ALWAYS check/validate every single parameter passed to a function/API/interface to catch such mistakes and handle them appropriately. It's not simply about checking individual aspects of parameters like type and magnitude, but checking every passed parameter within the context of all other parameters passed in the same call, checking within the current limits/constraints of the system state and stack frame, and guaranteeing that every assumption/responsibility imposed by the interface contract are followed exactly as specified, i.e., whether the caller or callee is responsible for memory management (allocation and cleanup) and final exception handling (catching vs re-throwing).

    In modern programming languages some of the responsibilities for defensive coding are are done automatically for the programmer by the language associated runtime or by language abstractions. However, these are the simple things because the built-in checking/verification mechanisms typically know very little to nothing about the context of the  called function, how it mutates the larger program state, or it's intended or unintended side effects. Sorry, but even with managed programming languages like Swift and C# the programmer still has to accept full responsibility for his or her job and program defensively at all times.  In fact, almost all of the issues that are unfortunately leaking out to the vocabulary of laypeople, like buffer overruns/underruns, are exactly caused by the failure of programmers to employ this specific defensive coding technique (parameter validation) religiously. 

    Just to be clear, this is an embarrassing problem that manifested itself at the hands of a programmer. But it is just the tip of the iceberg when it comes to understanding how dysfunctional (on a sliding scale) software organizations impact the overall quality of software products. Why? Because defensive coding techniques are not new at all, they are very well understood by all competent programmers, and avoidance/mitigation steps are easy and low cost to implement at the time they are identified as necessary. The bigger question is why these well understood and avoidable issues still occur with regularity. If you know there's a risk, you have reliable techniques for avoiding the risk, and you have layers of verification, validation, and quality assurance, why are these risks still getting injected as bugs and impacting your software quality? That's the organizational level question that needs to be answered.
    avon b7
  • Reply 22 of 35
    dysamoriadysamoria Posts: 3,430member
    spice-boy said:
    Are any of you are old enough to remember how we Macintosh fans us to ridicule Windows for it's buggy software? 
    Dude the fact is no one even cares about Android & Windows bugs.
    This is because they are already trash.
    i have seen bugs on Android phones that haven’t even been reported in forums.
    Its just that when there is a bug on iOS or macOS it’s newsworthy.
    I care about bugs everywhere. Right now I'm bashing my bloody skull against a Windows Vista that reboots on startup (Linux is fine). Just because Windows (and droid?) is brittle and frail doesn't mean all of us are just fine with that.

    I'm even more pissed when the platform I left Windows for starts to become as bad as Windows. As I'm starting to use Sierra on a regular basis (leaving the near-perfect Snow Leopard), I'm finding more and more bugs in Mac OS. Then there's the mess that is iOS. I've reported tons of iOS bugs to both Apple and these "news" sites. Apple doesn't care and no one wants to cover them in the media, especially the ones Apple introduced in iOS 7 and STILL has not fixed to this day in iOS 11. Go figure. I presume it has to already be in some larger media news before everyone else takes up the story too. Or maybe it's just because I reported them that there's some magical voodoo curse that means they must never be discussed...

    i hate computers.
  • Reply 23 of 35
    volcanvolcan Posts: 1,799member
    I'm glad Apple was able to fix it but as far as I know India's Telugu language is not one of the 40 languages supported by iOS. The text probably originated on Windows with Indic Language Pack. It could have been received in an email and later copied into the iPhone Messages app. That said, Apple probably should have expected people to try to use unsupported languages and not let it crash the iPhone. Personally, I don't particularly like the way that iOS handles languages. It is really a hassle to communicate in more than one language at various times during the day, which applies to a large portion of the world's population. Apple expects one language ID and/or one localization at a time.
    edited February 2018 avon b7
  • Reply 24 of 35
    జ్ఞి
    kudu
  • Reply 25 of 35
    avon b7avon b7 Posts: 7,702member
    volcan said:
    I'm glad Apple was able to fix it but as far as I know India's Telugu language is not one of the 40 languages supported by iOS. The text probably originated on Windows with Indic Language Pack. It could have been received in an email and later copied into the iPhone Messages app. That said, Apple probably should have expected people to try to use unsupported languages and not let it crash the iPhone. Personally, I don't particularly like the way that iOS handles languages. It is really a hassle to communicate in more than one language at various times during the day, which applies to a large portion of the world's population. Apple expects one language ID and/or one localization at a time.
    Agreed. Ever since I could use a mobile keyboard that handled more than one language at a time, my life got so much easier. I hope we're not far off seeing multi lingual voice assistants although that particular one is a tall order.
  • Reply 26 of 35
    lkrupp said:

    spice-boy said:
    Are any of you are old enough to remember how we Macintosh fans us to ridicule Windows for it's buggy software? 
    And yet macOS, iOS, watchOS, and tvOS are still vastly superior to Windows and Android in terms of security and stability. Oh, and I still ridicule Windows to this day because of that fact.
    Lighten up with the ridicule.  Apple's platform is hardware / software.  Microsoft's platform is software on any hardware.  Of course the hardware/software model is going to be superior in terms of security and stability.  Microsoft's model though has introduced affordable computing to many (including third world countries) who would otherwise be denied. 
  • Reply 27 of 35
    Rayz2016 said:
    wbm said:
    Every piece of software has some bugs in it. That is just the price of life in the fast lane. I would hope that Apple would take more of a focus on software quality. It seems that iOS11 has had a lot of embarrassing little bugs like this. Hopefully the upcoming pm changes will help.
    This is absolutely true: every piece of software has bugs. 

    But why aren’t Apple writing the software in such a way to prevent bugs in the APIs from bringing down the whole phone?

    This sounds like some kind of memory overrun. 
    Not sure Rayz2016 ... some bugs are pretty obscure though.  I get reminded years ago of a waterbed matress where one pushes down in one corner only to see the diagonally opposite corner pop up :neutral: 
  • Reply 28 of 35
    volcanvolcan Posts: 1,799member
    avon b7 said:
    Agreed. Ever since I could use a mobile keyboard that handled more than one language at a time, my life got so much easier. I hope we're not far off seeing multi lingual voice assistants although that particular one is a tall order.
    Yeah Siri has a lot of issues here in LA where many locations have Spanish names.
  • Reply 29 of 35
    spice-boy said:
    spice-boy said:
    Are any of you are old enough to remember how we Macintosh fans us to ridicule Windows for it's buggy software? 
    Dude the fact is no one even cares about Android & Windows bugs.
    This is because they are already trash.
    i have seen bugs on Android phones that haven’t even been reported in forums.
    Its just that when there is a bug on iOS or macOS it’s newsworthy.
    Good dodge from answering the question. Apple has gotten too big and it's software's quality is sliding the way M$ was at it's peak. 
    Yeah nonsense. It's gained critical mass and user base, and infinitely more complexity than the old Macintosh days. There will always be more bugs -- unless you're advocating for an entire freeze in all development until every bug is squashed, which will take years and will cause new bugs, and by which time people will be whining that iOS is stale, stagnant, boring, late, etc. 

    You guys just need to realize bugs happen. This one doesn't even affect you, will never affect you, yet still you whine. It's a disorder, really.

    The difference is Windows has bugs AND is a shitty OS.
    edited February 2018
  • Reply 30 of 35

    macxpress said:
    lkrupp said:
    JanNL said:
    True! But how did the Italians find this bug??
    Believe it or not there are weirdly strange people in this world that sit around all day , every day fiddling with software and hardware trying to find stuff like this. No one else could possibly come up with the strange keystrokes, button pushes, swipes and whatnot that trigger a bug.
    Yes, Apple cannot test for every single situation the Phone, Mac, Watch, etc is placed in. This is impossible. Every piece of software written by anyone whether its Apple, Microsoft, Google, Adobe, etc, etc is going to have bugs and I'm sure the bug fix will possibly create another bug that may go unfound for a period of time. Then, when you add new features and updates to your software, that has bugs. Its a never ending cycle and no one company is immune to it. 

    To us sitting at home, sure it seems like a stupid bug that shouldn't have ever existed, but the large majority of us are not software engineers working for a Fortune 500 company with specific deadlines, multiple teams working around you that you have the collaborate with, etc. So its very easy for us (Armchair Software Engineers) to sit here and say well this shouldn't have ever happened or this never happen before. Sure it did...we just have short-term memories for certain things, or we forget about these things and only think about the good things that happened. 
    Nailed it. Everything looks easy to people who don't have any idea what they're talking about (software engineering, in this case).
  • Reply 31 of 35
    spice-boy said:

    wbm said:
    Every piece of software has some bugs in it. That is just the price of life in the fast lane. I would hope that Apple would take more of a focus on software quality. It seems that iOS11 has had a lot of embarrassing little bugs like this. Hopefully the upcoming pm changes will help.
    Glad to hear you are an optimist but Apple has let it's customers down the past couple of years regarding software too many times. I love the platform and bought only Apple products since 1994 but these days the software is embarrassing. Too many people here make excuses for Apple, the richest company in the world with all the resources needed to release near perfect software as they did before. 
    Nope, that isn't how it works -- the mythical man month...you can't throw more people at a software project and expect fewer bugs, it only adds complication. 

    You can claim Apple is letting people down, but I haven't been affected by any bugs I can think of, except that brief iMessage bug that turned "i" into a box. Big whoop. Most of you complainers just get caught up in the mental game of pretending "the good ole days" were better, and forget that with today's internet every little thing gets turned into a major echo chamber despite the fact that it never even touched you. You're just losing perspective, seeing disasters everywhere. Some sort of computing-panic disorder.
  • Reply 32 of 35
    danvmdanvm Posts: 1,409member
    spice-boy said:
    spice-boy said:
    Are any of you are old enough to remember how we Macintosh fans us to ridicule Windows for it's buggy software? 
    Dude the fact is no one even cares about Android & Windows bugs.
    This is because they are already trash.
    i have seen bugs on Android phones that haven’t even been reported in forums.
    Its just that when there is a bug on iOS or macOS it’s newsworthy.
    Good dodge from answering the question. Apple has gotten too big and it's software's quality is sliding the way M$ was at it's peak. 
    Yeah nonsense. It's gained critical mass and user base, and infinitely more complexity than the old Macintosh days. There will always be more bugs -- unless you're advocating for an entire freeze in all development until every bug is squashed, which will take years and will cause new bugs, and by which time people will be whining that iOS is stale, stagnant, boring, late, etc. 

    You guys just need to realize bugs happen. This one doesn't even affect you, will never affect you, yet still you whine. It's a disorder, really.

    The difference is Windows has bugs AND is a shitty OS.
    I think that everyone agrees that bugs happen.  The problem is the frequency and severity of bugs in iOS and macOS in recent years.  And I don't think you can blame at all critical mass, user base and complexity.  Apple has a big advantage controlling hardware, specially with iOS devices.  Clearly the "it just works" is not anymore.  IMO, there is no excuse for the decline in quality in macOS and iOS.  
  • Reply 33 of 35
    spice-boyspice-boy Posts: 1,450member
    spice-boy said:

    wbm said:
    Every piece of software has some bugs in it. That is just the price of life in the fast lane. I would hope that Apple would take more of a focus on software quality. It seems that iOS11 has had a lot of embarrassing little bugs like this. Hopefully the upcoming pm changes will help.
    Glad to hear you are an optimist but Apple has let it's customers down the past couple of years regarding software too many times. I love the platform and bought only Apple products since 1994 but these days the software is embarrassing. Too many people here make excuses for Apple, the richest company in the world with all the resources needed to release near perfect software as they did before. 
    Nope, that isn't how it works -- the mythical man month...you can't throw more people at a software project and expect fewer bugs, it only adds complication. 

    You can claim Apple is letting people down, but I haven't been affected by any bugs I can think of, except that brief iMessage bug that turned "i" into a box. Big whoop. Most of you complainers just get caught up in the mental game of pretending "the good ole days" were better, and forget that with today's internet every little thing gets turned into a major echo chamber despite the fact that it never even touched you. You're just losing perspective, seeing disasters everywhere. Some sort of computing-panic disorder.
    Not talking about software bugs but bloated software, menus which go too deep when looking to change settings, a baroque iOS which is less intuitive to use than before. Apple seems worried about feature match with it's competitors than keeping it Zen and elegant. Most bugs it's true don't affect the general public but cluttered "features" do. 
  • Reply 34 of 35
    > seems worried about feature match with it's competitors than keeping it Zen and elegant.

    Definitely agree - and Jobs was all about Zen..  The product line also seems to be getting overly complicated - at least at some times they've seemed more complicated than they need to be.  They also seem to rely on "gimmicks" to differentiate "top models" - currently Touch Bar and 3D Touch, and (to a lesser extent) Face ID/Animoji-Face-Depth-Mapping.  This is fine, but it probably impedes developers from using the features to greatest effect, because there will always be users who don't have "neat feature X"

    I'd be *very* interested to know exactly *why* this big happens..  Any really good OS code-sleuths out there?  I presume this particular character is just another Unicode code point, right?  So how does a "particular Unicode code-point" cause a problem that shuts down the entire system?

    Unless this is some "intentional jail-break exploit" that Apple stuck in..  In this particular strange theory/wish, Apple recognizes the usefulness of jail-breakers, to give them ideas for iOS features.

    I think they should figure out *some* way to make an "official" jailbreak API:  One that is secure, can *only* be *initially* installed by a physical tethering, but which is stable across re-boots ("semi-tethered plus"?).  And probably requires that you maintain that physical connected for say an hour or 12.  That means that no-one can sneak into your hotel room when you're not there, tether the iPhone and install malware, then leave.
  • Reply 35 of 35
    emig647 said:
    Rayz2016 said:
    wbm said:
    Every piece of software has some bugs in it. That is just the price of life in the fast lane. I would hope that Apple would take more of a focus on software quality. It seems that iOS11 has had a lot of embarrassing little bugs like this. Hopefully the upcoming pm changes will help.
    This is absolutely true: every piece of software has bugs. 

    But why aren’t Apple writing the software in such a way to prevent bugs in the APIs from bringing down the whole phone?

    This sounds like some kind of memory overrun. 
    Days of buffer overflows are pretty much gone (unless you have a continuous memory leak and the watchdog shuts you down). This is most likely an unhandled character with CoreText or something in foundation. Ironically we ran into this yesterday in our own app with an unhandled character in a font set.
    And did you go through your code with a fine toothed comb, put in mitigation code in case another character is mis-handled, check the code against all other possible characters? Because Apple obviously didn't the first time a bad character crashed Messages. 

    That would be good software development practice and I see a lack of that in a lot of Apple's bug handling and even in their beta release issues - if you read the notes, you begin to wonder how they could possibly be practicing any good engineering given the way they create problems in working code trying to add new features.
Sign In or Register to comment.