ACPICA: Utilities: Fix an issue with non-native ACPI_IS_PRINT()
An error was found in the ACPICA provided non-native ACPI_IS_PRINT() causing the
following difference with the native isprint() implementation:
The GNU libc isprint('\n') test result:
isprint(0x20) is FALSE
The Linux kernel isprint('\n') test result:
ACPI: isprint(0x20) is FALSE
The _acpi_ctype isprint('\n') test result:
isprint(0x20) is TRUE
The ACPI_IS_PRINT() macro generated for _acpi_ctype is wrong. It should use
_ACPI_XS instead of _ACPI_SP. _ACPI_XS is white space only. Other space
characters should be non printable.
This patch fixes this issue. For OSPMs that are using native standard
isprint() implementations, this patch is a no-op. Lv Zheng.
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
890fbfa051
commit
ae8ffc7dbb
1 changed files with 1 additions and 1 deletions
|
|
@ -257,7 +257,7 @@ extern const u8 _acpi_ctype[];
|
|||
#define ACPI_IS_XDIGIT(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_XD))
|
||||
#define ACPI_IS_UPPER(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_UP))
|
||||
#define ACPI_IS_LOWER(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO))
|
||||
#define ACPI_IS_PRINT(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO | _ACPI_UP | _ACPI_DI | _ACPI_SP | _ACPI_PU))
|
||||
#define ACPI_IS_PRINT(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO | _ACPI_UP | _ACPI_DI | _ACPI_XS | _ACPI_PU))
|
||||
#define ACPI_IS_ALPHA(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO | _ACPI_UP))
|
||||
|
||||
#endif /* !ACPI_USE_SYSTEM_CLIBRARY */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue