mirror of
https://github.com/reactos/reactos.git
synced 2025-01-03 21:09:19 +00:00
[RTL] Add internal RtlpDowncaseUnicodeChar function and use instead RtlDowncaseUnicodeChar internally in RTL. RtlMultiAppendUnicodeStringBuffer parameters are specified (it is documented on: http://undoc.airesoft.co.uk/ntdll.dll/RtlMultiAppendUnicodeStringBuffer.php)
svn path=/trunk/; revision=72692
This commit is contained in:
parent
ce4186a1eb
commit
434964f61d
4 changed files with 22 additions and 7 deletions
|
@ -86,7 +86,7 @@ RtlCustomCPToUnicodeN(IN PCPTABLEINFO CustomCP,
|
||||||
* @implemented
|
* @implemented
|
||||||
*/
|
*/
|
||||||
WCHAR NTAPI
|
WCHAR NTAPI
|
||||||
RtlDowncaseUnicodeChar(IN WCHAR Source)
|
RtlpDowncaseUnicodeChar(IN WCHAR Source)
|
||||||
{
|
{
|
||||||
USHORT Offset;
|
USHORT Offset;
|
||||||
|
|
||||||
|
@ -124,6 +124,17 @@ RtlDowncaseUnicodeChar(IN WCHAR Source)
|
||||||
return Source + (SHORT)Offset;
|
return Source + (SHORT)Offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @implemented
|
||||||
|
*/
|
||||||
|
WCHAR NTAPI
|
||||||
|
RtlDowncaseUnicodeChar(IN WCHAR Source)
|
||||||
|
{
|
||||||
|
PAGED_CODE_RTL();
|
||||||
|
|
||||||
|
return RtlpDowncaseUnicodeChar(Source);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @implemented
|
* @implemented
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -163,7 +163,7 @@ RtlIsDosDeviceName_Ustr(IN PCUNICODE_STRING PathString)
|
||||||
{
|
{
|
||||||
/* Get the next lower case character */
|
/* Get the next lower case character */
|
||||||
End++;
|
End++;
|
||||||
c = RtlDowncaseUnicodeChar(*End);
|
c = RtlpDowncaseUnicodeChar(*End);
|
||||||
|
|
||||||
/* Check if it's a DOS device (LPT, COM, PRN, AUX, or NUL) */
|
/* Check if it's a DOS device (LPT, COM, PRN, AUX, or NUL) */
|
||||||
if ((End < &PathCopy.Buffer[OriginalLength / sizeof(WCHAR)]) &&
|
if ((End < &PathCopy.Buffer[OriginalLength / sizeof(WCHAR)]) &&
|
||||||
|
@ -189,7 +189,7 @@ RtlIsDosDeviceName_Ustr(IN PCUNICODE_STRING PathString)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Get the next lower case character and check if it's a DOS device */
|
/* Get the next lower case character and check if it's a DOS device */
|
||||||
c = RtlDowncaseUnicodeChar(*PathCopy.Buffer);
|
c = RtlpDowncaseUnicodeChar(*PathCopy.Buffer);
|
||||||
if ((c != L'l') && (c != L'c') && (c != L'p') && (c != L'a') && (c != L'n'))
|
if ((c != L'l') && (c != L'c') && (c != L'p') && (c != L'a') && (c != L'n'))
|
||||||
{
|
{
|
||||||
/* Not LPT, COM, PRN, AUX, or NUL */
|
/* Not LPT, COM, PRN, AUX, or NUL */
|
||||||
|
|
|
@ -235,4 +235,8 @@ WCHAR
|
||||||
NTAPI
|
NTAPI
|
||||||
RtlpUpcaseUnicodeChar(IN WCHAR Source);
|
RtlpUpcaseUnicodeChar(IN WCHAR Source);
|
||||||
|
|
||||||
|
WCHAR
|
||||||
|
NTAPI
|
||||||
|
RtlpDowncaseUnicodeChar(IN WCHAR Source);
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -34,9 +34,9 @@ extern PUSHORT NlsUnicodeToMbOemTable;
|
||||||
|
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
NTAPI
|
NTAPI
|
||||||
RtlMultiAppendUnicodeStringBuffer(IN PVOID Unknown,
|
RtlMultiAppendUnicodeStringBuffer(OUT PRTL_UNICODE_STRING_BUFFER StringBuffer,
|
||||||
IN ULONG Unknown2,
|
IN ULONG NumberOfAddends,
|
||||||
IN PVOID Unknown3)
|
IN PCUNICODE_STRING Addends)
|
||||||
{
|
{
|
||||||
UNIMPLEMENTED;
|
UNIMPLEMENTED;
|
||||||
return STATUS_NOT_IMPLEMENTED;
|
return STATUS_NOT_IMPLEMENTED;
|
||||||
|
@ -2376,7 +2376,7 @@ RtlDowncaseUnicodeString(
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
UniDest->Buffer[i] = RtlDowncaseUnicodeChar(UniSource->Buffer[i]);
|
UniDest->Buffer[i] = RtlpDowncaseUnicodeChar(UniSource->Buffer[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue