关闭

解决支付宝里面的 NSDataEx.m 里面的内存泄露

306人阅读 评论(0) 收藏 举报
分类:

               if( ixinbuf == 4 ) {

                    ixinbuf = 0;

                    outbuf [0] = ( inbuf[0] << 2 ) | ( ( inbuf[1] & 0x30) >> 4 );

                    outbuf [1] = ( ( inbuf[1] & 0x0F ) << 4 ) | ( ( inbuf[2] & 0x3C ) >> 2 );

                    outbuf [2] = ( ( inbuf[2] & 0x03 ) << 6 ) | ( inbuf[3] & 0x3F );

                    

                    for( i = 0; i < ctcharsinbuf; i++ ) 

                        [mutableData appendBytes:&outbuf[i] length:1];

                }

解决方法是:

               /**

                 *  添加下面两句话 解决内存泄露

                 */

                unsigned char inbuf[4] = {};

                unsigned char outbuf[3];

                if( ixinbuf == 4 ) {

                    ixinbuf = 0;

                    outbuf [0] = ( inbuf[0] << 2 ) | ( ( inbuf[1] & 0x30) >> 4 );

                    outbuf [1] = ( ( inbuf[1] & 0x0F ) << 4 ) | ( ( inbuf[2] & 0x3C ) >> 2 );

                    outbuf [2] = ( ( inbuf[2] & 0x03 ) << 6 ) | ( inbuf[3] & 0x3F );

                    

                    for( i = 0; i < ctcharsinbuf; i++ ) 

                        [mutableData appendBytes:&outbuf[i] length:1];

                }



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:43140次
    • 积分:1313
    • 等级:
    • 排名:千里之外
    • 原创:93篇
    • 转载:3篇
    • 译文:0篇
    • 评论:2条
    最新评论