+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c (grub_fat_label) [MODE_EXFAT]: Set *label to 0
+ if no label is found.
+ (grub_fat_iterate_dir): Fix file size type.
+ (grub_fat_iterate_dir): Likewise.
+
2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/lib/reed_solomon.c (gf_invert): Declare as const and
+ data->logical_sector_bits
+ GRUB_DISK_SECTOR_BITS);
logical_cluster = offset >> logical_cluster_bits;
- offset &= (1 << logical_cluster_bits) - 1;
+ offset &= (1ULL << logical_cluster_bits) - 1;
if (logical_cluster < data->cur_cluster_num)
{
case 0xc0:
node.first_cluster = grub_cpu_to_le32 (sec.type_specific.stream_extension.first_cluster);
node.valid_size
- = grub_cpu_to_le32 (sec.type_specific.stream_extension.valid_size);
+ = grub_cpu_to_le64 (sec.type_specific.stream_extension.valid_size);
node.file_size
- = grub_cpu_to_le32 (sec.type_specific.stream_extension.file_size);
+ = grub_cpu_to_le64 (sec.type_specific.stream_extension.file_size);
node.have_stream = 1;
break;
case 0xc1:
if (! data)
return grub_errno;
+ *label = NULL;
+
while (1)
{
offset += sizeof (dir);