summaryrefslogtreecommitdiff
path: root/avr/cmd_loadcpm3.c
diff options
context:
space:
mode:
Diffstat (limited to 'avr/cmd_loadcpm3.c')
-rw-r--r--avr/cmd_loadcpm3.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/avr/cmd_loadcpm3.c b/avr/cmd_loadcpm3.c
index 39e3278..6ccb3f9 100644
--- a/avr/cmd_loadcpm3.c
+++ b/avr/cmd_loadcpm3.c
@@ -71,7 +71,7 @@ command_ret_t do_loadcpm3(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char *
uint32_t banked_base;
char *fname;
FIL File;
- char default_fname[] = CONFIG_CPM3_SYSFILE;
+ char default_fname[strlen_P(PSTR(CONFIG_CPM3_SYSFILE)) + 1];
unsigned int br; /* bytes read */
uint8_t buffer[RS];
int res;
@@ -90,11 +90,13 @@ command_ret_t do_loadcpm3(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char *
common_base = eval_arg(argv[2], NULL);
fname = getenv_str(PSTR(ENV_CPM3_SYSFILE));
+ if (fname == NULL || *fname == '\0') {
+ strcpy_P(default_fname, PSTR(CONFIG_CPM3_SYSFILE));
+ fname = default_fname;
+ }
if (argc > 1) {
fname = argv[1];
}
- if (fname == NULL || *fname == '\0')
- fname = default_fname;
res = f_open(&File, fname, FA_READ );
if (res) {