summaryrefslogtreecommitdiff
path: root/win32/codepage.c
diff options
context:
space:
mode:
Diffstat (limited to 'win32/codepage.c')
-rw-r--r--win32/codepage.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/win32/codepage.c b/win32/codepage.c
index f87d4c0900..519ff03f4b 100644
--- a/win32/codepage.c
+++ b/win32/codepage.c
@@ -266,6 +266,17 @@ PW32CP const struct php_win32_cp *php_win32_cp_get_by_id(DWORD id)
{/*{{{*/
size_t i;
+ if (id < php_win32_cp_map[0].id) {
+ switch (id) {
+ case CP_ACP:
+ id = GetACP();
+ break;
+ case CP_OEMCP:
+ id = GetOEMCP();
+ break;
+ }
+ }
+
for (i = 0; i < sizeof(php_win32_cp_map)/sizeof(struct php_win32_cp); i++) {
if (php_win32_cp_map[i].id == id) {
return &php_win32_cp_map[i];