[UDFS]
authorPierre Schweitzer <pierre@reactos.org>
Wed, 7 Jun 2017 19:33:55 +0000 (19:33 +0000)
committerPierre Schweitzer <pierre@reactos.org>
Wed, 7 Jun 2017 19:33:55 +0000 (19:33 +0000)
Set the volume label with the logical volume ident contained in the file set descriptor.
Microsoft appears to do so, so mimic this behavior to have consistent volumes labels with Windows.

CORE-4375

svn path=/trunk/; revision=74945

reactos/drivers/filesystems/udfs/udf_info/mount.cpp

index df10a56..1a79745 100644 (file)
@@ -2554,6 +2554,13 @@ UDFLoadFileset(
         UDFPrint(("SysStream at block=%x, partition=%d\n",
             sysstream->logicalBlockNum, sysstream->partitionReferenceNum));
     }
         UDFPrint(("SysStream at block=%x, partition=%d\n",
             sysstream->logicalBlockNum, sysstream->partitionReferenceNum));
     }
+#define CUR_IDENT_SZ (sizeof(fset->logicalVolIdent))
+    if (Vcb->VolIdent.Buffer) {
+        MyFreePool__(Vcb->VolIdent.Buffer);
+    }
+    UDFGetDstring(&(Vcb->VolIdent), (dstring*)&(fset->logicalVolIdent), CUR_IDENT_SZ);
+#undef CUR_IDENT_SZ
+    UDFPrint(("volIdent[] = '%ws'\n", Vcb->VolIdent.Buffer));
     // Get current UDF revision
     // Get Read-Only flags
     UDFReadEntityID_Domain(Vcb, &(fset->domainIdent));
     // Get current UDF revision
     // Get Read-Only flags
     UDFReadEntityID_Domain(Vcb, &(fset->domainIdent));