Menu

#16 RKNRFGO & nrfjprog crash when parsing softdevice info XML file

1.0
closed
None
2015-06-30
2015-06-30
_follower_
No

Hi,

On OS X 10.8.5 with the tools installed from the RKNFRGO_V1.0.10.pkg download I get a crash on program startup when running RKNRFGO; and, nrfjprog crashes when doing anything related to softdevices e.g. nrfjprog -V, nrfjprog program --code _build/nrf51422_xxac_s310.hex --softdevice s310_nrf51422_2.0.0_softdevice.hex or nrfjprog update.

All the error logs are similar but the simplest one seems to be from nrfjprog -V:

2015-06-30 07:06:07.013 nrfjprog[40038:707] -[NSConcreteScanner scanUnsignedLongLong:]: unrecognized selector sent to instance 0x7fcd52903270
2015-06-30 07:06:07.038 nrfjprog[40038:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSConcreteScanner scanUnsignedLongLong:]: unrecognized selector sent to instance 0x7fcd52903270'
*** First throw call stack:
(
    0   CoreFoundation                      0x00007fff94395b06 __exceptionPreprocess + 198
    1   libobjc.A.dylib                     0x00007fff8f5233f0 objc_exception_throw + 43
    2   CoreFoundation                      0x00007fff9442c40a -[NSObject(NSObject) doesNotRecognizeSelector:] + 186
    3   CoreFoundation                      0x00007fff9438402e ___forwarding___ + 414
    4   CoreFoundation                      0x00007fff94383e18 _CF_forwarding_prep_0 + 232
    5   nrfjprog                            0x0000000106e4d44d nrfjprog + 37965
    6   nrfjprog                            0x0000000106e4cfc4 nrfjprog + 36804
    7   nrfjprog                            0x0000000106e4cf40 nrfjprog + 36672
    8   Foundation                          0x00007fff937fd09b _startElementNs + 1209
    9   libxml2.2.dylib                     0x00007fff8fc0802e xmlParseStartTag2 + 4110
    10  libxml2.2.dylib                     0x00007fff8fc09e60 xmlParseTryOrFinish + 734
    11  libxml2.2.dylib                     0x00007fff8fc098d6 xmlParseChunk + 306
    12  Foundation                          0x00007fff937fb990 -[NSXMLParser parse] + 530
    13  nrfjprog                            0x0000000106e4c5fc nrfjprog + 34300
    14  nrfjprog                            0x0000000106e53c6e nrfjprog + 64622
    15  nrfjprog                            0x0000000106e4b6ac nrfjprog + 30380
    16  libdyld.dylib                       0x00007fff88d317e1 start + 0
    17  ???                                 0x0000000000000002 0x0 + 2
)
libc++abi.dylib: terminate called throwing an exception
Abort trap: 6

Manually downloading the XML file from http://tcpdiag.dl.sourceforge.net/project/rknrfgo/SOFTDEVICEINFO/Softdevices.data I see it has version indicator <softdevices version="455583815">.

Wondering if this is related to the XML file content or the version of the XML parsing library or OS?

Thanks.

Discussion

  • Roland King

    Roland King - 2015-06-30

    Ugh

    scanUnsignedLongLong - Available in OS X v10.9 and later.

    I didn't know that, will fix.

     
  • Roland King

    Roland King - 2015-06-30

    Try 1.0.11 which I just put up. Uses the old method available on all OS.

    There will come a time I'll have to give up support for older OSX because it doesn't get tested (I don't have anything that old) and we're coming close on 3 years of new functions.

     
  • Roland King

    Roland King - 2015-06-30
    • status: open --> closed
    • assigned_to: Roland King
     
  • _follower_

    _follower_ - 2015-06-30

    Thanks so much for your quick action on this.

    I noticed the new version before I got the ticket update ;) and tried it out.

    It worked happily for me on OS X 10.8.5 programming the ble_app_rscs example on a pca10028 board with an s310 softdevice from both the GUI and CLI.

    (I'd tried the older 1.0.7 release which would launch the GUI but didn't support the s310.)

    I realise supporting older OS versions isn't fun so I appreciate you fixing this for me and doing it so quickly.

    Thanks!

     
  • Roland King

    Roland King - 2015-06-30

    Thanks for the bug report - I rely on other people to test compatibility and as soon as you posted the stack trace it was a pretty easy fix.

    I've been working on V2 on and off, it's a pretty different beast, it's what RKNRFGO would have been if I knew what I was writing when I wrote it originally. It's going to be Swift which will help with compatibility as that really flags up inconsistencies. I also now have a proper license for JLink so it should be a much better product. Swift probably means 10.9 is the minimum.

    But it's a way away yet ..

     

Log in to post a comment.