summaryrefslogtreecommitdiff
path: root/charsetConv.c
diff options
context:
space:
mode:
Diffstat (limited to 'charsetConv.c')
-rw-r--r--charsetConv.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/charsetConv.c b/charsetConv.c
index 0dc1b6d..7466844 100644
--- a/charsetConv.c
+++ b/charsetConv.c
@@ -152,13 +152,15 @@ void cp_close(doscp_t *cp)
free(cp);
}
-int dos_to_wchar(doscp_t *cp, char *dos, wchar_t *wchar, size_t len)
+int dos_to_wchar(doscp_t *cp, const char *dos, wchar_t *wchar, size_t len)
{
int r;
size_t in_len=len;
size_t out_len=len*sizeof(wchar_t);
wchar_t *dptr=wchar;
- r=iconv(cp->from, &dos, &in_len, (char **)&dptr, &out_len);
+ char *dos2 = (char *) dos; /* Magic to be able to call iconv with its
+ buggy prototype */
+ r=iconv(cp->from, &dos2, &in_len, (char **)&dptr, &out_len);
if(r < 0)
return r;
*dptr = L'\0';