s_buf = mutt_buffer_pool_get ();
- mutt_buffer_addstr (s_buf, s);
- mutt_buffer_expand_path (s_buf, rx);
+ mutt_buffer_addstr (s_buf, NONULL (s));
+ _mutt_buffer_expand_path (s_buf, rx);
strfcpy (s, mutt_b2s (s_buf), slen);
mutt_buffer_pool_release (&s_buf);
return s;
}
-void mutt_buffer_expand_path (BUFFER *src, int rx)
+void mutt_buffer_expand_path (BUFFER *src)
+{
+ _mutt_buffer_expand_path (src, 0);
+}
+
+void _mutt_buffer_expand_path (BUFFER *src, int rx)
{
BUFFER *p, *q, *tmp;
const char *s, *tail = "";
do
{
recurse = 0;
- s = src->data;
+ s = mutt_b2s (src);
switch (*s)
{
h->env->from = h->env->to = NULL;
mutt_free_header (&h);
/* Avoid infinite recursion if the resulting folder starts with '@' */
- if (*(p->data) != '@')
+ if (*(mutt_b2s (p)) != '@')
recurse = 1;
tail = "";
}
}
- if (rx && *(p->data) && !recurse)
+ if (rx && *(mutt_b2s (p)) && !recurse)
{
mutt_rx_sanitize_string (q, mutt_b2s (p));
mutt_buffer_printf (tmp, "%s%s", mutt_b2s (q), tail);
char *mutt_charset_hook (const char *);
char *mutt_iconv_hook (const char *);
-void mutt_buffer_expand_path (BUFFER *, int);
+void mutt_buffer_expand_path (BUFFER *);
+void _mutt_buffer_expand_path (BUFFER *, int);
char *mutt_expand_path (char *, size_t);
char *_mutt_expand_path (char *, size_t, int);
char *mutt_find_hook (int, const char *);