Mercurial > hg
comparison mcabber/src/commands.c @ 1202:ede6c7aa59b0
Handle "~" in /source paths
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Fri, 27 Apr 2007 23:46:15 +0200 |
parents | 6f602d3270a4 |
children | 2de8f8ba1f34 |
comparison
equal
deleted
inserted
replaced
1201:c31b1c41929c | 1202:ede6c7aa59b0 |
---|---|
2835 } | 2835 } |
2836 | 2836 |
2837 static void do_source(char *arg) | 2837 static void do_source(char *arg) |
2838 { | 2838 { |
2839 static int recur_level; | 2839 static int recur_level; |
2840 gchar *filename; | 2840 gchar *filename, *expfname; |
2841 if (!*arg) { | 2841 if (!*arg) { |
2842 scr_LogPrint(LPRINT_NORMAL, "Missing filename."); | 2842 scr_LogPrint(LPRINT_NORMAL, "Missing filename."); |
2843 return; | 2843 return; |
2844 } | 2844 } |
2845 if (recur_level > 20) { | 2845 if (recur_level > 20) { |
2846 scr_LogPrint(LPRINT_LOGNORM, "** Too many source commands!"); | 2846 scr_LogPrint(LPRINT_LOGNORM, "** Too many source commands!"); |
2847 return; | 2847 return; |
2848 } | 2848 } |
2849 filename = g_strdup(arg); | 2849 filename = g_strdup(arg); |
2850 strip_arg_special_chars(filename); | 2850 strip_arg_special_chars(filename); |
2851 expfname = expand_filename(filename); | |
2851 recur_level++; | 2852 recur_level++; |
2852 cfg_read_file(filename, FALSE); | 2853 cfg_read_file(expfname, FALSE); |
2853 recur_level--; | 2854 recur_level--; |
2854 g_free(filename); | 2855 g_free(filename); |
2856 g_free(expfname); | |
2855 } | 2857 } |
2856 | 2858 |
2857 static void do_connect(char *arg) | 2859 static void do_connect(char *arg) |
2858 { | 2860 { |
2859 mcabber_connect(); | 2861 mcabber_connect(); |