| 24 | } |
| 25 | |
| 26 | inline size_t DoCompress(const TData& in, void* buf) const { |
| 27 | unsigned int ret = DoMaxCompressedLength(in.size()); |
| 28 | const int res = BZ2_bzBuffToBuffCompress((char*)buf, &ret, (char*)in.data(), in.size(), Level, 0, 0); |
| 29 | if (res != BZ_OK) { |
| 30 | ythrow TCompressError(res); |
| 31 | } |
| 32 | |
| 33 | return ret; |
| 34 | } |
| 35 | |
| 36 | inline void DoDecompress(const TData& in, void* out, size_t len) const { |
| 37 | unsigned int tmp = SafeIntegerCast<unsigned int>(len); |