Lines Matching defs:dest
451 * @dest: buffer to which to write the decompressed data
452 * @dest_size: size of buffer @dest in bytes
457 * buffer @dest.
464 static int ntfs_decompress(u8 *dest, const u32 dest_size,
476 u8 *dest_end = dest + dest_size; /* End of dest buffer. */
477 u8 *dest_sb_start; /* Start of current sub-block in dest. */
478 u8 *dest_sb_end; /* End of current sb in dest. */
493 if (cb == cb_end || !le16_to_cpup((le16*)cb) || dest == dest_end) {
494 if (dest_end > dest)
495 memset(dest, 0, dest_end - dest);
500 dest_sb_start = dest;
501 dest_sb_end = dest + NTFS_SB_SIZE;
524 memcpy(dest, cb, NTFS_SB_SIZE);
527 dest += NTFS_SB_SIZE;
537 if (dest < dest_sb_end) {
538 int nr_bytes = dest_sb_end - dest;
542 memset(dest, 0, nr_bytes);
543 dest += nr_bytes;
549 if (cb > cb_sb_end || dest > dest_sb_end)
560 if (cb >= cb_sb_end || dest > dest_sb_end)
568 *dest++ = *cb++;
576 if (dest == dest_sb_start)
586 for (i = dest - dest_sb_start - 1; i >= 0x10; i >>= 1)
595 dest_back_addr = dest - (pt >> (12 - lg)) - 1;
601 if (dest + length > dest_sb_end)
604 max_non_overlap = dest - dest_back_addr;
607 memcpy(dest, dest_back_addr, length);
609 dest += length;
617 memcpy(dest, dest_back_addr, max_non_overlap);
618 dest += max_non_overlap;
622 *dest++ = *dest_back_addr++;
716 u8 *dest, *cb, *cb_pos, *cb_end;
783 dest = (u8*)ntfs_malloc(cb_size);
784 if (!dest) {
815 free(dest);
870 free(dest);
930 free(dest);
950 if (ntfs_decompress(dest, decompsz, cb, cb_size) < 0) {
953 free(dest);
959 memcpy(b, dest + ofs, to_read);
970 free(dest);