=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/cmd-source-file.c,v retrieving revision 1.47 retrieving revision 1.48 diff -c -r1.47 -r1.48 *** src/usr.bin/tmux/cmd-source-file.c 2020/04/13 10:59:58 1.47 --- src/usr.bin/tmux/cmd-source-file.c 2020/09/01 09:19:01 1.48 *************** *** 1,4 **** ! /* $OpenBSD: cmd-source-file.c,v 1.47 2020/04/13 10:59:58 nicm Exp $ */ /* * Copyright (c) 2008 Tiago Cunha --- 1,4 ---- ! /* $OpenBSD: cmd-source-file.c,v 1.48 2020/09/01 09:19:01 nicm Exp $ */ /* * Copyright (c) 2008 Tiago Cunha *************** *** 36,43 **** .name = "source-file", .alias = "source", ! .args = { "nqv", 1, -1 }, ! .usage = "[-nqv] path ...", .flags = 0, .exec = cmd_source_file_exec --- 36,43 ---- .name = "source-file", .alias = "source", ! .args = { "Fnqv", 1, -1 }, ! .usage = "[-Fnqv] path ...", .flags = 0, .exec = cmd_source_file_exec *************** *** 127,133 **** struct cmd_source_file_data *cdata; struct client *c = cmdq_get_client(item); enum cmd_retval retval = CMD_RETURN_NORMAL; ! char *pattern, *cwd; const char *path, *error; glob_t g; int i, result; --- 127,133 ---- struct cmd_source_file_data *cdata; struct client *c = cmdq_get_client(item); enum cmd_retval retval = CMD_RETURN_NORMAL; ! char *pattern, *cwd, *expand = NULL; const char *path, *error; glob_t g; int i, result; *************** *** 146,152 **** utf8_stravis(&cwd, server_client_get_cwd(c, NULL), VIS_GLOB); for (i = 0; i < args->argc; i++) { ! path = args->argv[i]; if (strcmp(path, "-") == 0) { cmd_source_file_add(cdata, "-"); continue; --- 146,157 ---- utf8_stravis(&cwd, server_client_get_cwd(c, NULL), VIS_GLOB); for (i = 0; i < args->argc; i++) { ! if (args_has(args, 'F')) { ! free(expand); ! expand = format_single_from_target(item, args->argv[i]); ! path = expand; ! } else ! path = args->argv[i]; if (strcmp(path, "-") == 0) { cmd_source_file_add(cdata, "-"); continue; *************** *** 173,178 **** --- 178,184 ---- free(pattern); continue; } + free(expand); free(pattern); for (j = 0; j < g.gl_pathc; j++)