Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Android Studio上的致命信号11故障_C++_Sqlite_Android Studio - Fatal编程技术网

C++ Android Studio上的致命信号11故障

C++ Android Studio上的致命信号11故障,c++,sqlite,android-studio,C++,Sqlite,Android Studio,我在数据库中有一个保存复制状态的表和一个检查数据是否被复制的函数 bool ItemDatabase::getIsCopied() { bool iscopied; ofxSQLiteSelect sel = sqlite->select("iscopied") .from(TNAME_COPYSTATUS) .execute().begin(); while(sel.hasNext()){

我在数据库中有一个保存复制状态的表和一个检查数据是否被复制的函数

bool ItemDatabase::getIsCopied() {
    bool iscopied;
    ofxSQLiteSelect sel = sqlite->select("iscopied")
            .from(TNAME_COPYSTATUS)
            .execute().begin();
    while(sel.hasNext()){
        iscopied = (bool) sel.getInt();
        sel.next();
    }
    return iscopied;
}
我有一个函数,可以对未加密表中的数据进行加密,并将其复制到另一个表中。如果复制了数据,则数据库中iscopied的值将更改为1。此函数如下所示

void ItemDatabase::passPackTableToPackEncTable(){
    std::vector<std::string> datas;
    for (int a = 0; a < packdata_id.size(); a++) {
        ofxSQLiteSelect sel = sqlite->select("*")
                .from(TNAME_PACK)
                .where("id", packdata_id.at(a))
                .execute().begin();

        while (sel.hasNext()) {
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            datas.push_back(sel.getString());
            sel.next();
        }

        sqlite->update(TNAME_PACKENC)
                .use(columnname[TABLE_PACKENC][0], aes->encrypt(datas.at(0)))
                .use(columnname[TABLE_PACKENC][1], aes->encrypt(datas.at(1)))
                .use(columnname[TABLE_PACKENC][2], aes->encrypt(datas.at(2)))
                .use(columnname[TABLE_PACKENC][3], aes->encrypt(datas.at(3)))
                .use(columnname[TABLE_PACKENC][4], aes->encrypt(datas.at(4)))
                .use(columnname[TABLE_PACKENC][5], aes->encrypt(datas.at(5)))
                .use(columnname[TABLE_PACKENC][6], aes->encrypt(datas.at(6)))
                .use(columnname[TABLE_PACKENC][7], aes->encrypt(datas.at(7)))
                .use(columnname[TABLE_PACKENC][8], aes->encrypt(datas.at(8)))
                .use(columnname[TABLE_PACKENC][9], aes->encrypt(datas.at(9)))
                .use(columnname[TABLE_PACKENC][10], aes->encrypt(datas.at(10)))
                .use(columnname[TABLE_PACKENC][11], aes->encrypt(datas.at(11)))
                .use(columnname[TABLE_PACKENC][12], aes->encrypt(datas.at(12)))
                .use(columnname[TABLE_PACKENC][13], aes->encrypt(datas.at(13)))
                .use(columnname[TABLE_PACKENC][14], aes->encrypt(datas.at(14)))
                .use(columnname[TABLE_PACKENC][15], aes->encrypt(datas.at(15)))
                .use(columnname[TABLE_PACKENC][16], aes->encrypt(datas.at(16)))
                .use(columnname[TABLE_PACKENC][17], aes->encrypt(datas.at(17)))
                .use(columnname[TABLE_PACKENC][18], aes->encrypt(datas.at(18)))
                .use(columnname[TABLE_PACKENC][19], aes->encrypt(datas.at(19)))
                .use(columnname[TABLE_PACKENC][20], aes->encrypt(datas.at(20)))
                .use(columnname[TABLE_PACKENC][21], aes->encrypt(datas.at(21)))
                .use(columnname[TABLE_PACKENC][22], aes->encrypt(datas.at(22)))
                .use(columnname[TABLE_PACKENC][23], aes->encrypt(datas.at(23)))
                .use(columnname[TABLE_PACKENC][24], aes->encrypt(datas.at(24)))
                .use(columnname[TABLE_PACKENC][25], aes->encrypt(datas.at(25)))
                .use(columnname[TABLE_PACKENC][26], aes->encrypt(datas.at(26)))
                .use(columnname[TABLE_PACKENC][27], aes->encrypt(datas.at(27)))
                .use(columnname[TABLE_PACKENC][28], aes->encrypt(datas.at(28)))
                .use(columnname[TABLE_PACKENC][29], aes->encrypt(datas.at(29)))
                .use(columnname[TABLE_PACKENC][30], aes->encrypt(datas.at(30)))
                .use(columnname[TABLE_PACKENC][31], aes->encrypt(datas.at(31)))
                .use(columnname[TABLE_PACKENC][32], aes->encrypt(datas.at(32)))
                .use(columnname[TABLE_PACKENC][33], aes->encrypt(datas.at(33)))
                .use(columnname[TABLE_PACKENC][34], aes->encrypt(datas.at(34)))
                .use(columnname[TABLE_PACKENC][35], aes->encrypt(datas.at(35)))
                .use(columnname[TABLE_PACKENC][36], aes->encrypt(datas.at(36)))
                .use(columnname[TABLE_PACKENC][37], aes->encrypt(datas.at(37)))
                .use(columnname[TABLE_PACKENC][38], aes->encrypt(datas.at(38)))
                .use(columnname[TABLE_PACKENC][39], aes->encrypt(datas.at(39)))
                .use(columnname[TABLE_PACKENC][40], aes->encrypt(datas.at(40)))
                .use(columnname[TABLE_PACKENC][41], aes->encrypt(datas.at(41)))
                .use(columnname[TABLE_PACKENC][42], aes->encrypt(datas.at(42)))
                .use(columnname[TABLE_PACKENC][43], aes->encrypt(datas.at(43)))
                .use(columnname[TABLE_PACKENC][44], aes->encrypt(datas.at(44)))
                .use(columnname[TABLE_PACKENC][45], aes->encrypt(datas.at(45)))
                .use(columnname[TABLE_PACKENC][46], aes->encrypt(datas.at(46)))
                .where("id", packdata_id.at(a))
                .execute();
        datas.clear();
    }
    // makes iscopied = 1 in database
    sqlite->update(TNAME_COPYSTATUS)
            .use(columnname[TABLE_COPYSTATUS][0], 1)
            .execute();
}
我正在运行这样的测试,以确保老用户不会丢失数据。首先,我将带有函数的行更改为注释行,并运行应用程序一次。然后我删除注释行并再次运行应用程序。我预期的结果是数据加密成功,应用程序运行,但应用程序失败。在几次尝试之后,我发现应用程序的哪个部分失败了,但我无法找到原因。当我如前所述运行它时,它在函数中对a=0起作用,并给出一个错误

08-24 14:00:12.700 15813-15924/com.nitragames.football.taso2016 A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 15924 (GLThread 1558)
08-24 14:00:12.810 383-383/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
08-24 14:00:12.810 383-383/? A/DEBUG: Build fingerprint: 'samsung/a53gxx/a53g:6.0.1/MMB29M/A500HXXS1CQC6:user/release-keys'
08-24 14:00:12.810 383-383/? A/DEBUG: Revision: '10'
08-24 14:00:12.810 383-383/? A/DEBUG: ABI: 'arm'
08-24 14:00:12.810 383-383/? A/DEBUG: pid: 15813, tid: 15924, name: GLThread 1558  >>> com.nitragames.football.taso2016 <<<
08-24 14:00:12.810 383-383/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
08-24 14:00:12.850 383-383/? A/DEBUG:     r0 930cf12c  r1 00000000  r2 00000000  r3 930cf12c
08-24 14:00:12.850 383-383/? A/DEBUG:     r4 b8958be0  r5 9c06c4ac  r6 930cf3c8  r7 930cef48
08-24 14:00:12.850 383-383/? A/DEBUG:     r8 00000000  r9 9d51f1b4  sl b88a7c08  fp 00000000
08-24 14:00:12.850 383-383/? A/DEBUG:     ip 9c06c4d4  sp 930cef48  lr 9bde70ab  pc 9d7ff1d8  cpsr 800f0030
08-24 14:00:12.850 383-383/? A/DEBUG: backtrace:
08-24 14:00:12.850 383-383/? A/DEBUG:     #00 pc 000981d8  /data/app/com.nitragames.football.taso2016-1/lib/arm/libgnustl_shared.so (_ZNSs4_Rep8_M_cloneERKSaIcEj+175)
08-24 14:00:14.670 14883-14883/? E/TranscodeReceiver: onReceive : android.intent.action.CHECK_SIOP_LEVEL
08-24 14:00:14.850 1633-2385/? E/NativeCrashListener: Exception dealing with report
    android.system.ErrnoException: read failed: EAGAIN (Try again)
        at libcore.io.Posix.readBytes(Native Method)
        at libcore.io.Posix.read(Posix.java:169)
        at libcore.io.BlockGuardOs.read(BlockGuardOs.java:230)
        at android.system.Os.read(Os.java:367)
        at com.android.server.am.NativeCrashListener.consumeNativeCrashData(NativeCrashListener.java:240)
        at com.android.server.am.NativeCrashListener.run(NativeCrashListener.java:138)
08-24 14:00:12.700 15813-15924/com.nitragames.football.taso2016 A/libc:tid 15924(GL1558)中的致命信号11(SIGSEGV),代码1,故障地址0x0
08-24 14:00:12.810 383-383/? A/调试:***************************************************
08-24 14:00:12.810 383-383/? A/调试:构建指纹:“三星/a53gxx/a53g:6.0.1/MMB29M/A500HXXS1CQC6:用户/释放密钥”
08-24 14:00:12.810 383-383/? A/DEBUG:修订版:“10”
08-24 14:00:12.810 383-383/? A/DEBUG:ABI:'arm'
08-24 14:00:12.810 383-383/? A/DEBUG:pid:15813,tid:15924,name:glthread1558>>>com.nitragames.football.taso2016
08-24 14:00:12.700 15813-15924/com.nitragames.football.taso2016 A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 15924 (GLThread 1558)
08-24 14:00:12.810 383-383/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
08-24 14:00:12.810 383-383/? A/DEBUG: Build fingerprint: 'samsung/a53gxx/a53g:6.0.1/MMB29M/A500HXXS1CQC6:user/release-keys'
08-24 14:00:12.810 383-383/? A/DEBUG: Revision: '10'
08-24 14:00:12.810 383-383/? A/DEBUG: ABI: 'arm'
08-24 14:00:12.810 383-383/? A/DEBUG: pid: 15813, tid: 15924, name: GLThread 1558  >>> com.nitragames.football.taso2016 <<<
08-24 14:00:12.810 383-383/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
08-24 14:00:12.850 383-383/? A/DEBUG:     r0 930cf12c  r1 00000000  r2 00000000  r3 930cf12c
08-24 14:00:12.850 383-383/? A/DEBUG:     r4 b8958be0  r5 9c06c4ac  r6 930cf3c8  r7 930cef48
08-24 14:00:12.850 383-383/? A/DEBUG:     r8 00000000  r9 9d51f1b4  sl b88a7c08  fp 00000000
08-24 14:00:12.850 383-383/? A/DEBUG:     ip 9c06c4d4  sp 930cef48  lr 9bde70ab  pc 9d7ff1d8  cpsr 800f0030
08-24 14:00:12.850 383-383/? A/DEBUG: backtrace:
08-24 14:00:12.850 383-383/? A/DEBUG:     #00 pc 000981d8  /data/app/com.nitragames.football.taso2016-1/lib/arm/libgnustl_shared.so (_ZNSs4_Rep8_M_cloneERKSaIcEj+175)
08-24 14:00:14.670 14883-14883/? E/TranscodeReceiver: onReceive : android.intent.action.CHECK_SIOP_LEVEL
08-24 14:00:14.850 1633-2385/? E/NativeCrashListener: Exception dealing with report
    android.system.ErrnoException: read failed: EAGAIN (Try again)
        at libcore.io.Posix.readBytes(Native Method)
        at libcore.io.Posix.read(Posix.java:169)
        at libcore.io.BlockGuardOs.read(BlockGuardOs.java:230)
        at android.system.Os.read(Os.java:367)
        at com.android.server.am.NativeCrashListener.consumeNativeCrashData(NativeCrashListener.java:240)
        at com.android.server.am.NativeCrashListener.run(NativeCrashListener.java:138)