您的位置:首页 > 其它

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

2016-05-31 18:34 399 查看
               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];

                }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: