{  if (a->parameter) safe_free ((void **) &a->parameter->value); else { a->parameter = mutt_new_parameter (); a->parameter->attribute = safe_strdup ("charset"); } a->parameter->value = safe_strdup (set_text_charset (info)); }
mutt_set_parameter ("charset", set_text_charset (info), &a->parameter);
void mutt_update_encoding (BODY *a){  CONTENT *info;  if ((info = mutt_get_content_info (a->filename)) == NULL)    return;  mutt_set_encoding (a, info);  mutt_stamp_attachment(a);    if (a->type == TYPETEXT)  {    /* make sure the charset is valid */    if (a->parameter)      safe_free ((void **) &a->parameter->value);    else    {      a->parameter = mutt_new_parameter ();      a->parameter->attribute = safe_strdup ("charset");    }    a->parameter->value = safe_strdup (set_text_charset (info));  }#ifdef _PGPPATH  /* save the info in case this message is signed.  we will want to do Q-P   * encoding if any lines begin with "From " so the signature won't be munged,   * for example.   */   safe_free ((void **) &a->content);  a->content = info;  info = NULL;#endif  safe_free ((void **) &info);}