1

I'm testing my web application on iOS 13 which in the date of this post is in beta phase yet. I got an exception related to a stack trace like this:

var g, C = void 0 !== (I = I || {}) ? I : {},
    B = {};
    C.arguments = [],
    C.thisProgram = "./this.program";

I just added the piece of stack code as is. This code is from the opencv-lite library. Safari in iOS 13 throws the error:

'arguments', 'caller', and 'caller' cannot be accessed in this context

I already searched about the error itself and the nearest discussion that I found is this.

The library is not on "strict mode" and doesn't have the "use strict" on the top. It's like Safari on iOS 13 is using strict mode as default for this script, but I want to believe that this is not the case, otherwise a lot of application would broke. I found a similar discussion about it here.

My question is: maybe iOS 13 in fact has changed the way that enable/disable strict mode?

Note: the same application not throws the error on iOS 12 and bellow. Only on iOS 13 beta.

BrTkCa
  • 4,703
  • 3
  • 24
  • 45
  • Please clarify - You intend to refer iOS and not iPadOS, correct? The distinction may be important since iPad OS replaces the iOS web browser with the "desktop-class web browser" which could change the behavior of the browser on an iPad. – daddygames Sep 16 '19 at 17:56
  • You're correct @daddygames, it's iOS and not iPadOS. I was testing in iPhone 8. – BrTkCa Sep 16 '19 at 17:58

0 Answers0