SQLite3 / SQLCipher cra sh только с iOS 13+ - PullRequest
0 голосов
/ 27 мая 2020

У меня есть тест, чтобы получить имя столбца и другую информацию о метаданных из базы данных SQLite3. Когда я звоню sqlite3_column_database_name(pStmt, 0);, мое приложение вылетает. Это происходит только при использовании вместе с SQLCipher. Журнал cra sh не так полезен (как почти всегда с библиотеками и ios).

Incident Identifier: 445465AF-AE38-40BE-9FEF-875DD439197C
CrashReporter Key:   5108d3729725a56f2cc6f3faeb9a08313e134acf
Hardware Model:      iPhone11,8
Process:             MyTestApp [3910]
Path:                /private/var/containers/Bundle/Application/457CA529-5F45-4B79-A1A7-71AF527F805D/MyTestApp.app/MyTestApp
Identifier:          (myidentifer)
Version:             1 (1.0)
Code Type:           ARM-64 (Native)
Role:                Foreground
Parent Process:      launchd [1]
Coalition:           (myidentifier) [1234]


Date/Time:           2020-05-27 15:28:15.7582 -0300
Launch Time:         2020-05-27 15:28:09.4374 -0300
OS Version:          iPhone OS 13.4.1 (17E262)
Release Type:        User
Baseband Version:    2.05.13
Report Version:      104

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x000020a800000008 -> 0x0000002800000008 (possible pointer authentication failure)
VM Region Info: 0x2800000008 is not in any region.  Bytes after previous region: 160524402697  
      REGION TYPE                      START - END             [ VSIZE] PRT/MAX SHRMOD  REGION DETAIL
      MALLOC_NANO            0000000283b80000-00000002a0000000 [452.5M] rw-/rwx SM=ZER  
--->  
      UNUSED SPACE AT END


У меня проблемы с устройством (iPhone XR 13.4.1) и симулятором (iOS 13.4). У меня нет старых устройств, но с симулятором 11.4 и 12.9 у меня нет проблемы cra sh (хотя метод возвращает NULL, что является ожидаемым результатом, согласно документам sqlite3, я обрабатываю нулевые результаты соответствующим образом ).

Мой SQL оператор - SELECT * FROM 'empInfo'. в котором есть рабочая таблица с допустимыми элементами.

Были ли у кого-нибудь проблемы с SQLite3, SQLCipher и ios13? Ничего не нашел в SO или google ...

Если дополнительная информация поможет, просто спросите, и я могу добавить.

Изменить: Мне удалось воспроизвести ошибку в этом проекте https://github.com/CarlinhaCamargo/SQLite3_crash_problem

1 Ответ

0 голосов
/ 03 июня 2020

Проблема заключается в версии libsqlcipher.dylib в вашем проекте. Когда я удалил его и добавил последнюю версию через Cocoapods, проблема была решена. См. PR # 2 .

...