* BUG 446
[samba.git] / source3 / lib / charcnv.c
index 1c6058a43e395aaa82b5b11e669c0b68a1077400..5f9392b62019a45560c27e1cd7c2130544d9bbc8 100644 (file)
@@ -940,6 +940,10 @@ size_t pull_ucs2(const void *base_ptr, char *dest, const void *src, size_t dest_
                src_len &= ~1;
        
        ret = convert_string(CH_UCS2, CH_UNIX, src, src_len, dest, dest_len);
+       
+       if (src_len == (size_t)-1)
+               src_len = ret*2;
+               
        if (dest_len)
                dest[MIN(ret, dest_len-1)] = 0;
        else