- if (base64_xpath)
- ret = base64_render(nmem, wrbuf,
- ret, len, base64_xpath, base64_type_spec);
+ if (base64_xpath && *len != -1)
+ {
+ char *type_spec = nmem_malloc(nmem,
+ strlen(type) + strlen(charset) + 11);
+ strcpy(type_spec, type);
+ if (*charset)
+ {
+ strcat(type_spec, "; charset=");
+ strcat(type_spec, charset);
+ }
+ ret = base64_render(nmem, wrbuf, ret, len, base64_xpath, type_spec);
+ }