• quick-cocos2d-x 2.2.3 rc版本中 crypto.md5file() 的C++实现在ANDROID上有BUG


    原来的版本是用fopen打开文件的,如果要从ANDROID的APK中取文件,直接就洗白了
    修改如下

    void CCCrypto::MD5File(const char* path, unsigned char* output)
    {
        unsigned long len = 0;
        //to make sure we can get data of files easily from ios,android,pc etc.
        //we use CCFileUtils::sharedFileUtils()->getFileData
        unsigned char* pData = CCFileUtils::sharedFileUtils()->getFileData(path, "r", &len);
        if (pData == NULL || len == 0){
            CCLOG("CCCrypto::MD5File() can't open file %s", path);
            return;
        }
        
        MD5_CTX ctx;
        MD5_Init(&ctx);
    
        MD5_Update(&ctx, pData, len);
        MD5_Final(output, &ctx);
    
        //delete data as CCFileUtils::sharedFileUtils()->getFileData claimed.
        if (pData != NULL)
        delete[] pData;
    }
  • 相关阅读:
    监控体系(二)
    piwik安装部署
    smokeping安装部署
    监控体系(一)
    学习zabbix(九)
    学习zabbix(八)
    学习zabbix(七)
    学习zabbix(六)
    数据结构之树形结构
    数据结构之线性结构
  • 原文地址:https://www.cnblogs.com/qilinzi/p/3811879.html
Copyright © 2020-2023  润新知