Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-7694

Cordova crashes with UIPopoverPresentationController exception in web forms

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • 3.5.0, 3.6.0
    • None
    • cordova-ios
    • None
    • iOS 8.0.2, xCode 6.0.1

    Description

      I have this issue on both Cordova 3.5 and 3.6.

      I have a web form that uses jQuery mobile. It is a mixture of text fields, selects and a date field (the www folder is attached below).

      The app randomly crashes when moving between the controls and I can not figure out how to replicate the bug. I just go around all the controls and in a random moment I get the exception shown below.

      2014-10-02 11:25:34.619 testApp[4456:277182] *** Terminating app due to uncaught exception 'NSGenericException', reason: 'UIPopoverPresentationController (<UIPopoverPresentationController: 0x7afe3170>) should have a non-nil sourceView or barButtonItem set before the presentation occurs.'

          • First throw call stack:
            (
            0 CoreFoundation 0x0030fdf6 __exceptionPreprocess + 182
            1 libobjc.A.dylib 0x02449a97 objc_exception_throw + 44
            2 UIKit 0x00eeaa37 -[UIPopoverPresentationController presentationTransitionWillBegin] + 3086
            3 UIKit 0x007f1f75 __71-[UIPresentationController _initViewHierarchyForPresentationSuperview:]_block_invoke + 1666
            4 UIKit 0x007f0554 __56-[UIPresentationController runTransitionForCurrentState]_block_invoke + 226
            5 UIKit 0x0082421b __40+[UIViewController _scheduleTransition:]_block_invoke + 18
            6 UIKit 0x006ea62e ___afterCACommitHandler_block_invoke + 15
            7 UIKit 0x006ea5d9 _applyBlockToCFArrayCopiedToStack + 415
            8 UIKit 0x006ea3ee _afterCACommitHandler + 545
            9 CoreFoundation 0x00232fbe _CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION_ + 30
            10 CoreFoundation 0x00232f00 __CFRunLoopDoObservers + 400
            11 CoreFoundation 0x0022893a __CFRunLoopRun + 1226
            12 CoreFoundation 0x002281ab CFRunLoopRunSpecific + 443
            13 CoreFoundation 0x00227fdb CFRunLoopRunInMode + 123
            14 GraphicsServices 0x03aca24f GSEventRunModal + 192
            15 GraphicsServices 0x03aca08c GSEventRun + 104
            16 UIKit 0x006c0e16 UIApplicationMain + 1526
            17 testApp 0x000ec7bc main + 92
            18 libdyld.dylib 0x02b29ac9 start + 1
            )
            libc++abi.dylib: terminating with uncaught exception of type NSException
            (lldb)

      Here are the files:

      1. A video showing the bug: http://alex.scot/cordova/cordova1.mov
      2. Text file with the commands used to create the project and the exception: http://alex.scot/cordova/cordova1.txt
      3. The www folder of the iOS platform in Cordova: http://alex.scot/cordova/www.zip

      thank you for looking into this,
      Alex

      Attachments

        Issue Links

          Activity

            People

              shazron Shazron Abdullah
              alex_ivaylov Alex Ivaylov
              Votes:
              2 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: