解决支付宝里面的 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];
}
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];
}
相关文章推荐
- android程序启动画面之Splash总结
- jemalloc Mongodb Nginx 优化
- SecureCRT 密钥生成 SSH 使用密钥登陆 服务器
- PAT (Advanced Level) 1054. The Dominant Color (20)
- 模板设计模式_组合&继承实现
- 斐波纳契数列
- Clone Graph
- CentOS 6.4 x64 zabbix 2.2.2 编译安装
- PAT (Advanced Level) 1053. Path of Equal Weight (30)
- mysql索引优化
- A + B 问题
- 最佳优先搜索(Best-First Search)
- UITableView使用详解及技巧大全
- Android获取系统震动的调用
- stringbuild和stringbuffer的区别
- CentOS 6.4 x64 Percona-Server-5.6.15 源码安装
- Monitorix 监控 安装配置
- Peer-to-Peer 综述
- 关于写博客的初心
- iOS通讯录排序与显示