diff options
author | Anatol Belski <ab@php.net> | 2016-12-20 02:40:44 +0100 |
---|---|---|
committer | Anatol Belski <ab@php.net> | 2016-12-20 02:40:44 +0100 |
commit | 21e283647369bfd027c3d9fb740be219da05bc5c (patch) | |
tree | 8eb0d60edda3de8e98141ff703f351cb5271001e /win32/codepage.c | |
parent | 6ea44908fb138337f24f32ff3d1b1c8cda4229e1 (diff) | |
download | php-git-21e283647369bfd027c3d9fb740be219da05bc5c.tar.gz |
deliver the real cp also if a constant is passed
Diffstat (limited to 'win32/codepage.c')
-rw-r--r-- | win32/codepage.c | 11 |
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]; |