librpc/ndr: use new strlen_m_ext_term() in ndr_charset_length(): fix bug #7594
authorMichael Adam <obnox@samba.org>
Sun, 31 Oct 2010 00:04:25 +0000 (02:04 +0200)
committerMichael Adam <obnox@samba.org>
Wed, 3 Nov 2010 23:28:07 +0000 (23:28 +0000)
This fixes the calculation of needed space for destination unicode charset.

Autobuild-User: Michael Adam <obnox@samba.org>
Autobuild-Date: Wed Nov  3 23:28:07 UTC 2010 on sn-devel-104

librpc/ndr/ndr_string.c

index e1f3a5245add8e682714a9f3c26147d78e1d5d29..610676cf7802df04e0d13edc892a3109618185fc 100644 (file)
@@ -731,11 +731,11 @@ _PUBLIC_ uint32_t ndr_charset_length(const void *var, charset_t chset)
        case CH_UTF16LE:
        case CH_UTF16BE:
        case CH_UTF16MUNGED:
-               return strlen_m_term((const char *)var);
+       case CH_UTF8:
+               return strlen_m_ext_term((const char *)var, CH_UNIX, chset);
        case CH_DISPLAY:
        case CH_DOS:
        case CH_UNIX:
-       case CH_UTF8:
                return strlen((const char *)var)+1;
        }