mirror of
https://github.com/reactos/reactos.git
synced 2025-04-22 13:10:39 +00:00
[CDFS]
Prevent code duplication by making CdfsGetEntryName() call CdfsGetDirEntryName() which is now available driver-wide svn path=/trunk/; revision=68242
This commit is contained in:
parent
d958941422
commit
1b62b46a8f
4 changed files with 43 additions and 63 deletions
|
@ -484,6 +484,11 @@ BOOLEAN
|
||||||
CdfsIsRecordValid(IN PDEVICE_EXTENSION DeviceExt,
|
CdfsIsRecordValid(IN PDEVICE_EXTENSION DeviceExt,
|
||||||
IN PDIR_RECORD Record);
|
IN PDIR_RECORD Record);
|
||||||
|
|
||||||
|
VOID
|
||||||
|
CdfsGetDirEntryName(PDEVICE_EXTENSION DeviceExt,
|
||||||
|
PDIR_RECORD Record,
|
||||||
|
PWSTR Name);
|
||||||
|
|
||||||
/* rw.c */
|
/* rw.c */
|
||||||
|
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
|
|
@ -117,31 +117,7 @@ CdfsGetEntryName(PDEVICE_EXTENSION DeviceExt,
|
||||||
DPRINT("Index %lu RecordLength %lu Offset %lu\n",
|
DPRINT("Index %lu RecordLength %lu Offset %lu\n",
|
||||||
*pIndex, Record->RecordLength, *CurrentOffset);
|
*pIndex, Record->RecordLength, *CurrentOffset);
|
||||||
|
|
||||||
if (Record->FileIdLength == 1 && Record->FileId[0] == 0)
|
CdfsGetDirEntryName(DeviceExt, Record, Name);
|
||||||
{
|
|
||||||
wcscpy(Name, L".");
|
|
||||||
}
|
|
||||||
else if (Record->FileIdLength == 1 && Record->FileId[0] == 1)
|
|
||||||
{
|
|
||||||
wcscpy(Name, L"..");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (DeviceExt->CdInfo.JolietLevel == 0)
|
|
||||||
{
|
|
||||||
ULONG i;
|
|
||||||
|
|
||||||
for (i = 0; i < Record->FileIdLength && Record->FileId[i] != ';'; i++)
|
|
||||||
Name[i] = (WCHAR)Record->FileId[i];
|
|
||||||
Name[i] = 0;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
CdfsSwapString(Name, Record->FileId, Record->FileIdLength);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
DPRINT("Name '%S'\n", Name);
|
|
||||||
|
|
||||||
*Ptr = Record;
|
*Ptr = Record;
|
||||||
|
|
||||||
|
|
|
@ -326,44 +326,6 @@ CdfsOpenRootFCB(PDEVICE_EXTENSION Vcb)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static VOID
|
|
||||||
CdfsGetDirEntryName(PDEVICE_EXTENSION DeviceExt,
|
|
||||||
PDIR_RECORD Record,
|
|
||||||
PWSTR Name)
|
|
||||||
/*
|
|
||||||
* FUNCTION: Retrieves the file name from a directory record.
|
|
||||||
*/
|
|
||||||
{
|
|
||||||
if (Record->FileIdLength == 1 && Record->FileId[0] == 0)
|
|
||||||
{
|
|
||||||
wcscpy(Name, L".");
|
|
||||||
}
|
|
||||||
else if (Record->FileIdLength == 1 && Record->FileId[0] == 1)
|
|
||||||
{
|
|
||||||
wcscpy(Name, L"..");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (DeviceExt->CdInfo.JolietLevel == 0)
|
|
||||||
{
|
|
||||||
ULONG i;
|
|
||||||
|
|
||||||
for (i = 0; i < Record->FileIdLength && Record->FileId[i] != ';'; i++)
|
|
||||||
Name[i] = (WCHAR)Record->FileId[i];
|
|
||||||
Name[i] = 0;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
CdfsSwapString(Name,
|
|
||||||
Record->FileId,
|
|
||||||
Record->FileIdLength);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
DPRINT("Name '%S'\n", Name);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
CdfsMakeFCBFromDirEntry(PVCB Vcb,
|
CdfsMakeFCBFromDirEntry(PVCB Vcb,
|
||||||
PFCB DirectoryFCB,
|
PFCB DirectoryFCB,
|
||||||
|
|
|
@ -346,4 +346,41 @@ CdfsShortNameCacheGet
|
||||||
DPRINT("Returning short name %wZ for long name %wZ\n", ShortName, LongName);
|
DPRINT("Returning short name %wZ for long name %wZ\n", ShortName, LongName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
CdfsGetDirEntryName(PDEVICE_EXTENSION DeviceExt,
|
||||||
|
PDIR_RECORD Record,
|
||||||
|
PWSTR Name)
|
||||||
|
/*
|
||||||
|
* FUNCTION: Retrieves the file name from a directory record.
|
||||||
|
*/
|
||||||
|
{
|
||||||
|
if (Record->FileIdLength == 1 && Record->FileId[0] == 0)
|
||||||
|
{
|
||||||
|
wcscpy(Name, L".");
|
||||||
|
}
|
||||||
|
else if (Record->FileIdLength == 1 && Record->FileId[0] == 1)
|
||||||
|
{
|
||||||
|
wcscpy(Name, L"..");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (DeviceExt->CdInfo.JolietLevel == 0)
|
||||||
|
{
|
||||||
|
ULONG i;
|
||||||
|
|
||||||
|
for (i = 0; i < Record->FileIdLength && Record->FileId[i] != ';'; i++)
|
||||||
|
Name[i] = (WCHAR)Record->FileId[i];
|
||||||
|
Name[i] = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
CdfsSwapString(Name,
|
||||||
|
Record->FileId,
|
||||||
|
Record->FileIdLength);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
DPRINT("Name '%S'\n", Name);
|
||||||
|
}
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
Loading…
Reference in a new issue